From 4e2ae4e43acbfc3d560d00a4960b7ecd9d3c7884 Mon Sep 17 00:00:00 2001
From: Nikhil Gupta <52026487+nikhgup@users.noreply.github.com>
Date: Wed, 11 Dec 2024 10:06:07 +0530
Subject: [PATCH 001/128] New RP: PineCone.VectorDB from Liftr (#31673)
* New RP: PineCone.VectorDB from Liftr
* updating readme
* Adding package.json
* adding .net sdk emitter
* removing package.json
* updating swagger
* Update tspconfig.yaml
* Adding suppression
* updating swagger
---------
Co-authored-by: Arthur Ma
---
cSpell.json | 6 +
.../Pinecone.VectorDb.Management/.gitignore | 9 +
.../Operations_List_MaximumSet_Gen.json | 28 +
.../Operations_List_MinimumSet_Gen.json | 12 +
...zations_CreateOrUpdate_MaximumSet_Gen.json | 188 ++++
.../Organizations_Delete_MaximumSet_Gen.json | 18 +
.../Organizations_Get_MaximumSet_Gen.json | 76 ++
...ns_ListByResourceGroup_MaximumSet_Gen.json | 80 ++
...ons_ListBySubscription_MaximumSet_Gen.json | 79 ++
.../Organizations_Update_MaximumSet_Gen.json | 92 ++
.../Pinecone.VectorDb.Management/main.tsp | 90 ++
.../tspconfig.yaml | 21 +
.../Operations_List_MaximumSet_Gen.json | 28 +
.../Operations_List_MinimumSet_Gen.json | 12 +
...zations_CreateOrUpdate_MaximumSet_Gen.json | 188 ++++
.../Organizations_Delete_MaximumSet_Gen.json | 18 +
.../Organizations_Get_MaximumSet_Gen.json | 76 ++
...ns_ListByResourceGroup_MaximumSet_Gen.json | 80 ++
...ons_ListBySubscription_MaximumSet_Gen.json | 79 ++
.../Organizations_Update_MaximumSet_Gen.json | 92 ++
.../preview/2024-10-22-preview/openapi.json | 800 ++++++++++++++++++
.../liftrpinecone/resource-manager/readme.md | 45 +
22 files changed, 2117 insertions(+)
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/.gitignore
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MinimumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Delete_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Get_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListByResourceGroup_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListBySubscription_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Update_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/main.tsp
create mode 100644 specification/liftrpinecone/Pinecone.VectorDb.Management/tspconfig.yaml
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MinimumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Delete_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Get_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListBySubscription_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Update_MaximumSet_Gen.json
create mode 100644 specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/openapi.json
create mode 100644 specification/liftrpinecone/resource-manager/readme.md
diff --git a/cSpell.json b/cSpell.json
index 85f300876e01..d5cd554ffbd1 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1612,6 +1612,12 @@
"spoofface"
]
},
+ {
+ "filename": "**/specification/liftrpinecone/**/*.json",
+ "words": [
+ "organizationname"
+ ]
+ },
{
"filename": "**/specification/developerhub/resource-manager/Microsoft.DevHub/**/*.json",
"words": [
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/.gitignore b/specification/liftrpinecone/Pinecone.VectorDb.Management/.gitignore
new file mode 100644
index 000000000000..0fe4f7a0b284
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/.gitignore
@@ -0,0 +1,9 @@
+# MacOS
+.DS_Store
+
+# Default TypeSpec output
+tsp-output/
+dist/
+
+# Dependency directories
+node_modules/
\ No newline at end of file
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a7679858a35a
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MaximumSet_Gen.json
@@ -0,0 +1,28 @@
+{
+ "title": "Operations_List_MaximumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2024-10-22-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "example-operation-name",
+ "isDataAction": true,
+ "display": {
+ "provider": "Pinecone.Management",
+ "resource": "organization",
+ "operation": "Organizations_CreateOrUpdate",
+ "description": "Example operation description"
+ },
+ "origin": "user",
+ "actionType": "Internal"
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MinimumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..0893073b35c2
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Operations_List_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "title": "Operations_List_MinimumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2024-10-22-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..ce61c72e555b
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,188 @@
+{
+ "title": "Organizations_CreateOrUpdate_MaximumSet",
+ "operationId": "Organizations_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name",
+ "resource": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {}
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Delete_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b55833b4eef9
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "title": "Organizations_Delete_MaximumSet",
+ "operationId": "Organizations_Delete",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Get_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..16c12492f9e0
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Get_MaximumSet_Gen.json
@@ -0,0 +1,76 @@
+{
+ "title": "Organizations_Get_MaximumSet",
+ "operationId": "Organizations_Get",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListByResourceGroup_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListByResourceGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..0491760dd348
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListByResourceGroup_MaximumSet_Gen.json
@@ -0,0 +1,80 @@
+{
+ "title": "Organizations_ListByResourceGroup_MaximumSet",
+ "operationId": "Organizations_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListBySubscription_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListBySubscription_MaximumSet_Gen.json
new file mode 100644
index 000000000000..261b952da736
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_ListBySubscription_MaximumSet_Gen.json
@@ -0,0 +1,79 @@
+{
+ "title": "Organizations_ListBySubscription_MaximumSet",
+ "operationId": "Organizations_ListBySubscription",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Update_MaximumSet_Gen.json b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..75f02cec3e17
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/examples/2024-10-22-preview/Organizations_Update_MaximumSet_Gen.json
@@ -0,0 +1,92 @@
+{
+ "title": "Organizations_Update_MaximumSet",
+ "operationId": "Organizations_Update",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name",
+ "properties": {
+ "tags": {
+ "new-tag": "new.tag.value"
+ },
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident573739201": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ },
+ "ident573739201": {
+ "principalId": "11825db4-1123-4467-a000-49e399e33f90",
+ "clientId": "4bd8300e-5c3c-4ca2-8a95-a299df986b8d"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value",
+ "new-tag": "new.tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T21:33:13.330Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/main.tsp b/specification/liftrpinecone/Pinecone.VectorDb.Management/main.tsp
new file mode 100644
index 000000000000..26dfded63995
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/main.tsp
@@ -0,0 +1,90 @@
+import "@typespec/http";
+import "@typespec/rest";
+import "@typespec/versioning";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@azure-tools/typespec-liftr-base";
+
+using TypeSpec.Http;
+using TypeSpec.Rest;
+using TypeSpec.Versioning;
+using Azure.Core;
+using Azure.ResourceManager;
+using LiftrBase;
+
+/* Pinecone Resource Provider management API. */
+@armProviderNamespace
+@service({
+ title: "Pinecone management service",
+})
+@versioned(Pinecone.VectorDb.Versions)
+namespace Pinecone.VectorDb;
+
+/** The available API versions. */
+enum Versions {
+ /** 2024-10-22-preview version */
+ @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1)
+ @useDependency(Azure.Core.Versions.v1_0_Preview_2)
+ @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5)
+ @useDependency(LiftrBase.Versions.v1_preview)
+ v2024_10_22_preview: "2024-10-22-preview",
+}
+
+@doc("Partner's specific Properties")
+model PartnerProperties {
+ @doc("Pinecone Organization Name")
+ @minLength(1)
+ @maxLength(512)
+ @pattern("^[^\\0]+$")
+ displayName: string;
+}
+
+/** These properties will be sent to your endpoints registered with Liftr during CRUD on resource.
+ * BaseResourceProperties contains Marketplace, useDetail related properties*/
+@doc("Properties specific to Organization")
+model OrganizationProperties is BaseResourceProperties {
+ @doc("partner properties")
+ partnerProperties?: PartnerProperties;
+
+ @doc("Single sign-on properties")
+ singleSignOnProperties?: SingleSignOnPropertiesV2;
+}
+
+model OrganizationResource
+ is Azure.ResourceManager.TrackedResource {
+ @key("organizationname")
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9_\\-.: ]*$")
+ @segment("organizations")
+ @minLength(1)
+ @maxLength(50)
+ @doc("Name of the Organization resource")
+ @path
+ name: string;
+
+ ...Azure.ResourceManager.ManagedServiceIdentityProperty;
+}
+
+/**
+ * The type used for update operations of the Organization Resource.
+ */
+model OrganizationResourceUpdate {
+ ...Azure.ResourceManager.Foundations.ArmTagsProperty;
+
+ /** Updatable managed service identity */
+ ...Azure.ResourceManager.ManagedServiceIdentityProperty;
+}
+
+interface Operations extends Azure.ResourceManager.Operations {}
+
+@armResourceOperations
+interface Organizations {
+ get is ArmResourceRead;
+ createOrUpdate is ArmResourceCreateOrReplaceAsync;
+ update is ArmCustomPatchSync<
+ OrganizationResource,
+ OrganizationResourceUpdate
+ >;
+ delete is ArmResourceDeleteWithoutOkAsync;
+ listByResourceGroup is ArmResourceListByParent;
+ listBySubscription is ArmListBySubscription;
+}
diff --git a/specification/liftrpinecone/Pinecone.VectorDb.Management/tspconfig.yaml b/specification/liftrpinecone/Pinecone.VectorDb.Management/tspconfig.yaml
new file mode 100644
index 000000000000..2c68eef605b1
--- /dev/null
+++ b/specification/liftrpinecone/Pinecone.VectorDb.Management/tspconfig.yaml
@@ -0,0 +1,21 @@
+emit:
+ - "@azure-tools/typespec-autorest"
+parameters:
+ "service-dir":
+ default: "sdk/liftrpinecone"
+options:
+ "@azure-tools/typespec-autorest":
+ use-read-only-status-schema: true
+ emitter-output-dir: "{project-root}/.."
+ azure-resource-provider-folder: "resource-manager"
+ output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json"
+ examples-dir: "{project-root}/examples"
+ "@azure-tools/typespec-csharp":
+ package-dir: "Azure.ResourceManager.PineconeVectorDB"
+ flavor: azure
+ clear-output-folder: true
+ use-write-core: true
+ namespace: "{package-dir}"
+linter:
+ extends:
+ - "@azure-tools/typespec-azure-rulesets/resource-manager"
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..a7679858a35a
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MaximumSet_Gen.json
@@ -0,0 +1,28 @@
+{
+ "title": "Operations_List_MaximumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2024-10-22-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "example-operation-name",
+ "isDataAction": true,
+ "display": {
+ "provider": "Pinecone.Management",
+ "resource": "organization",
+ "operation": "Organizations_CreateOrUpdate",
+ "description": "Example operation description"
+ },
+ "origin": "user",
+ "actionType": "Internal"
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MinimumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..0893073b35c2
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Operations_List_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "title": "Operations_List_MinimumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2024-10-22-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..ce61c72e555b
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,188 @@
+{
+ "title": "Organizations_CreateOrUpdate_MaximumSet",
+ "operationId": "Organizations_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name",
+ "resource": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {}
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Delete_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b55833b4eef9
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "title": "Organizations_Delete_MaximumSet",
+ "operationId": "Organizations_Delete",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Get_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..16c12492f9e0
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Get_MaximumSet_Gen.json
@@ -0,0 +1,76 @@
+{
+ "title": "Organizations_Get_MaximumSet",
+ "operationId": "Organizations_Get",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..0491760dd348
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json
@@ -0,0 +1,80 @@
+{
+ "title": "Organizations_ListByResourceGroup_MaximumSet",
+ "operationId": "Organizations_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListBySubscription_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListBySubscription_MaximumSet_Gen.json
new file mode 100644
index 000000000000..261b952da736
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_ListBySubscription_MaximumSet_Gen.json
@@ -0,0 +1,79 @@
+{
+ "title": "Organizations_ListBySubscription_MaximumSet",
+ "operationId": "Organizations_ListBySubscription",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T20:59:36.290Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Update_MaximumSet_Gen.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..75f02cec3e17
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/examples/Organizations_Update_MaximumSet_Gen.json
@@ -0,0 +1,92 @@
+{
+ "title": "Organizations_Update_MaximumSet",
+ "operationId": "Organizations_Update",
+ "parameters": {
+ "api-version": "2024-10-22-preview",
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "resourceGroupName": "rgopenapi",
+ "organizationname": "example-organization-name",
+ "properties": {
+ "tags": {
+ "new-tag": "new.tag.value"
+ },
+ "identity": {
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident573739201": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "marketplace": {
+ "subscriptionId": "76a38ef6-c8c1-4f0d-bfe0-00ec782c8077",
+ "subscriptionStatus": "PendingFulfillmentStart",
+ "offerDetails": {
+ "publisherId": "4d194daf-fa20-46a8-bfb4-5b7d96cae009",
+ "offerId": "013124d0-bf05-4eab-a6bb-01fa83870642",
+ "planId": "62dda065-5acd-4ac5-b418-8610beed92a2",
+ "planName": "Freemium",
+ "termUnit": "der",
+ "termId": "a2b7ce01-f06d-4874-9f77-6ea4a4875c16"
+ }
+ },
+ "user": {
+ "firstName": "Jimmy",
+ "lastName": "McExample",
+ "emailAddress": "example.user@example.com",
+ "upn": "example.user@example.com",
+ "phoneNumber": "555-555-5555"
+ },
+ "provisioningState": "Succeeded",
+ "partnerProperties": {
+ "displayName": "My Example Organization"
+ },
+ "singleSignOnProperties": {
+ "type": "Saml",
+ "state": "Initial",
+ "enterpriseAppId": "44d3fb26-d8d5-41ff-9b9a-769737f22f13",
+ "url": "https://login.pinecone.io/?sso=true&connection=dfwgsqzkbrjqrglcsa",
+ "aadDomains": [
+ "exampledomain"
+ ]
+ }
+ },
+ "identity": {
+ "principalId": "98b0f658-9ee0-4376-9f04-cf211154716c",
+ "tenantId": "b118e9e0-4179-41b7-a978-a205cd312e56",
+ "type": "None",
+ "userAssignedIdentities": {
+ "ident904655400": {
+ "principalId": "e6beb013-1d4f-4bc7-b6be-33f05f942ae2",
+ "clientId": "7d5610d7-5c8c-4360-98e5-1ae67a4b6ebe"
+ },
+ "ident573739201": {
+ "principalId": "11825db4-1123-4467-a000-49e399e33f90",
+ "clientId": "4bd8300e-5c3c-4ca2-8a95-a299df986b8d"
+ }
+ }
+ },
+ "tags": {
+ "my-tag": "tag.value",
+ "new-tag": "new.tag.value"
+ },
+ "location": "us-east",
+ "id": "/subscriptions/76a38ef6-c8c1-4f0d-bfe0-00ec782c8077/resourceGroups/rgopenapi/providers/Pinecone/organizations/example-organization-name",
+ "name": "example-organization-name",
+ "type": "Pinecone.Management/organization",
+ "systemData": {
+ "createdBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "createdByType": "User",
+ "createdAt": "2024-10-22T20:59:36.290Z",
+ "lastModifiedBy": "a8006d37-bf85-4ab3-bf9d-2fb4702a1cfb",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-10-22T21:33:13.330Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/openapi.json b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/openapi.json
new file mode 100644
index 000000000000..ad980c99f1a5
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/Pinecone.VectorDb/preview/2024-10-22-preview/openapi.json
@@ -0,0 +1,800 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Pinecone management service",
+ "version": "2024-10-22-preview",
+ "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": "Organizations"
+ }
+ ],
+ "paths": {
+ "/providers/Pinecone.VectorDb/operations": {
+ "get": {
+ "operationId": "Operations_List",
+ "tags": [
+ "Operations"
+ ],
+ "description": "List the operations for the provider",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Operations_List_MaximumSet": {
+ "$ref": "./examples/Operations_List_MaximumSet_Gen.json"
+ },
+ "Operations_List_MinimumSet": {
+ "$ref": "./examples/Operations_List_MinimumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Pinecone.VectorDb/organizations": {
+ "get": {
+ "operationId": "Organizations_ListBySubscription",
+ "tags": [
+ "Organizations"
+ ],
+ "description": "List OrganizationResource resources by subscription ID",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResourceListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organizations_ListBySubscription_MaximumSet": {
+ "$ref": "./examples/Organizations_ListBySubscription_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Pinecone.VectorDb/organizations": {
+ "get": {
+ "operationId": "Organizations_ListByResourceGroup",
+ "tags": [
+ "Organizations"
+ ],
+ "description": "List OrganizationResource resources by resource group",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResourceListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organizations_ListByResourceGroup_MaximumSet": {
+ "$ref": "./examples/Organizations_ListByResourceGroup_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Pinecone.VectorDb/organizations/{organizationname}": {
+ "get": {
+ "operationId": "Organizations_Get",
+ "tags": [
+ "Organizations"
+ ],
+ "description": "Get a OrganizationResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "organizationname",
+ "in": "path",
+ "description": "Name of the Organization resource",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 50,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-.: ]*$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organizations_Get_MaximumSet": {
+ "$ref": "./examples/Organizations_Get_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Organizations_CreateOrUpdate",
+ "tags": [
+ "Organizations"
+ ],
+ "description": "Create a OrganizationResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "organizationname",
+ "in": "path",
+ "description": "Name of the Organization resource",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 50,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-.: ]*$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'OrganizationResource' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "201": {
+ "description": "Resource 'OrganizationResource' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "A link to the status monitor"
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organizations_CreateOrUpdate_MaximumSet": {
+ "$ref": "./examples/Organizations_CreateOrUpdate_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "Organizations_Update",
+ "tags": [
+ "Organizations"
+ ],
+ "description": "Update a OrganizationResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "organizationname",
+ "in": "path",
+ "description": "Name of the Organization resource",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 50,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-.: ]*$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OrganizationResourceUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organizations_Update_MaximumSet": {
+ "$ref": "./examples/Organizations_Update_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Organizations_Delete",
+ "tags": [
+ "Organizations"
+ ],
+ "description": "Delete a OrganizationResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "organizationname",
+ "in": "path",
+ "description": "Name of the Organization resource",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 50,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_\\-.: ]*$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organizations_Delete_MaximumSet": {
+ "$ref": "./examples/Organizations_Delete_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "Azure.ResourceManager.CommonTypes.ManagedServiceIdentityUpdate": {
+ "type": "object",
+ "description": "Managed service identity (system assigned and/or user assigned identities)",
+ "properties": {
+ "type": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentityType",
+ "description": "The type of managed identity assigned to this resource."
+ },
+ "userAssignedIdentities": {
+ "type": "object",
+ "description": "The identities assigned to this resource by the user.",
+ "additionalProperties": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/UserAssignedIdentity"
+ }
+ ],
+ "type": "object",
+ "x-nullable": true
+ }
+ }
+ }
+ },
+ "Azure.ResourceManager.ResourceProvisioningState": {
+ "type": "string",
+ "description": "The provisioning state of a resource type.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceProvisioningState",
+ "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."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "LiftrBase.MarketplaceDetails": {
+ "type": "object",
+ "description": "Marketplace details for an organization",
+ "properties": {
+ "subscriptionId": {
+ "type": "string",
+ "description": "Azure subscription id for the the marketplace offer is purchased from"
+ },
+ "subscriptionStatus": {
+ "$ref": "#/definitions/LiftrBase.MarketplaceSubscriptionStatus",
+ "description": "Marketplace subscription status",
+ "readOnly": true
+ },
+ "offerDetails": {
+ "$ref": "#/definitions/LiftrBase.OfferDetails",
+ "description": "Offer details for the marketplace that is selected by the user"
+ }
+ },
+ "required": [
+ "subscriptionId",
+ "offerDetails"
+ ]
+ },
+ "LiftrBase.MarketplaceSubscriptionStatus": {
+ "type": "string",
+ "description": "Marketplace subscription status of a resource.",
+ "enum": [
+ "PendingFulfillmentStart",
+ "Subscribed",
+ "Suspended",
+ "Unsubscribed"
+ ],
+ "x-ms-enum": {
+ "name": "MarketplaceSubscriptionStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "PendingFulfillmentStart",
+ "value": "PendingFulfillmentStart",
+ "description": "Purchased but not yet activated"
+ },
+ {
+ "name": "Subscribed",
+ "value": "Subscribed",
+ "description": "Marketplace subscription is activated"
+ },
+ {
+ "name": "Suspended",
+ "value": "Suspended",
+ "description": "This state indicates that a customer's payment for the Marketplace service was not received"
+ },
+ {
+ "name": "Unsubscribed",
+ "value": "Unsubscribed",
+ "description": "Customer has cancelled the subscription"
+ }
+ ]
+ }
+ },
+ "LiftrBase.OfferDetails": {
+ "type": "object",
+ "description": "Offer details for the marketplace that is selected by the user",
+ "properties": {
+ "publisherId": {
+ "type": "string",
+ "description": "Publisher Id for the marketplace offer"
+ },
+ "offerId": {
+ "type": "string",
+ "description": "Offer Id for the marketplace offer"
+ },
+ "planId": {
+ "type": "string",
+ "description": "Plan Id for the marketplace offer"
+ },
+ "planName": {
+ "type": "string",
+ "description": "Plan Name for the marketplace offer"
+ },
+ "termUnit": {
+ "type": "string",
+ "description": "Plan Display Name for the marketplace offer"
+ },
+ "termId": {
+ "type": "string",
+ "description": "Plan Display Name for the marketplace offer"
+ }
+ },
+ "required": [
+ "publisherId",
+ "offerId",
+ "planId"
+ ]
+ },
+ "LiftrBase.SingleSignOnPropertiesV2": {
+ "type": "object",
+ "description": "Properties specific to Single Sign On Resource",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/LiftrBase.SingleSignOnType",
+ "description": "Type of Single Sign-On mechanism being used"
+ },
+ "state": {
+ "$ref": "#/definitions/LiftrBase.SingleSignOnStates",
+ "description": "State of the Single Sign On for the resource"
+ },
+ "enterpriseAppId": {
+ "type": "string",
+ "description": "AAD enterprise application Id used to setup SSO"
+ },
+ "url": {
+ "$ref": "#/definitions/LiftrBase.Uri",
+ "description": "URL for SSO to be used by the partner to redirect the user to their system"
+ },
+ "aadDomains": {
+ "type": "array",
+ "description": "List of AAD domains fetched from Microsoft Graph for user.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "LiftrBase.SingleSignOnStates": {
+ "type": "string",
+ "description": "Various states of the SSO resource",
+ "enum": [
+ "Initial",
+ "Enable",
+ "Disable"
+ ],
+ "x-ms-enum": {
+ "name": "SingleSignOnStates",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Initial",
+ "value": "Initial",
+ "description": "Initial state of the SSO resource"
+ },
+ {
+ "name": "Enable",
+ "value": "Enable",
+ "description": "State of the SSO resource when it is enabled"
+ },
+ {
+ "name": "Disable",
+ "value": "Disable",
+ "description": "State of the SSO resource when it is disabled"
+ }
+ ]
+ }
+ },
+ "LiftrBase.SingleSignOnType": {
+ "type": "string",
+ "description": "Defines the type of Single Sign-On (SSO) mechanism being used",
+ "enum": [
+ "Saml",
+ "OpenId"
+ ],
+ "x-ms-enum": {
+ "name": "SingleSignOnType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Saml",
+ "value": "Saml",
+ "description": "Security Assertion Markup Language (SAML) based Single Sign-On"
+ },
+ {
+ "name": "OpenId",
+ "value": "OpenId",
+ "description": "OpenID Connect based Single Sign-On."
+ }
+ ]
+ }
+ },
+ "LiftrBase.Uri": {
+ "type": "string",
+ "description": "A string that represents a URI."
+ },
+ "LiftrBase.UserDetails": {
+ "type": "object",
+ "description": "User details for an organization",
+ "properties": {
+ "firstName": {
+ "type": "string",
+ "description": "First name of the user"
+ },
+ "lastName": {
+ "type": "string",
+ "description": "Last name of the user"
+ },
+ "emailAddress": {
+ "$ref": "#/definitions/LiftrBase.email",
+ "description": "Email address of the user"
+ },
+ "upn": {
+ "type": "string",
+ "description": "User's principal name"
+ },
+ "phoneNumber": {
+ "type": "string",
+ "description": "User's phone number"
+ }
+ },
+ "required": [
+ "firstName",
+ "lastName",
+ "emailAddress"
+ ]
+ },
+ "LiftrBase.email": {
+ "type": "string",
+ "description": "Reusable representation of an email address.",
+ "pattern": "^[A-Za-z0-9._%+-]+@(?:[A-Za-z0-9-]+\\.)+[A-Za-z]{2,}$"
+ },
+ "OrganizationProperties": {
+ "type": "object",
+ "description": "Properties specific to Organization",
+ "properties": {
+ "marketplace": {
+ "$ref": "#/definitions/LiftrBase.MarketplaceDetails",
+ "description": "Marketplace details of the resource.",
+ "x-ms-mutability": [
+ "read",
+ "update",
+ "create"
+ ]
+ },
+ "user": {
+ "$ref": "#/definitions/LiftrBase.UserDetails",
+ "description": "Details of the user."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState",
+ "description": "Provisioning state of the resource.",
+ "readOnly": true
+ },
+ "partnerProperties": {
+ "$ref": "#/definitions/PartnerProperties",
+ "description": "partner properties"
+ },
+ "singleSignOnProperties": {
+ "$ref": "#/definitions/LiftrBase.SingleSignOnPropertiesV2",
+ "description": "Single sign-on properties"
+ }
+ },
+ "required": [
+ "marketplace",
+ "user"
+ ]
+ },
+ "OrganizationResource": {
+ "type": "object",
+ "description": "Concrete tracked resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OrganizationProperties",
+ "description": "The resource-specific properties for this resource."
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The managed service identities assigned to this resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "OrganizationResourceListResult": {
+ "type": "object",
+ "description": "The response of a OrganizationResource list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The OrganizationResource items on this page",
+ "items": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "OrganizationResourceUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the Organization Resource.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "identity": {
+ "$ref": "#/definitions/Azure.ResourceManager.CommonTypes.ManagedServiceIdentityUpdate",
+ "description": "The managed service identities assigned to this resource."
+ }
+ }
+ },
+ "PartnerProperties": {
+ "type": "object",
+ "description": "Partner's specific Properties",
+ "properties": {
+ "displayName": {
+ "type": "string",
+ "description": "Pinecone Organization Name",
+ "minLength": 1,
+ "maxLength": 512,
+ "pattern": "^[^\\0]+$"
+ }
+ },
+ "required": [
+ "displayName"
+ ]
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/liftrpinecone/resource-manager/readme.md b/specification/liftrpinecone/resource-manager/readme.md
new file mode 100644
index 000000000000..18fa46785202
--- /dev/null
+++ b/specification/liftrpinecone/resource-manager/readme.md
@@ -0,0 +1,45 @@
+# LiftrBasic.SampleRP RP
+
+> see https://aka.ms/autorest
+
+This is the AutoRest configuration file for liftrpinecone service.
+
+## Getting Started
+
+To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run:
+
+> `autorest readme.md`
+
+To see additional help and options, run:
+
+> `autorest --help`
+
+For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page.
+
+---
+
+## Configuration
+
+### Basic Information
+
+These are the global settings for the liftrpinecone service.
+
+```yaml
+openapi-type: arm
+openapi-subtype: rpaas
+tag: package-2024-10-22-preview
+suppressions:
+ - code: AvoidAnonymousTypes
+ where:
+ - $.definitions["ManagedServiceIdentityUpdate"].properties["userAssignedIdentities"].additionalProperties
+ reason:
+ Issue with common-types
+```
+### Tag: package-2024-10-22-preview
+
+These settings apply only when `--tag=package-2024-10-22-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-2024-10-22-preview'
+input-file:
+ - Pinecone.VectorDb/preview/2024-10-22-preview/openapi.json
+```
\ No newline at end of file
From 686e46ec33eefe2a9a436159cc460de0f769cb03 Mon Sep 17 00:00:00 2001
From: Xiaofei Cao <92354331+XiaofeiCao@users.noreply.github.com>
Date: Wed, 11 Dec 2024 14:58:19 +0800
Subject: [PATCH 002/128] rename (#31792)
---
.../loadtestservice/resource-manager/readme.java.md | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/specification/loadtestservice/resource-manager/readme.java.md b/specification/loadtestservice/resource-manager/readme.java.md
index 472346c01651..00f260bd567e 100644
--- a/specification/loadtestservice/resource-manager/readme.java.md
+++ b/specification/loadtestservice/resource-manager/readme.java.md
@@ -4,4 +4,9 @@ These settings apply only when `--java` is specified on the command line.
```yaml $(java)
property-include-always: EncryptionPropertiesIdentity.resourceId
+directive:
+ from: loadtestservice.json
+ where: "$.definitions.LoadTestResourceUpdate"
+ transform: >
+ $["x-ms-client-name"] = "LoadTestResourcePatchRequestBody";
```
From faebe07bdf8bab920fbecdef2426772179984932 Mon Sep 17 00:00:00 2001
From: Albert Cheng <38804567+ckairen@users.noreply.github.com>
Date: Wed, 11 Dec 2024 09:08:22 -0800
Subject: [PATCH 003/128] Descend from alps (typespec apiview) (#31656)
* typespec apiview & get changed filse
* file checkpoint
* revert change
* temp save
* initial
* testing
* telem aroudn impacted typespec
* fix get impacted typespec
* change swagger into typespec
* resource provider
* out null
* new item force
* telem artifacts dir
* telem
* telem
* Fix file path for artifacts
* Fix file path for artifacts
* Fix file path for artifacts
* Syntax
* Syntax
* shorten dir path
* cleanup
* readme variables rename
* pr udpate: function name chanage + remove tspconfig as changed file
* Update eng/scripts/Create-APIView.ps1
Co-authored-by: Mike Harder
* add testing to contoso manager
* targetting staging
* adding scenario for new project without baseline
* npm ci at earlier stage
* syntax
* fix baseline path
* Add trailing newline
* Update eng/pipelines/typespec-apiview.yml
Co-authored-by: Ben Broderick Phillips
* spelling
* Update eng/scripts/Create-APIView.ps1
Co-authored-by: Wes Haggard
* remove get ipmacted typespec
* error check
* add ignore core
* spelling
* try finally for git checkout
* print out npx command
* Update eng/pipelines/typespec-apiview.yml
* comment
* Update specification/contosowidgetmanager/Contoso.Management/employee.tsp
* in case typespec folder is empty
* test
* remove test
* create typeSpecAPIViewArtifactsDirectory
* test
* remove test
* Update eng/scripts/Get-TypeSpec-Folders.ps1
* test
* remove test
* include all pr as trigger
* test
* remove test
---------
Co-authored-by: Mike Harder
Co-authored-by: Ben Broderick Phillips
Co-authored-by: Wes Haggard
---
eng/pipelines/typespec-apiview.yml | 54 +++++++++
eng/scripts/ChangedFiles-Functions.ps1 | 10 ++
eng/scripts/Create-APIView.ps1 | 152 +++++++++++++++++++++++--
eng/scripts/Get-TypeSpec-Folders.ps1 | 7 +-
4 files changed, 214 insertions(+), 9 deletions(-)
create mode 100644 eng/pipelines/typespec-apiview.yml
diff --git a/eng/pipelines/typespec-apiview.yml b/eng/pipelines/typespec-apiview.yml
new file mode 100644
index 000000000000..53ee3e494aca
--- /dev/null
+++ b/eng/pipelines/typespec-apiview.yml
@@ -0,0 +1,54 @@
+parameters:
+ - name: APIViewArtifactsDirectoryName
+ type: string
+ default: 'TypespecAPIViewArtifacts'
+ - name: APIViewArtifactsName
+ type: string
+ default: 'typeSpecAPIViewArtifacts'
+ - name: APIViewAPIUri
+ type: string
+ default: 'https://apiview.dev/PullRequest/DetectAPIChanges'
+ # Please use 'https://apiviewstagingtest.com/PullRequest/DetectAPIChanges' for testing purposes
+
+jobs:
+- job:
+ pool:
+ name: azsdk-pool-mms-ubuntu-2204-general
+ vmImage: ubuntu-22.04
+
+ steps:
+ - checkout: self
+ fetchDepth: 0
+
+ - template: /eng/pipelines/templates/steps/npm-install.yml
+
+ - pwsh: |
+ . $(Build.SourcesDirectory)/eng/scripts/Create-APIView.ps1
+ New-TypeSpecAPIViewTokens `
+ -TempDirectory "$(Agent.TempDirectory)" `
+ -ArtifactsStagingDirectory "$(Build.ArtifactStagingDirectory)" `
+ -APIViewArtifactsDirectoryName "${{ parameters.APIViewArtifactsDirectoryName }}"
+ displayName: Generate TypeSpec APIView Tokens
+
+ - task: PublishPipelineArtifact@1
+ inputs:
+ targetPath: '$(Build.ArtifactStagingDirectory)/${{ parameters.APIViewArtifactsDirectoryName }}'
+ artifactName: '${{ parameters.APIViewArtifactsName }}'
+ publishLocation: 'pipeline'
+ displayName: 'Publish TypeSpec APIView Artifacts'
+ condition: and(succeeded(), ne(variables['Agent.JobStatus'], 'SucceededWithIssues'))
+
+ - pwsh: |
+ . $(Build.SourcesDirectory)/eng/scripts/Create-APIView.ps1
+ New-RestSpecsAPIViewReviews `
+ -ArtiFactsStagingDirectory $(Build.ArtifactStagingDirectory) `
+ -APIViewArtifactsDirectoryName ${{ parameters.APIViewArtifactsDirectoryName }} `
+ -APIViewArtifactsName ${{ parameters.APIViewArtifactsName }} `
+ -APIViewUri ${{ parameters.APIViewAPIUri }} `
+ -BuildId $(Build.BuildId) `
+ -RepoName $(Build.Repository.Name) `
+ -PullRequestNumber $(System.PullRequest.PullRequestNumber)`
+ -Language 'TypeSpec' `
+ -CommitSha $(Build.SourceVersion)
+ displayName: Create TypeSpec APIView
+ condition: and(succeeded(), ne(variables['Agent.JobStatus'], 'SucceededWithIssues'))
diff --git a/eng/scripts/ChangedFiles-Functions.ps1 b/eng/scripts/ChangedFiles-Functions.ps1
index 927d4d3156a5..1a84809d4eb5 100644
--- a/eng/scripts/ChangedFiles-Functions.ps1
+++ b/eng/scripts/ChangedFiles-Functions.ps1
@@ -28,6 +28,16 @@ function Get-ChangedSwaggerFiles($changedFiles = (Get-ChangedFiles)) {
return $changedSwaggerFiles
}
+function Get-ChangedTypeSpecFiles($changedFiles = (Get-ChangedFiles)) {
+ $changedFiles = Get-ChangedFilesUnderSpecification $changedFiles
+
+ $changedTypeSpecFiles = $changedFiles.Where({
+ $_.EndsWith(".tsp")
+ })
+
+ return $changedTypeSpecFiles
+}
+
function Get-ChangedFilesUnderSpecification($changedFiles = (Get-ChangedFiles)) {
$changedFilesUnderSpecification = $changedFiles.Where({
$_.StartsWith("specification")
diff --git a/eng/scripts/Create-APIView.ps1 b/eng/scripts/Create-APIView.ps1
index 248f441e5805..987781886e45 100644
--- a/eng/scripts/Create-APIView.ps1
+++ b/eng/scripts/Create-APIView.ps1
@@ -166,6 +166,68 @@ function Invoke-SwaggerAPIViewParser {
}
}
+<#
+.DESCRIPTION
+ Invoke the TypeSpec parser to generate APIView tokens.
+
+.PARAMETER Type
+ New or Baseline TypeSpec APIView tokens.
+
+.PARAMETER ProjectPath
+ The TypeSpec Project path.
+
+.PARAMETER ResourceProvider
+ The ResourceProvider Name.
+
+.PARAMETER Tag
+ The Tag to use for generating the APIView Tokens.
+
+.PARAMETER TokenDirectory
+ The directory to store the generated APIView Tokens.
+
+.OUTPUTS
+ The resource provider name.
+#>
+function Invoke-TypeSpecAPIViewParser {
+ param (
+ [ValidateSet("New", "Baseline")]
+ [Parameter(Mandatory = $true)]
+ [string]$Type,
+ [Parameter(Mandatory = $true)]
+ [string]$ProjectPath,
+ [Parameter(Mandatory = $true)]
+ [string]$ResourceProvider,
+ [Parameter(Mandatory = $true)]
+ [string]$TokenDirectory
+ )
+ $tempWorkingDirectoryName = [guid]::NewGuid().ToString()
+ $tempWorkingDirectoryPath = [System.IO.Path]::Combine($TempDirectory, $tempWorkingDirectoryName)
+ New-Item -ItemType Directory -Path $tempWorkingDirectoryPath > $null
+
+ try {
+ Write-Host "Compiling files and generating '$Type' APIView for '$resourceProvider'..."
+ Push-Location $ProjectPath
+ Write-Host "npm exec --no -- tsp compile . --emit=@azure-tools/typespec-apiview --option @azure-tools/typespec-apiview.emitter-output-dir=$tempWorkingDirectoryPath/output/apiview.json"
+ npm exec --no -- tsp compile . --emit=@azure-tools/typespec-apiview --option @azure-tools/typespec-apiview.emitter-output-dir=$tempWorkingDirectoryPath/output/apiview.json
+ if ($LASTEXITCODE) {
+ throw
+ }
+ Pop-Location
+
+ $generatedAPIViewTokenFile = Get-ChildItem -File $tempWorkingDirectoryPath/output/apiview.json | Select-Object -First 1
+ $apiViewTokensFilePath = [System.IO.Path]::Combine($TokenDirectory, "$resourceProvider.$Type.json")
+ Write-Host "Moving generated APIView Token file to '$apiViewTokensFilePath'"
+ Move-Item -Path $generatedAPIViewTokenFile.FullName -Destination $apiViewTokensFilePath -Force > $null
+ } catch {
+ LogError " Failed to generate '$Type' APIView Tokens on '$ProjectPath' for '$resourceProvider', please check the detail log and make sure TypeSpec compiler version is the latest."
+ throw
+ } finally {
+ if (Test-Path -Path $tempWorkingDirectoryPath) {
+ Remove-Item -Path $tempWorkingDirectoryPath -Recurse -Force > $null
+ }
+ }
+}
+
<#
.DESCRIPTION
Generate New and Baseline APIView tokens for the changed swagger files in the PR.
@@ -177,7 +239,7 @@ function Invoke-SwaggerAPIViewParser {
.PARAMETER TempDirectory
Temporary directory for files being processed. Use $(Agent.TempDirectory) on DevOps
-.PARAMETER ArtiFactsStagingDirectory
+.PARAMETER ArtifactsStagingDirectory
The directory where the APIView tokens will be stored. Use $(Build.ArtifactStagingDirectory) on DevOps
.PARAMETER APIViewArtifactsDirectoryName
@@ -188,7 +250,7 @@ function New-SwaggerAPIViewTokens {
[Parameter(Mandatory = $true)]
[string]$TempDirectory,
[Parameter(Mandatory = $true)]
- [string]$ArtiFactsStagingDirectory,
+ [string]$ArtifactsStagingDirectory,
[Parameter(Mandatory = $true)]
[string]$APIViewArtifactsDirectoryName
)
@@ -230,7 +292,7 @@ function New-SwaggerAPIViewTokens {
$currentBranch = git rev-parse --abbrev-ref HEAD
- $swaggerAPIViewArtifactsDirectory = [System.IO.Path]::Combine($ArtiFactsStagingDirectory, $APIViewArtifactsDirectoryName)
+ $swaggerAPIViewArtifactsDirectory = [System.IO.Path]::Combine($ArtifactsStagingDirectory, $APIViewArtifactsDirectoryName)
# Generate Swagger APIView Tokens
foreach ($entry in $autoRestConfigInfo.GetEnumerator()) {
@@ -273,11 +335,87 @@ function New-SwaggerAPIViewTokens {
LogGroupEnd
}
+<#
+.DESCRIPTION
+ Generate New and Baseline APIView tokens for the changed TypeSpec files in the PR.
+ Detects the TypeSpec files changed in the PR and generates APIView tokens for the TypeSpec files.
+ New APIView tokens are generated using the default tag on the base branch.
+ Baseline APIView tokens are generated using the same tag on the target branch.
+ Script asumes that the merge commit is checked out. Such that Source commit = HEAD^ and Target commit = HEAD.
+
+.PARAMETER TempDirectory
+ Temporary directory for files being processed. Use $(Agent.TempDirectory) on DevOps
+
+.PARAMETER ArtifactsStagingDirectory
+ The directory where the APIView tokens will be stored. Use $(Build.ArtifactStagingDirectory) on DevOps
+
+.PARAMETER APIViewArtifactsDirectoryName
+ Name for the subdirectory where the APIView tokens will be stored.
+#>
+function New-TypeSpecAPIViewTokens {
+ param (
+ [Parameter(Mandatory = $true)]
+ [string]$TempDirectory,
+ [Parameter(Mandatory = $true)]
+ [string]$ArtifactsStagingDirectory,
+ [Parameter(Mandatory = $true)]
+ [string]$APIViewArtifactsDirectoryName
+ )
+
+ $SourceCommitId = $(git rev-parse HEAD^)
+ $TargetCommitId = $(git rev-parse HEAD)
+
+ $typeSpecProjects, $null = &"$PSScriptRoot/Get-TypeSpec-Folders.ps1" `
+ -IgnoreCoreFiles:$true `
+ -BaseCommitish:$SourceCommitId `
+ -TargetCommitish:$TargetCommitId
+
+ LogGroupStart " TypeSpec APIView Tokens will be generated for the following configuration files..."
+ $typeSpecProjects | ForEach-Object {
+ LogInfo " - $_"
+ }
+ LogGroupEnd
+
+ $currentBranch = git rev-parse --abbrev-ref HEAD
+
+ $typeSpecAPIViewArtifactsDirectory = [System.IO.Path]::Combine($ArtifactsStagingDirectory, $APIViewArtifactsDirectoryName)
+ New-Item -ItemType Directory -Path $typeSpecAPIViewArtifactsDirectory -Force | Out-Null
+
+ try {
+ # Generate TypeSpec APIView Tokens
+ foreach ($typeSpecProject in $typeSpecProjects) {
+ $tokenDirectory = [System.IO.Path]::Combine($typeSpecAPIViewArtifactsDirectory, $typeSpecProject.split([IO.Path]::DirectorySeparatorChar)[-1])
+ New-Item -ItemType Directory -Path $tokenDirectory -Force | Out-Null
+
+ # Generate New APIView Token using default tag on base branch
+ git checkout $SourceCommitId
+ Invoke-TypeSpecAPIViewParser -Type "New" -ProjectPath $typeSpecProject -ResourceProvider $($typeSpecProject.split([IO.Path]::DirectorySeparatorChar)[-1]) -TokenDirectory $tokenDirectory
+
+ # Generate BaseLine APIView Token using same tag on target branch
+ git checkout $TargetCommitId
+
+ # Skip Baseline APIView Token for new projects
+ if (!(Test-Path -Path $typeSpecProject)) {
+ Write-Host "TypeSpec project $typeSpecProjectDir is not found in pull request target branch. API review will not have a baseline revision."
+ }
+ else {
+ Invoke-TypeSpecAPIViewParser -Type "Baseline" -ProjectPath $typeSpecProject -ResourceProvider $($typeSpecProject.split([IO.Path]::DirectorySeparatorChar)[-1]) -TokenDirectory $tokenDirectory | Out-Null
+ }
+ }
+ }
+ finally {
+ git checkout $currentBranch
+ LogGroupStart " See all generated TypeSpec APIView Artifacts..."
+ Get-ChildItem -Path $typeSpecAPIViewArtifactsDirectory -Recurse
+ LogGroupEnd
+ }
+}
+
<#
.DESCRIPTION
Create APIView for the published packages. Send DevOps artifacts information to APIView to create APIView for the published packages.
-.PARAMETER ArtiFactsStagingDirectory
+.PARAMETER ArtifactsStagingDirectory
The DevOps artifacts staging directory. Use $(Build.ArtifactStagingDirectory) on DevOps
.PARAMETER APIViewArtifactsDirectoryName
Temporary Directory for processing the APIView artifacts
@@ -292,14 +430,14 @@ TGhe BuildId of the Run
.PARAMETER PullRequestNumber
The PR number
.PARAMETER Language
- The language of the resource provider `Swagger`
+ The language of the resource provider
.PARAMETER CommitSha
The commit sha of the current branch. Uusally the merge commit of the PR.
#>
function New-RestSpecsAPIViewReviews {
param (
[Parameter(Mandatory = $true)]
- [string]$ArtiFactsStagingDirectory,
+ [string]$ArtifactsStagingDirectory,
[Parameter(Mandatory = $true)]
[string]$APIViewArtifactsDirectoryName,
[Parameter(Mandatory = $true)]
@@ -318,7 +456,7 @@ function New-RestSpecsAPIViewReviews {
[string]$CommitSha
)
- $apiViewArtifactsDirectory = [System.IO.Path]::Combine($ArtiFactsStagingDirectory, $APIViewArtifactsDirectoryName)
+ $apiViewArtifactsDirectory = [System.IO.Path]::Combine($ArtifactsStagingDirectory, $APIViewArtifactsDirectoryName)
$publishedPackages = Get-ChildItem -Path $apiViewArtifactsDirectory -Directory -ErrorAction SilentlyContinue
Write-Host "Published packages: $publishedPackages"
diff --git a/eng/scripts/Get-TypeSpec-Folders.ps1 b/eng/scripts/Get-TypeSpec-Folders.ps1
index e667216b0bdb..b7a51a69f169 100644
--- a/eng/scripts/Get-TypeSpec-Folders.ps1
+++ b/eng/scripts/Get-TypeSpec-Folders.ps1
@@ -1,5 +1,6 @@
[CmdletBinding()]
param (
+ [switch]$IgnoreCoreFiles = $false,
[switch]$CheckAll = $false,
[string]$BaseCommitish = "HEAD^",
[string]$TargetCommitish = "HEAD"
@@ -21,7 +22,7 @@ else {
$changedFiles = @(Get-ChangedFiles -baseCommitish $BaseCommitish -targetCommitish $TargetCommitish -diffFilter "")
$coreChangedFiles = Get-ChangedCoreFiles $changedFiles
- if ($coreChangedFiles) {
+ if ($coreChangedFiles -and !$IgnoreCoreFiles) {
Write-Verbose "Found changes to core eng or root files so checking all specs."
$changedFiles = $checkAllPath
$checkedAll = $true
@@ -51,6 +52,8 @@ foreach ($skippedTypespecFolder in $skippedTypespecFolders | Select-Object -Uniq
Write-Host "Cannot find directory $skippedTypespecFolder"
}
-$typespecFolders = $typespecFolders | ForEach-Object { [IO.Path]::GetRelativePath($repoPath, $_) -replace '\\', '/' } | Sort-Object -Unique
+if ($typespecFolders.Length) {
+ $typespecFolders = $typespecFolders | ForEach-Object { [IO.Path]::GetRelativePath($repoPath, $_) -replace '\\', '/' } | Sort-Object -Unique
+}
return @($typespecFolders, $checkedAll)
From e725ba2ceffe71772df6918b2950bf571577f968 Mon Sep 17 00:00:00 2001
From: hmmorales <100385146+hmmorales@users.noreply.github.com>
Date: Wed, 11 Dec 2024 10:09:56 -0800
Subject: [PATCH 004/128] Add C# Emitter to IoTOperations (#31822)
* c# emitter
* .....
* ..
* fix
* test not generating samples
* test not generating sampels
* ...
* add go suppression file
* ...
* ...
* ...
---
.../iotoperations/IoTOperations.Management/tspconfig.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/specification/iotoperations/IoTOperations.Management/tspconfig.yaml b/specification/iotoperations/IoTOperations.Management/tspconfig.yaml
index 0579289e42f3..6d48d9c63993 100644
--- a/specification/iotoperations/IoTOperations.Management/tspconfig.yaml
+++ b/specification/iotoperations/IoTOperations.Management/tspconfig.yaml
@@ -9,6 +9,12 @@ options:
azure-resource-provider-folder: "resource-manager"
output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/iotoperations.json"
use-read-only-status-schema: true
+ "@azure-tools/typespec-csharp":
+ flavor: azure
+ package-dir: "Azure.ResourceManager.IoTOperations"
+ clear-output-folder: true
+ model-namespace: false
+ namespace: "{package-dir}"
"@azure-tools/typespec-python":
package-dir: "azure-mgmt-iotoperations"
package-name: "{package-dir}"
From 7e22a66617633d162735fe65388c2852127b4aac Mon Sep 17 00:00:00 2001
From: Mark Cowlishaw
Date: Wed, 11 Dec 2024 12:03:10 -0800
Subject: [PATCH 005/128] Update TypeSpec version for December release (#31832)
* Update TypeSpec for December release
* Updating package lock
* Remove old dependency
* Add back optional dependencies
* Restore tsp-client
---------
Co-authored-by: Mike Harder
---
package-lock.json | 1399 ++++++++++-------
package.json | 28 +-
.../AppConfiguration/models.tsp | 8 +-
.../virtualMachineScaleSet.tsp | 2 +-
specification/batch/Azure.Batch/models.tsp | 26 +-
.../AnomalyDetector/multivariate/models.tsp | 2 +-
.../Microsoft.CodeTransparency/models.tsp | 2 +-
.../Microsoft.Fabric.Management/models.tsp | 4 +-
.../AzureAI.Assets/model.tsp | 4 +-
specification/riskiq/Easm/models.tsp | 6 +-
.../schemaregistry/SchemaRegistry/main.tsp | 4 +-
.../Azure.AI.DocumentTranslation/models.tsp | 4 +-
12 files changed, 854 insertions(+), 635 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index a3af68163892..4ff3c2f2b07d 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7,23 +7,23 @@
"name": "azure-rest-api-specs",
"devDependencies": {
"@azure-tools/typespec-apiview": "0.4.9",
- "@azure-tools/typespec-autorest": "0.48.0",
- "@azure-tools/typespec-azure-core": "0.48.0",
- "@azure-tools/typespec-azure-portal-core": "0.48.0",
- "@azure-tools/typespec-azure-resource-manager": "0.48.0",
- "@azure-tools/typespec-azure-rulesets": "0.48.0",
+ "@azure-tools/typespec-autorest": "0.49.0",
+ "@azure-tools/typespec-azure-core": "0.49.0",
+ "@azure-tools/typespec-azure-portal-core": "0.49.0",
+ "@azure-tools/typespec-azure-resource-manager": "0.49.0",
+ "@azure-tools/typespec-azure-rulesets": "0.49.0",
"@azure-tools/typespec-client-generator-cli": "0.14.2",
- "@azure-tools/typespec-client-generator-core": "0.48.6",
+ "@azure-tools/typespec-client-generator-core": "0.49.0",
"@azure-tools/typespec-liftr-base": "0.6.0",
"@azure/avocado": "^0.9.1",
- "@typespec/compiler": "0.62.0",
- "@typespec/http": "0.62.0",
- "@typespec/openapi": "0.62.0",
- "@typespec/openapi3": "0.62.0",
- "@typespec/prettier-plugin-typespec": "0.62.0",
- "@typespec/rest": "0.62.0",
- "@typespec/streams": "0.62.0",
- "@typespec/versioning": "0.62.0",
+ "@typespec/compiler": "0.63.0",
+ "@typespec/http": "0.63.0",
+ "@typespec/openapi": "0.63.0",
+ "@typespec/openapi3": "0.63.0",
+ "@typespec/prettier-plugin-typespec": "0.63.0",
+ "@typespec/rest": "0.63.0",
+ "@typespec/streams": "0.63.0",
+ "@typespec/versioning": "0.63.0",
"azure-rest-api-specs-eng-tools": "file:eng/tools",
"oav": "^3.5.1",
"prettier": "~3.3.3",
@@ -47,9 +47,9 @@
}
},
"eng/tools/node_modules/@types/node": {
- "version": "18.19.64",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.64.tgz",
- "integrity": "sha512-955mDqvO2vFf/oL7V3WiUtiz+BugyX8uVbaT2H8oj3+8dRyH2FLiNdowe7eNqRM7IOIZvzDH76EoAT+gwm6aIQ==",
+ "version": "18.19.68",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.68.tgz",
+ "integrity": "sha512-QGtpFH1vB99ZmTa63K4/FU8twThj4fuVSBkGddTp7uIL/cuoLWIUSL2RcOaigBhfR+hg5pgGkBnkoOxrTVBMKw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -57,9 +57,9 @@
}
},
"eng/tools/node_modules/@vitest/coverage-v8": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.4.tgz",
- "integrity": "sha512-FPKQuJfR6VTfcNMcGpqInmtJuVXFSCd9HQltYncfR01AzXhLucMEtQ5SinPdZxsT5x/5BK7I5qFJ5/ApGCmyTQ==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.8.tgz",
+ "integrity": "sha512-2Y7BPlKH18mAZYAW1tYByudlCYrQyl5RGvnnDYJKW5tCiO5qg3KSAy3XAxcxKz900a0ZXxWtKrMuZLe3lKBpJw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -72,7 +72,7 @@
"istanbul-reports": "^3.1.7",
"magic-string": "^0.30.12",
"magicast": "^0.3.5",
- "std-env": "^3.7.0",
+ "std-env": "^3.8.0",
"test-exclude": "^7.0.1",
"tinyrainbow": "^1.2.0"
},
@@ -80,8 +80,8 @@
"url": "https://opencollective.com/vitest"
},
"peerDependencies": {
- "@vitest/browser": "2.1.4",
- "vitest": "2.1.4"
+ "@vitest/browser": "2.1.8",
+ "vitest": "2.1.8"
},
"peerDependenciesMeta": {
"@vitest/browser": {
@@ -89,33 +89,6 @@
}
}
},
- "eng/tools/node_modules/@vitest/mocker": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.4.tgz",
- "integrity": "sha512-Ky/O1Lc0QBbutJdW0rqLeFNbuLEyS+mIPiNdlVlp2/yhJ0SbyYqObS5IHdhferJud8MbbwMnexg4jordE5cCoQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@vitest/spy": "2.1.4",
- "estree-walker": "^3.0.3",
- "magic-string": "^0.30.12"
- },
- "funding": {
- "url": "https://opencollective.com/vitest"
- },
- "peerDependencies": {
- "msw": "^2.4.9",
- "vite": "^5.0.0"
- },
- "peerDependenciesMeta": {
- "msw": {
- "optional": true
- },
- "vite": {
- "optional": true
- }
- }
- },
"eng/tools/node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@@ -150,9 +123,9 @@
"license": "MIT"
},
"eng/tools/node_modules/vite": {
- "version": "5.4.10",
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.10.tgz",
- "integrity": "sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==",
+ "version": "5.4.11",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz",
+ "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -210,31 +183,31 @@
}
},
"eng/tools/node_modules/vitest": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.4.tgz",
- "integrity": "sha512-eDjxbVAJw1UJJCHr5xr/xM86Zx+YxIEXGAR+bmnEID7z9qWfoxpHw0zdobz+TQAFOLT+nEXz3+gx6nUJ7RgmlQ==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.8.tgz",
+ "integrity": "sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vitest/expect": "2.1.4",
- "@vitest/mocker": "2.1.4",
- "@vitest/pretty-format": "^2.1.4",
- "@vitest/runner": "2.1.4",
- "@vitest/snapshot": "2.1.4",
- "@vitest/spy": "2.1.4",
- "@vitest/utils": "2.1.4",
+ "@vitest/expect": "2.1.8",
+ "@vitest/mocker": "2.1.8",
+ "@vitest/pretty-format": "^2.1.8",
+ "@vitest/runner": "2.1.8",
+ "@vitest/snapshot": "2.1.8",
+ "@vitest/spy": "2.1.8",
+ "@vitest/utils": "2.1.8",
"chai": "^5.1.2",
"debug": "^4.3.7",
"expect-type": "^1.1.0",
"magic-string": "^0.30.12",
"pathe": "^1.1.2",
- "std-env": "^3.7.0",
+ "std-env": "^3.8.0",
"tinybench": "^2.9.0",
"tinyexec": "^0.3.1",
"tinypool": "^1.0.1",
"tinyrainbow": "^1.2.0",
"vite": "^5.0.0",
- "vite-node": "2.1.4",
+ "vite-node": "2.1.8",
"why-is-node-running": "^2.3.0"
},
"bin": {
@@ -249,8 +222,8 @@
"peerDependencies": {
"@edge-runtime/vm": "*",
"@types/node": "^18.0.0 || >=20.0.0",
- "@vitest/browser": "2.1.4",
- "@vitest/ui": "2.1.4",
+ "@vitest/browser": "2.1.8",
+ "@vitest/ui": "2.1.8",
"happy-dom": "*",
"jsdom": "*"
},
@@ -275,6 +248,33 @@
}
}
},
+ "eng/tools/node_modules/vitest/node_modules/@vitest/mocker": {
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.8.tgz",
+ "integrity": "sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@vitest/spy": "2.1.8",
+ "estree-walker": "^3.0.3",
+ "magic-string": "^0.30.12"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ },
+ "peerDependencies": {
+ "msw": "^2.4.9",
+ "vite": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "msw": {
+ "optional": true
+ },
+ "vite": {
+ "optional": true
+ }
+ }
+ },
"eng/tools/specs-model": {
"name": "@azure-tools/specs-model",
"dev": true,
@@ -434,6 +434,7 @@
"resolved": "https://registry.npmjs.org/@autorest/codemodel/-/codemodel-4.20.0.tgz",
"integrity": "sha512-Z2GwVwAGNTcfGUmrWT5LJqZv/WDXKBBpxhZrHu6zco/HrEGrqKQcKx5whlLX/GmAB/KmhcOWYr6aIyWomcoisQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@azure-tools/codegen": "~2.10.0",
"js-yaml": "~4.1.0"
@@ -461,6 +462,7 @@
"resolved": "https://registry.npmjs.org/@autorest/extension-base/-/extension-base-3.6.0.tgz",
"integrity": "sha512-hE6nmdYu2SA6xlG46lM+/njtz0yNEkhzfkOs7PjrYulnXuBWHo08RdbXHGcecypgNhV2QAQcbV6ar5f1UGX6xQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@azure-tools/codegen": "~2.10.0",
"js-yaml": "~4.1.0",
@@ -475,6 +477,7 @@
"resolved": "https://registry.npmjs.org/@autorest/openapi-to-typespec/-/openapi-to-typespec-0.10.4.tgz",
"integrity": "sha512-FvT448S4DCmGNgDEdGp9kL8bJE6m9QiLgw1N8YGuEmDCYoliC0RB1NQaFhOt9tTAZ3GGDKpZdqeYw/3l1mVIJA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@autorest/codemodel": "~4.20.0",
"@autorest/extension-base": "~3.6.0",
@@ -495,11 +498,267 @@
"prettier": "~3.1.0"
}
},
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@azure-tools/typespec-autorest": {
+ "version": "0.48.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.48.0.tgz",
+ "integrity": "sha512-AyoNMq3EORugHynFF8bN0TJh+zYxui/ApU5DoVEL7Xr1yMD6k9p5b90VD4HiCsP0dz8470ApFnjt5Vl6xCSzig==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@azure-tools/typespec-azure-core": "~0.48.0",
+ "@azure-tools/typespec-azure-resource-manager": "~0.48.0",
+ "@azure-tools/typespec-client-generator-core": "~0.48.0",
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0",
+ "@typespec/openapi": "~0.62.0",
+ "@typespec/rest": "~0.62.0",
+ "@typespec/versioning": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@azure-tools/typespec-azure-core": {
+ "version": "0.48.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.48.0.tgz",
+ "integrity": "sha512-80qyqgTgBbrnCGXtz6eWAMBdEAjYVVL780L0Ye+rBEd6VoA0m3JrgzUqf5bC0Iwju6lEtBAb8o6sefKD/NGA7g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0",
+ "@typespec/rest": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@azure-tools/typespec-azure-resource-manager": {
+ "version": "0.48.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.48.0.tgz",
+ "integrity": "sha512-4JxPbKxd3EJ98sLbtfBlqyANWVrU6tT2nk3iLspg7MITPLhiMTeRT9BprsJXH18ks8qw8scR7/am5r57YERTmQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "change-case": "~5.4.4",
+ "pluralize": "^8.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@azure-tools/typespec-azure-core": "~0.48.0",
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0",
+ "@typespec/openapi": "~0.62.0",
+ "@typespec/rest": "~0.62.0",
+ "@typespec/versioning": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@azure-tools/typespec-client-generator-core": {
+ "version": "0.48.6",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.48.6.tgz",
+ "integrity": "sha512-SVD4JCON52UIs4AogxQs8OrXjFdEf9EJPuK76Ze33VhtYdNNXPLJir2uV1wNJAnNtH2i3IMBkfrq2RjV1HHpdA==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "change-case": "~5.4.4",
+ "pluralize": "^8.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@azure-tools/typespec-azure-core": "~0.48.0",
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0",
+ "@typespec/openapi": "~0.62.0",
+ "@typespec/rest": "~0.62.0",
+ "@typespec/versioning": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/compiler": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.62.0.tgz",
+ "integrity": "sha512-RfKJ/rF2Wjxu7dl74oJE8yEfSkeL7NopFlyJ4dW1JQXpRN2IOJYPxas12qZA6H9ZEIB8rBjyrHNxJSQbvn/UDQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "~7.25.7",
+ "ajv": "~8.17.1",
+ "change-case": "~5.4.4",
+ "globby": "~14.0.2",
+ "mustache": "~4.2.0",
+ "picocolors": "~1.1.0",
+ "prettier": "~3.3.3",
+ "prompts": "~2.4.2",
+ "semver": "^7.6.3",
+ "temporal-polyfill": "^0.2.5",
+ "vscode-languageserver": "~9.0.1",
+ "vscode-languageserver-textdocument": "~1.0.12",
+ "yaml": "~2.5.1",
+ "yargs": "~17.7.2"
+ },
+ "bin": {
+ "tsp": "cmd/tsp.js",
+ "tsp-server": "cmd/tsp-server.js"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/compiler/node_modules/prettier": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+ "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "prettier": "bin/prettier.cjs"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/http": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.62.0.tgz",
+ "integrity": "sha512-6H9y9e32lb2s76MMy29ITCwSZNG42sa/qWthiByUvfbTEXMpu5a1fQHNj7RXg+xmDKmVIHv3gAfjGPAWfXhkaQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/streams": "~0.62.0"
+ },
+ "peerDependenciesMeta": {
+ "@typespec/streams": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/openapi": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.62.0.tgz",
+ "integrity": "sha512-Xtm0Nd2BuSmEfSWGtc10ok22jyomYm9L2jY+kVTy+v5J89DrVh0o6+YpipUl1QhcItM1YMBphWHIHPfwkDRbnw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/openapi3": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/openapi3/-/openapi3-0.62.0.tgz",
+ "integrity": "sha512-tfmaPvZ38fM+O5+ZBq4ic7fc32E3v0JOFP9h+7otQyrVprLVCToXpBwaxB7c2nTSJbI4vcxK7/T3Z8BD5j8X+w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@readme/openapi-parser": "~2.6.0",
+ "yaml": "~2.5.1"
+ },
+ "bin": {
+ "tsp-openapi3": "cmd/tsp-openapi3.js"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0",
+ "@typespec/openapi": "~0.62.0",
+ "@typespec/versioning": "~0.62.0"
+ },
+ "peerDependenciesMeta": {
+ "@typespec/xml": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/prettier-plugin-typespec": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/prettier-plugin-typespec/-/prettier-plugin-typespec-0.62.0.tgz",
+ "integrity": "sha512-VJRtX4RcUYE0qiQpKL8K7Mgfozy/icieaoap44XR+2OmWegZmuR1Qjq5iWtjLBS7MFwSXHel+BT/LBlqu1v+dA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "prettier": "~3.3.3"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/prettier-plugin-typespec/node_modules/prettier": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+ "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "prettier": "bin/prettier.cjs"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/rest": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.62.0.tgz",
+ "integrity": "sha512-ci5UjelEKFwsPTdpgysoUoDCcw02EnbG4GBuYJdR5mRrFCBZMxrbro+OJLgSN3g/TORSsWlW7dEOWLfbyrmlZQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0",
+ "@typespec/http": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/streams": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/streams/-/streams-0.62.0.tgz",
+ "integrity": "sha512-JmIJOOlR6NlYLhTVxw0vo3rQPfezzheXluCO00qO89TsdJFUyEz/Y2y5p9/JQbS0zLqtPpvNgPIksNH1Q6psSw==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "peer": true,
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0"
+ }
+ },
+ "node_modules/@autorest/openapi-to-typespec/node_modules/@typespec/versioning": {
+ "version": "0.62.0",
+ "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.62.0.tgz",
+ "integrity": "sha512-M5KTCVH5fBniZU8eQlw+NV13vAmPr58HyBLDIyxeOuV+SHNlx+f+qanUEDIPaJheKlaSSNTEZKsDhs83/iIMMA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@typespec/compiler": "~0.62.0"
+ }
+ },
"node_modules/@autorest/openapi-to-typespec/node_modules/prettier": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz",
"integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==",
"dev": true,
+ "license": "MIT",
"bin": {
"prettier": "bin/prettier.cjs"
},
@@ -510,6 +769,19 @@
"url": "https://github.com/prettier/prettier?sponsor=1"
}
},
+ "node_modules/@autorest/openapi-to-typespec/node_modules/yaml": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz",
+ "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "yaml": "bin.mjs"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
"node_modules/@autorest/schemas": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/@autorest/schemas/-/schemas-1.3.5.tgz",
@@ -522,6 +794,7 @@
"resolved": "https://registry.npmjs.org/@azure-tools/async-io/-/async-io-3.0.254.tgz",
"integrity": "sha512-X1C7XdyCuo50ch9FzKtTvmK18FgDxxf1Bbt3cSoknQqeDaRegHSSCO+zByq2YA4NvUzKXeZ1engh29IDxZXgpQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@azure-tools/tasks": "~3.0.255",
"proper-lockfile": "~2.0.1"
@@ -535,6 +808,7 @@
"resolved": "https://registry.npmjs.org/@azure-tools/codegen/-/codegen-2.10.0.tgz",
"integrity": "sha512-gdy0at3BUZAAARgiX9Ye6SNCKhcjLs5FNUewa/KV/dMGcPv7mBvbslt5VO3W8wj0n96ifk970aIFaivjacBxeQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@azure-tools/async-io": "~3.0.0",
"js-yaml": "~4.1.0",
@@ -609,9 +883,9 @@
}
},
"node_modules/@azure-tools/rest-api-diff": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/@azure-tools/rest-api-diff/-/rest-api-diff-0.1.4.tgz",
- "integrity": "sha512-zXQ0xRKDzQvJlhJ/k3RZBqzitXYpjOdR3ighNh5ri4c0mu0faH3eGrgmd9Utqc7yxNdYKZ/71zhLACPzDchiRA==",
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/@azure-tools/rest-api-diff/-/rest-api-diff-0.1.7.tgz",
+ "integrity": "sha512-RJ4JHGpBlFnpQAOHTtyvXz01PPwd0LHXvrujIhl9vvCqcbWMx9GeiSLAxWVWsvw52im26wgSb9oXaMrgt2NFbg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -650,6 +924,7 @@
"resolved": "https://registry.npmjs.org/@azure-tools/tasks/-/tasks-3.0.255.tgz",
"integrity": "sha512-GjALNLz7kWMEdRVbaN5g0cJHNAr3XVTbP0611Mv2UzMgGL6FOhNZJK+oPHJKLDR8EEDZNnkwPlyi7B+INXUSQA==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=10.12.0"
}
@@ -671,57 +946,57 @@
"@typespec/compiler": ">=0.57 <1.0",
"@typespec/versioning": ">=0.57 <1.0"
}
- },
- "node_modules/@azure-tools/typespec-autorest": {
- "version": "0.48.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.48.0.tgz",
- "integrity": "sha512-AyoNMq3EORugHynFF8bN0TJh+zYxui/ApU5DoVEL7Xr1yMD6k9p5b90VD4HiCsP0dz8470ApFnjt5Vl6xCSzig==",
+ },
+ "node_modules/@azure-tools/typespec-autorest": {
+ "version": "0.49.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-autorest/-/typespec-autorest-0.49.0.tgz",
+ "integrity": "sha512-stwfhmEc3yPeXbM8yfLKVCtaX5mR0H+sL74Xy/eMdEWoJgiE3aJxkgRWESu/7/vo99vugzo/HRwIEO5ELnyfRg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-azure-core": "~0.48.0",
- "@azure-tools/typespec-azure-resource-manager": "~0.48.0",
- "@azure-tools/typespec-client-generator-core": "~0.48.0",
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0",
- "@typespec/openapi": "~0.62.0",
- "@typespec/rest": "~0.62.0",
- "@typespec/versioning": "~0.62.0"
+ "@azure-tools/typespec-azure-core": "~0.49.0",
+ "@azure-tools/typespec-azure-resource-manager": "~0.49.0",
+ "@azure-tools/typespec-client-generator-core": "~0.49.0",
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0",
+ "@typespec/openapi": "~0.63.0",
+ "@typespec/rest": "~0.63.0",
+ "@typespec/versioning": "~0.63.0"
}
},
"node_modules/@azure-tools/typespec-azure-core": {
- "version": "0.48.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.48.0.tgz",
- "integrity": "sha512-80qyqgTgBbrnCGXtz6eWAMBdEAjYVVL780L0Ye+rBEd6VoA0m3JrgzUqf5bC0Iwju6lEtBAb8o6sefKD/NGA7g==",
+ "version": "0.49.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-core/-/typespec-azure-core-0.49.0.tgz",
+ "integrity": "sha512-hNKy+aePmPkB1brHQkO1tsJXqXPzt/9ehy10dv0rKdp9xq5dE3yBctHF5Aj3Nr8kr8GRG5z4KYpYPbV5guoT5w==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0",
- "@typespec/rest": "~0.62.0"
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0",
+ "@typespec/rest": "~0.63.0"
}
},
"node_modules/@azure-tools/typespec-azure-portal-core": {
- "version": "0.48.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-portal-core/-/typespec-azure-portal-core-0.48.0.tgz",
- "integrity": "sha512-P7ZpelTaiBMiOS8joJp+mnuP82tFzvaH3a17rf6gju/SG5k1tlnW0y7FEk7gGvO2nfo1S0aOb9Q9b40ksJDbhQ==",
+ "version": "0.49.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-portal-core/-/typespec-azure-portal-core-0.49.0.tgz",
+ "integrity": "sha512-PjfexSUXpjoLip8h6TaJlaJe3rmC396GvvTvW2ZFucsSKHe4CoHlW2gnBjkyvnDBvkuPsayx+HNhDDcs6Dcl7Q==",
"dev": true,
"license": "MIT",
"peerDependencies": {
- "@azure-tools/typespec-azure-resource-manager": "~0.48.0",
- "@typespec/compiler": "~0.62.0"
+ "@azure-tools/typespec-azure-resource-manager": "~0.49.0",
+ "@typespec/compiler": "~0.63.0"
}
},
"node_modules/@azure-tools/typespec-azure-resource-manager": {
- "version": "0.48.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.48.0.tgz",
- "integrity": "sha512-4JxPbKxd3EJ98sLbtfBlqyANWVrU6tT2nk3iLspg7MITPLhiMTeRT9BprsJXH18ks8qw8scR7/am5r57YERTmQ==",
+ "version": "0.49.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-resource-manager/-/typespec-azure-resource-manager-0.49.0.tgz",
+ "integrity": "sha512-1xWuG8OBJDykYM6BFD2owV9WH+oC32zt7XteXA0T4nH2T+D+sEFKppkCOMtIjX7ENBAlecmbdwgSNTZYQf4vaw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -732,28 +1007,28 @@
"node": ">=18.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-azure-core": "~0.48.0",
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0",
- "@typespec/openapi": "~0.62.0",
- "@typespec/rest": "~0.62.0",
- "@typespec/versioning": "~0.62.0"
+ "@azure-tools/typespec-azure-core": "~0.49.0",
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0",
+ "@typespec/openapi": "~0.63.0",
+ "@typespec/rest": "~0.63.0",
+ "@typespec/versioning": "~0.63.0"
}
},
"node_modules/@azure-tools/typespec-azure-rulesets": {
- "version": "0.48.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-rulesets/-/typespec-azure-rulesets-0.48.0.tgz",
- "integrity": "sha512-IkPxC8v9wVSl/eKU7N4NhqD3RPh+bIYpxDW5LBAhkuQVcE3RumAkWqh2pmkckihQRhgwiCXhcJVZAzBpVa5SUA==",
+ "version": "0.49.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-azure-rulesets/-/typespec-azure-rulesets-0.49.0.tgz",
+ "integrity": "sha512-qKynK3lp+eqlt6QPGFSptrt9uqJUfeuv6yVXYDuaX1Jqu7tbTAgGf0HtN8mqPzfu3eAb84bdq6VgNspxyXLDOg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-azure-core": "~0.48.0",
- "@azure-tools/typespec-azure-resource-manager": "~0.48.0",
- "@azure-tools/typespec-client-generator-core": "~0.48.0",
- "@typespec/compiler": "~0.62.0"
+ "@azure-tools/typespec-azure-core": "~0.49.0",
+ "@azure-tools/typespec-azure-resource-manager": "~0.49.0",
+ "@azure-tools/typespec-client-generator-core": "~0.49.0",
+ "@typespec/compiler": "~0.63.0"
}
},
"node_modules/@azure-tools/typespec-client-generator-cli": {
@@ -761,6 +1036,7 @@
"resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-cli/-/typespec-client-generator-cli-0.14.2.tgz",
"integrity": "sha512-tSwCQpBcnsqFdIpMbiookmMFzG/OYggTyG5UPeScPeqpLTA4bkGBbDoZ7reJh/V02J4AW0pul57khwTq9DNbRA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@autorest/core": "^3.10.2",
"@autorest/openapi-to-typespec": "0.10.4",
@@ -787,24 +1063,39 @@
}
},
"node_modules/@azure-tools/typespec-client-generator-core": {
- "version": "0.48.6",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.48.6.tgz",
- "integrity": "sha512-SVD4JCON52UIs4AogxQs8OrXjFdEf9EJPuK76Ze33VhtYdNNXPLJir2uV1wNJAnNtH2i3IMBkfrq2RjV1HHpdA==",
+ "version": "0.49.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.49.0.tgz",
+ "integrity": "sha512-inFLRIeTU0mQg4PT19O3YwT/4YODLuTgIsXuhKDdG/sEsx8PG8AEFTabtnZJ0w3Lc4xuxKFJrzZ2ZH2iiAAbig==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"change-case": "~5.4.4",
- "pluralize": "^8.0.0"
+ "pluralize": "^8.0.0",
+ "yaml": "~2.5.1"
},
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@azure-tools/typespec-azure-core": "~0.48.0",
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0",
- "@typespec/openapi": "~0.62.0",
- "@typespec/rest": "~0.62.0",
- "@typespec/versioning": "~0.62.0"
+ "@azure-tools/typespec-azure-core": "~0.49.0",
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0",
+ "@typespec/openapi": "~0.63.0",
+ "@typespec/rest": "~0.63.0",
+ "@typespec/versioning": "~0.63.0"
+ }
+ },
+ "node_modules/@azure-tools/typespec-client-generator-core/node_modules/yaml": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz",
+ "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "yaml": "bin.mjs"
+ },
+ "engines": {
+ "node": ">= 14"
}
},
"node_modules/@azure-tools/typespec-liftr-base": {
@@ -1000,10 +1291,10 @@
}
},
"node_modules/@azure/core-http": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.4.tgz",
- "integrity": "sha512-Fok9VVhMdxAFOtqiiAtg74fL0UJkt0z3D+ouUUxcRLzZNBioPRAMJFVxiWoJljYpXsRi4GDQHzQHDc9AiYaIUQ==",
- "deprecated": "This package is no longer supported. Please migrate to use @azure/core-rest-pipeline",
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.5.tgz",
+ "integrity": "sha512-T8r2q/c3DxNu6mEJfPuJtptUVqwchxzjj32gKcnMi06rdiVONS9rar7kT9T2Am+XvER7uOzpsP79WsqNbdgdWg==",
+ "deprecated": "This package is no longer supported. Please refer to https://github.com/Azure/azure-sdk-for-js/blob/490ce4dfc5b98ba290dee3b33a6d0876c5f138e2/sdk/core/README.md",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1023,7 +1314,7 @@
"xml2js": "^0.5.0"
},
"engines": {
- "node": ">=14.0.0"
+ "node": ">=18.0.0"
}
},
"node_modules/@azure/core-http/node_modules/@azure/abort-controller": {
@@ -1075,16 +1366,16 @@
}
},
"node_modules/@azure/core-rest-pipeline": {
- "version": "1.17.0",
- "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.17.0.tgz",
- "integrity": "sha512-62Vv8nC+uPId3j86XJ0WI+sBf0jlqTqPUFCBNrGtlaUeQUIXWV/D8GE5A1d+Qx8H7OQojn2WguC8kChD6v0shA==",
+ "version": "1.18.1",
+ "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.18.1.tgz",
+ "integrity": "sha512-/wS73UEDrxroUEVywEm7J0p2c+IIiVxyfigCGfsKvCxxCET4V/Hef2aURqltrXMRjNmdmt5IuOgIpl8f6xdO5A==",
"dev": true,
"license": "MIT",
"dependencies": {
"@azure/abort-controller": "^2.0.0",
"@azure/core-auth": "^1.8.0",
"@azure/core-tracing": "^1.0.1",
- "@azure/core-util": "^1.9.0",
+ "@azure/core-util": "^1.11.0",
"@azure/logger": "^1.0.0",
"http-proxy-agent": "^7.0.0",
"https-proxy-agent": "^7.0.0",
@@ -1361,13 +1652,13 @@
}
},
"node_modules/@babel/parser": {
- "version": "7.26.2",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz",
- "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==",
+ "version": "7.26.3",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz",
+ "integrity": "sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/types": "^7.26.0"
+ "@babel/types": "^7.26.3"
},
"bin": {
"parser": "bin/babel-parser.js"
@@ -1390,9 +1681,9 @@
}
},
"node_modules/@babel/types": {
- "version": "7.26.0",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz",
- "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==",
+ "version": "7.26.3",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz",
+ "integrity": "sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1867,13 +2158,13 @@
}
},
"node_modules/@eslint/config-array": {
- "version": "0.18.0",
- "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz",
- "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==",
+ "version": "0.19.1",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.1.tgz",
+ "integrity": "sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/object-schema": "^2.1.4",
+ "@eslint/object-schema": "^2.1.5",
"debug": "^4.3.1",
"minimatch": "^3.1.2"
},
@@ -1882,19 +2173,22 @@
}
},
"node_modules/@eslint/core": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
- "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz",
+ "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==",
"dev": true,
"license": "Apache-2.0",
+ "dependencies": {
+ "@types/json-schema": "^7.0.15"
+ },
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@eslint/eslintrc": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz",
- "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz",
+ "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1940,9 +2234,9 @@
"license": "MIT"
},
"node_modules/@eslint/js": {
- "version": "9.14.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.14.0.tgz",
- "integrity": "sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==",
+ "version": "9.16.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz",
+ "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1950,9 +2244,9 @@
}
},
"node_modules/@eslint/object-schema": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz",
- "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==",
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.5.tgz",
+ "integrity": "sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -1960,9 +2254,9 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.2.tgz",
- "integrity": "sha512-CXtq5nR4Su+2I47WPOlWud98Y5Lv8Kyxp2ukhgFx/eW6Blm18VXJO5WuQylPugRo8nbluoi6GvvxBLqHcvqUUw==",
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz",
+ "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -2170,9 +2464,9 @@
}
},
"node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
- "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz",
+ "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2494,9 +2788,9 @@
}
},
"node_modules/@rollup/rollup-android-arm-eabi": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.4.tgz",
- "integrity": "sha512-jfUJrFct/hTA0XDM5p/htWKoNNTbDLY0KRwEt6pyOA6k2fmk0WVwl65PdUdJZgzGEHWx+49LilkcSaumQRyNQw==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.1.tgz",
+ "integrity": "sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==",
"cpu": [
"arm"
],
@@ -2508,9 +2802,9 @@
]
},
"node_modules/@rollup/rollup-android-arm64": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.4.tgz",
- "integrity": "sha512-j4nrEO6nHU1nZUuCfRKoCcvh7PIywQPUCBa2UsootTHvTHIoIu2BzueInGJhhvQO/2FTRdNYpf63xsgEqH9IhA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.1.tgz",
+ "integrity": "sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==",
"cpu": [
"arm64"
],
@@ -2522,9 +2816,9 @@
]
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.4.tgz",
- "integrity": "sha512-GmU/QgGtBTeraKyldC7cDVVvAJEOr3dFLKneez/n7BvX57UdhOqDsVwzU7UOnYA7AAOt+Xb26lk79PldDHgMIQ==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.1.tgz",
+ "integrity": "sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==",
"cpu": [
"arm64"
],
@@ -2536,9 +2830,9 @@
]
},
"node_modules/@rollup/rollup-darwin-x64": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.4.tgz",
- "integrity": "sha512-N6oDBiZCBKlwYcsEPXGDE4g9RoxZLK6vT98M8111cW7VsVJFpNEqvJeIPfsCzbf0XEakPslh72X0gnlMi4Ddgg==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.1.tgz",
+ "integrity": "sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==",
"cpu": [
"x64"
],
@@ -2550,9 +2844,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-arm64": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.24.4.tgz",
- "integrity": "sha512-py5oNShCCjCyjWXCZNrRGRpjWsF0ic8f4ieBNra5buQz0O/U6mMXCpC1LvrHuhJsNPgRt36tSYMidGzZiJF6mw==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.1.tgz",
+ "integrity": "sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==",
"cpu": [
"arm64"
],
@@ -2564,9 +2858,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-x64": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.24.4.tgz",
- "integrity": "sha512-L7VVVW9FCnTTp4i7KrmHeDsDvjB4++KOBENYtNYAiYl96jeBThFfhP6HVxL74v4SiZEVDH/1ILscR5U9S4ms4g==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.1.tgz",
+ "integrity": "sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==",
"cpu": [
"x64"
],
@@ -2578,9 +2872,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.4.tgz",
- "integrity": "sha512-10ICosOwYChROdQoQo589N5idQIisxjaFE/PAnX2i0Zr84mY0k9zul1ArH0rnJ/fpgiqfu13TFZR5A5YJLOYZA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.1.tgz",
+ "integrity": "sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==",
"cpu": [
"arm"
],
@@ -2592,9 +2886,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.4.tgz",
- "integrity": "sha512-ySAfWs69LYC7QhRDZNKqNhz2UKN8LDfbKSMAEtoEI0jitwfAG2iZwVqGACJT+kfYvvz3/JgsLlcBP+WWoKCLcw==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.1.tgz",
+ "integrity": "sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==",
"cpu": [
"arm"
],
@@ -2606,9 +2900,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-gnu": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.4.tgz",
- "integrity": "sha512-uHYJ0HNOI6pGEeZ/5mgm5arNVTI0nLlmrbdph+pGXpC9tFHFDQmDMOEqkmUObRfosJqpU8RliYoGz06qSdtcjg==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.1.tgz",
+ "integrity": "sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==",
"cpu": [
"arm64"
],
@@ -2620,9 +2914,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-musl": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.4.tgz",
- "integrity": "sha512-38yiWLemQf7aLHDgTg85fh3hW9stJ0Muk7+s6tIkSUOMmi4Xbv5pH/5Bofnsb6spIwD5FJiR+jg71f0CH5OzoA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.1.tgz",
+ "integrity": "sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==",
"cpu": [
"arm64"
],
@@ -2633,10 +2927,24 @@
"linux"
]
},
+ "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.28.1.tgz",
+ "integrity": "sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
"node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.4.tgz",
- "integrity": "sha512-q73XUPnkwt9ZNF2xRS4fvneSuaHw2BXuV5rI4cw0fWYVIWIBeDZX7c7FWhFQPNTnE24172K30I+dViWRVD9TwA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.1.tgz",
+ "integrity": "sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==",
"cpu": [
"ppc64"
],
@@ -2648,9 +2956,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.4.tgz",
- "integrity": "sha512-Aie/TbmQi6UXokJqDZdmTJuZBCU3QBDA8oTKRGtd4ABi/nHgXICulfg1KI6n9/koDsiDbvHAiQO3YAUNa/7BCw==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.1.tgz",
+ "integrity": "sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==",
"cpu": [
"riscv64"
],
@@ -2662,9 +2970,9 @@
]
},
"node_modules/@rollup/rollup-linux-s390x-gnu": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.4.tgz",
- "integrity": "sha512-P8MPErVO/y8ohWSP9JY7lLQ8+YMHfTI4bAdtCi3pC2hTeqFJco2jYspzOzTUB8hwUWIIu1xwOrJE11nP+0JFAQ==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.1.tgz",
+ "integrity": "sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==",
"cpu": [
"s390x"
],
@@ -2676,9 +2984,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-gnu": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.4.tgz",
- "integrity": "sha512-K03TljaaoPK5FOyNMZAAEmhlyO49LaE4qCsr0lYHUKyb6QacTNF9pnfPpXnFlFD3TXuFbFbz7tJ51FujUXkXYA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.1.tgz",
+ "integrity": "sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==",
"cpu": [
"x64"
],
@@ -2690,9 +2998,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-musl": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.4.tgz",
- "integrity": "sha512-VJYl4xSl/wqG2D5xTYncVWW+26ICV4wubwN9Gs5NrqhJtayikwCXzPL8GDsLnaLU3WwhQ8W02IinYSFJfyo34Q==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.1.tgz",
+ "integrity": "sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==",
"cpu": [
"x64"
],
@@ -2704,9 +3012,9 @@
]
},
"node_modules/@rollup/rollup-win32-arm64-msvc": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.4.tgz",
- "integrity": "sha512-ku2GvtPwQfCqoPFIJCqZ8o7bJcj+Y54cZSr43hHca6jLwAiCbZdBUOrqE6y29QFajNAzzpIOwsckaTFmN6/8TA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.1.tgz",
+ "integrity": "sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==",
"cpu": [
"arm64"
],
@@ -2718,9 +3026,9 @@
]
},
"node_modules/@rollup/rollup-win32-ia32-msvc": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.4.tgz",
- "integrity": "sha512-V3nCe+eTt/W6UYNr/wGvO1fLpHUrnlirlypZfKCT1fG6hWfqhPgQV/K/mRBXBpxc0eKLIF18pIOFVPh0mqHjlg==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.1.tgz",
+ "integrity": "sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==",
"cpu": [
"ia32"
],
@@ -2732,9 +3040,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-msvc": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.4.tgz",
- "integrity": "sha512-LTw1Dfd0mBIEqUVCxbvTE/LLo+9ZxVC9k99v1v4ahg9Aak6FpqOfNu5kRkeTAn0wphoC4JU7No1/rL+bBCEwhg==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.1.tgz",
+ "integrity": "sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==",
"cpu": [
"x64"
],
@@ -3076,9 +3384,9 @@
"license": "MIT"
},
"node_modules/@types/node-fetch": {
- "version": "2.6.11",
- "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.11.tgz",
- "integrity": "sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==",
+ "version": "2.6.12",
+ "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz",
+ "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3135,17 +3443,17 @@
"license": "MIT"
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.13.0.tgz",
- "integrity": "sha512-nQtBLiZYMUPkclSeC3id+x4uVd1SGtHuElTxL++SfP47jR0zfkZBJHc+gL4qPsgTuypz0k8Y2GheaDYn6Gy3rg==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.0.tgz",
+ "integrity": "sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.13.0",
- "@typescript-eslint/type-utils": "8.13.0",
- "@typescript-eslint/utils": "8.13.0",
- "@typescript-eslint/visitor-keys": "8.13.0",
+ "@typescript-eslint/scope-manager": "8.18.0",
+ "@typescript-eslint/type-utils": "8.18.0",
+ "@typescript-eslint/utils": "8.18.0",
+ "@typescript-eslint/visitor-keys": "8.18.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -3160,25 +3468,21 @@
},
"peerDependencies": {
"@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0",
- "eslint": "^8.57.0 || ^9.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "eslint": "^8.57.0 || ^9.0.0",
+ "typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.13.0.tgz",
- "integrity": "sha512-w0xp+xGg8u/nONcGw1UXAr6cjCPU1w0XVyBs6Zqaj5eLmxkKQAByTdV/uGgNN5tVvN/kKpoQlP2cL7R+ajZZIQ==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.0.tgz",
+ "integrity": "sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==",
"dev": true,
- "license": "BSD-2-Clause",
+ "license": "MITClause",
"dependencies": {
- "@typescript-eslint/scope-manager": "8.13.0",
- "@typescript-eslint/types": "8.13.0",
- "@typescript-eslint/typescript-estree": "8.13.0",
- "@typescript-eslint/visitor-keys": "8.13.0",
+ "@typescript-eslint/scope-manager": "8.18.0",
+ "@typescript-eslint/types": "8.18.0",
+ "@typescript-eslint/typescript-estree": "8.18.0",
+ "@typescript-eslint/visitor-keys": "8.18.0",
"debug": "^4.3.4"
},
"engines": {
@@ -3189,23 +3493,19 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "eslint": "^8.57.0 || ^9.0.0",
+ "typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.13.0.tgz",
- "integrity": "sha512-XsGWww0odcUT0gJoBZ1DeulY1+jkaHUciUq4jKNv4cpInbvvrtDoyBH9rE/n2V29wQJPk8iCH1wipra9BhmiMA==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.0.tgz",
+ "integrity": "sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.13.0",
- "@typescript-eslint/visitor-keys": "8.13.0"
+ "@typescript-eslint/types": "8.18.0",
+ "@typescript-eslint/visitor-keys": "8.18.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3216,14 +3516,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.13.0.tgz",
- "integrity": "sha512-Rqnn6xXTR316fP4D2pohZenJnp+NwQ1mo7/JM+J1LWZENSLkJI8ID8QNtlvFeb0HnFSK94D6q0cnMX6SbE5/vA==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.0.tgz",
+ "integrity": "sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/typescript-estree": "8.13.0",
- "@typescript-eslint/utils": "8.13.0",
+ "@typescript-eslint/typescript-estree": "8.18.0",
+ "@typescript-eslint/utils": "8.18.0",
"debug": "^4.3.4",
"ts-api-utils": "^1.3.0"
},
@@ -3234,16 +3534,15 @@
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0",
+ "typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.13.0.tgz",
- "integrity": "sha512-4cyFErJetFLckcThRUFdReWJjVsPCqyBlJTi6IDEpc1GWCIIZRFxVppjWLIMcQhNGhdWJJRYFHpHoDWvMlDzng==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.0.tgz",
+ "integrity": "sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3255,14 +3554,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.13.0.tgz",
- "integrity": "sha512-v7SCIGmVsRK2Cy/LTLGN22uea6SaUIlpBcO/gnMGT/7zPtxp90bphcGf4fyrCQl3ZtiBKqVTG32hb668oIYy1g==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.0.tgz",
+ "integrity": "sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==",
"dev": true,
- "license": "BSD-2-Clause",
+ "license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.13.0",
- "@typescript-eslint/visitor-keys": "8.13.0",
+ "@typescript-eslint/types": "8.18.0",
+ "@typescript-eslint/visitor-keys": "8.18.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -3277,10 +3576,8 @@
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "peerDependencies": {
+ "typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
@@ -3310,16 +3607,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.13.0.tgz",
- "integrity": "sha512-A1EeYOND6Uv250nybnLZapeXpYMl8tkzYUxqmoKAWnI4sei3ihf2XdZVd+vVOmHGcp3t+P7yRrNsyyiXTvShFQ==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.0.tgz",
+ "integrity": "sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "8.13.0",
- "@typescript-eslint/types": "8.13.0",
- "@typescript-eslint/typescript-estree": "8.13.0"
+ "@typescript-eslint/scope-manager": "8.18.0",
+ "@typescript-eslint/types": "8.18.0",
+ "@typescript-eslint/typescript-estree": "8.18.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3329,18 +3626,19 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^8.57.0 || ^9.0.0"
+ "eslint": "^8.57.0 || ^9.0.0",
+ "typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.13.0.tgz",
- "integrity": "sha512-7N/+lztJqH4Mrf0lb10R/CbI1EaAMMGyF5y0oJvFoAhafwgiRA7TXyd8TFn8FC8k5y2dTsYogg238qavRGNnlw==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.0.tgz",
+ "integrity": "sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.13.0",
- "eslint-visitor-keys": "^3.4.3"
+ "@typescript-eslint/types": "8.18.0",
+ "eslint-visitor-keys": "^4.2.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3350,23 +3648,10 @@
"url": "https://opencollective.com/typescript-eslint"
}
},
- "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
"node_modules/@typespec/compiler": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.62.0.tgz",
- "integrity": "sha512-RfKJ/rF2Wjxu7dl74oJE8yEfSkeL7NopFlyJ4dW1JQXpRN2IOJYPxas12qZA6H9ZEIB8rBjyrHNxJSQbvn/UDQ==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/compiler/-/compiler-0.63.0.tgz",
+ "integrity": "sha512-cC3YniwbFghn1fASX3r1IgNjMrwaY4gmzznkHT4f/NxE+HK4XoXWn4EG7287QgVMCaHUykzJCIfW9k7kIleW5A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3375,7 +3660,7 @@
"change-case": "~5.4.4",
"globby": "~14.0.2",
"mustache": "~4.2.0",
- "picocolors": "~1.1.0",
+ "picocolors": "~1.1.1",
"prettier": "~3.3.3",
"prompts": "~2.4.2",
"semver": "^7.6.3",
@@ -3407,17 +3692,17 @@
}
},
"node_modules/@typespec/http": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.62.0.tgz",
- "integrity": "sha512-6H9y9e32lb2s76MMy29ITCwSZNG42sa/qWthiByUvfbTEXMpu5a1fQHNj7RXg+xmDKmVIHv3gAfjGPAWfXhkaQ==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/http/-/http-0.63.0.tgz",
+ "integrity": "sha512-SYVbBmLPAPdWZfdMs0QlbpTnFREDnkINu2FR+0kRX12qzbRgpRbLsdhg59qx4TfKoh4IAPgSV+Fq84w7BWGsyQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0",
- "@typespec/streams": "~0.62.0"
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/streams": "~0.63.0"
},
"peerDependenciesMeta": {
"@typespec/streams": {
@@ -3426,27 +3711,28 @@
}
},
"node_modules/@typespec/openapi": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.62.0.tgz",
- "integrity": "sha512-Xtm0Nd2BuSmEfSWGtc10ok22jyomYm9L2jY+kVTy+v5J89DrVh0o6+YpipUl1QhcItM1YMBphWHIHPfwkDRbnw==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/openapi/-/openapi-0.63.0.tgz",
+ "integrity": "sha512-/KzR60mj3P/LnNWd/QfH0KTN/If4+mjrsWNSB7/uab6c8Qu/lNsGlZDkmWq4EFiwBR7VmpdFz9FP7d/m3O+tGw==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0"
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0"
}
},
"node_modules/@typespec/openapi3": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/openapi3/-/openapi3-0.62.0.tgz",
- "integrity": "sha512-tfmaPvZ38fM+O5+ZBq4ic7fc32E3v0JOFP9h+7otQyrVprLVCToXpBwaxB7c2nTSJbI4vcxK7/T3Z8BD5j8X+w==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/openapi3/-/openapi3-0.63.0.tgz",
+ "integrity": "sha512-HC8VeakPznXNn7euAyAxUFNsOcfSzM8tQwYPNUMWs0qGJqGgb6vjf5rShQmfgrCe5Y6zcMM2PPBuxaFV3xXYLw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@readme/openapi-parser": "~2.6.0",
+ "openapi-types": "~12.1.3",
"yaml": "~2.5.1"
},
"bin": {
@@ -3456,10 +3742,10 @@
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0",
- "@typespec/openapi": "~0.62.0",
- "@typespec/versioning": "~0.62.0"
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0",
+ "@typespec/openapi": "~0.63.0",
+ "@typespec/versioning": "~0.63.0"
},
"peerDependenciesMeta": {
"@typespec/xml": {
@@ -3481,9 +3767,9 @@
}
},
"node_modules/@typespec/prettier-plugin-typespec": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/prettier-plugin-typespec/-/prettier-plugin-typespec-0.62.0.tgz",
- "integrity": "sha512-VJRtX4RcUYE0qiQpKL8K7Mgfozy/icieaoap44XR+2OmWegZmuR1Qjq5iWtjLBS7MFwSXHel+BT/LBlqu1v+dA==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/prettier-plugin-typespec/-/prettier-plugin-typespec-0.63.0.tgz",
+ "integrity": "sha512-ZVnTk1B/8EzqDjHbhkicP8lH5Zj+R7Ft0wv4N34Au3SzxNFCNMzMKuA+ie3GsbQYrYi3T7gBiotW+Xt0lPKSOA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3491,54 +3777,54 @@
}
},
"node_modules/@typespec/rest": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.62.0.tgz",
- "integrity": "sha512-ci5UjelEKFwsPTdpgysoUoDCcw02EnbG4GBuYJdR5mRrFCBZMxrbro+OJLgSN3g/TORSsWlW7dEOWLfbyrmlZQ==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.63.0.tgz",
+ "integrity": "sha512-HftzMjSDHAYX+ILE9C6pFS4oAq7oBHMCtpA8QgSFPDF4V5a8l1k2K8c4x1B+7yl+GkREmIdtpc6S0xZm2G7hXg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0",
- "@typespec/http": "~0.62.0"
+ "@typespec/compiler": "~0.63.0",
+ "@typespec/http": "~0.63.0"
}
},
"node_modules/@typespec/streams": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/streams/-/streams-0.62.0.tgz",
- "integrity": "sha512-JmIJOOlR6NlYLhTVxw0vo3rQPfezzheXluCO00qO89TsdJFUyEz/Y2y5p9/JQbS0zLqtPpvNgPIksNH1Q6psSw==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/streams/-/streams-0.63.0.tgz",
+ "integrity": "sha512-4vEd5jdpdaY2i9CDHwSRuiUNCJr+M/gUCwNsaGWgsJdrfR/lx8WX3Y27KcRDNVcRQF7nsOR4i28r4siWqrTM4w==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0"
+ "@typespec/compiler": "~0.63.0"
}
},
"node_modules/@typespec/versioning": {
- "version": "0.62.0",
- "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.62.0.tgz",
- "integrity": "sha512-M5KTCVH5fBniZU8eQlw+NV13vAmPr58HyBLDIyxeOuV+SHNlx+f+qanUEDIPaJheKlaSSNTEZKsDhs83/iIMMA==",
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/@typespec/versioning/-/versioning-0.63.0.tgz",
+ "integrity": "sha512-BPvmPL+g20yEmSA8XRfbIHdToNOjssq4QfwOU6D7kKLLXnZHFb1hmuwW0tf0Wa/lYgoaUC60ONAeoXgNT1ZOIQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=18.0.0"
},
"peerDependencies": {
- "@typespec/compiler": "~0.62.0"
+ "@typespec/compiler": "~0.63.0"
}
},
"node_modules/@vitest/expect": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.4.tgz",
- "integrity": "sha512-DOETT0Oh1avie/D/o2sgMHGrzYUFFo3zqESB2Hn70z6QB1HrS2IQ9z5DfyTqU8sg4Bpu13zZe9V4+UTNQlUeQA==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.8.tgz",
+ "integrity": "sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vitest/spy": "2.1.4",
- "@vitest/utils": "2.1.4",
+ "@vitest/spy": "2.1.8",
+ "@vitest/utils": "2.1.8",
"chai": "^5.1.2",
"tinyrainbow": "^1.2.0"
},
@@ -3547,9 +3833,9 @@
}
},
"node_modules/@vitest/pretty-format": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.4.tgz",
- "integrity": "sha512-L95zIAkEuTDbUX1IsjRl+vyBSLh3PwLLgKpghl37aCK9Jvw0iP+wKwIFhfjdUtA2myLgjrG6VU6JCFLv8q/3Ww==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.8.tgz",
+ "integrity": "sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3560,13 +3846,13 @@
}
},
"node_modules/@vitest/runner": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.4.tgz",
- "integrity": "sha512-sKRautINI9XICAMl2bjxQM8VfCMTB0EbsBc/EDFA57V6UQevEKY/TOPOF5nzcvCALltiLfXWbq4MaAwWx/YxIA==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.8.tgz",
+ "integrity": "sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vitest/utils": "2.1.4",
+ "@vitest/utils": "2.1.8",
"pathe": "^1.1.2"
},
"funding": {
@@ -3574,13 +3860,13 @@
}
},
"node_modules/@vitest/snapshot": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.4.tgz",
- "integrity": "sha512-3Kab14fn/5QZRog5BPj6Rs8dc4B+mim27XaKWFWHWA87R56AKjHTGcBFKpvZKDzC4u5Wd0w/qKsUIio3KzWW4Q==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.8.tgz",
+ "integrity": "sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vitest/pretty-format": "2.1.4",
+ "@vitest/pretty-format": "2.1.8",
"magic-string": "^0.30.12",
"pathe": "^1.1.2"
},
@@ -3589,9 +3875,9 @@
}
},
"node_modules/@vitest/spy": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.4.tgz",
- "integrity": "sha512-4JOxa+UAizJgpZfaCPKK2smq9d8mmjZVPMt2kOsg/R8QkoRzydHH1qHxIYNvr1zlEaFj4SXiaaJWxq/LPLKaLg==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.8.tgz",
+ "integrity": "sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3602,13 +3888,13 @@
}
},
"node_modules/@vitest/utils": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.4.tgz",
- "integrity": "sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.8.tgz",
+ "integrity": "sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vitest/pretty-format": "2.1.4",
+ "@vitest/pretty-format": "2.1.8",
"loupe": "^3.1.2",
"tinyrainbow": "^1.2.0"
},
@@ -3666,14 +3952,11 @@
}
},
"node_modules/agent-base": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
- "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz",
+ "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "debug": "^4.3.4"
- },
"engines": {
"node": ">= 14"
}
@@ -3971,31 +4254,6 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
- "node_modules/buffer": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
- "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.2.1"
- }
- },
"node_modules/builtin-modules": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz",
@@ -4047,9 +4305,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001678",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001678.tgz",
- "integrity": "sha512-RR+4U/05gNtps58PEBDZcPWTgEO2MBeoPZ96aQcjmfkBWRIDfN451fW2qyDA9/+HohLLIL5GqiMwA+IB1pWarw==",
+ "version": "1.0.30001687",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001687.tgz",
+ "integrity": "sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==",
"dev": true,
"funding": [
{
@@ -4116,6 +4374,7 @@
"resolved": "https://registry.npmjs.org/change-case-all/-/change-case-all-2.1.0.tgz",
"integrity": "sha512-v6b0WWWkZUMHVuYk82l+WROgkUm4qEN2w5hKRNWtEOYwWqUGoi8C6xH0l1RLF1EoWqDFK6MFclmN3od6ws3/uw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"change-case": "^5.2.0",
"sponge-case": "^2.0.2",
@@ -4151,9 +4410,9 @@
}
},
"node_modules/ci-info": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.0.0.tgz",
- "integrity": "sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.1.0.tgz",
+ "integrity": "sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==",
"dev": true,
"funding": [
{
@@ -4394,9 +4653,9 @@
"license": "MIT"
},
"node_modules/cross-spawn": {
- "version": "7.0.5",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz",
- "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==",
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4449,9 +4708,9 @@
}
},
"node_modules/debug": {
- "version": "4.3.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
- "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
+ "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4555,9 +4814,9 @@
}
},
"node_modules/dotenv": {
- "version": "16.4.5",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz",
- "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==",
+ "version": "16.4.7",
+ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz",
+ "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==",
"dev": true,
"license": "BSD-2-Clause",
"engines": {
@@ -4586,9 +4845,9 @@
}
},
"node_modules/electron-to-chromium": {
- "version": "1.5.55",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.55.tgz",
- "integrity": "sha512-6maZ2ASDOTBtjt9FhqYPRnbvKU5tjG0IN9SztUOWYw2AzNDNpKJYLJmlK0/En4Hs/aiWnB+JZ+gW19PIGszgKg==",
+ "version": "1.5.72",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.72.tgz",
+ "integrity": "sha512-ZpSAUOZ2Izby7qnZluSrAlGgGQzucmFbN0n64dYzocYxnxV5ufurpj3VgEe4cUp7ir9LmeLxNYo8bVnlM8bQHw==",
"dev": true,
"license": "ISC"
},
@@ -4630,6 +4889,13 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/es-module-lexer": {
+ "version": "1.5.4",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz",
+ "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/esbuild": {
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
@@ -4690,27 +4956,27 @@
}
},
"node_modules/eslint": {
- "version": "9.14.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.14.0.tgz",
- "integrity": "sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==",
+ "version": "9.16.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz",
+ "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.12.1",
- "@eslint/config-array": "^0.18.0",
- "@eslint/core": "^0.7.0",
- "@eslint/eslintrc": "^3.1.0",
- "@eslint/js": "9.14.0",
- "@eslint/plugin-kit": "^0.2.0",
+ "@eslint/config-array": "^0.19.0",
+ "@eslint/core": "^0.9.0",
+ "@eslint/eslintrc": "^3.2.0",
+ "@eslint/js": "9.16.0",
+ "@eslint/plugin-kit": "^0.2.3",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
- "@humanwhocodes/retry": "^0.4.0",
+ "@humanwhocodes/retry": "^0.4.1",
"@types/estree": "^1.0.6",
"@types/json-schema": "^7.0.15",
"ajv": "^6.12.4",
"chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
+ "cross-spawn": "^7.0.5",
"debug": "^4.3.2",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^8.2.0",
@@ -4729,8 +4995,7 @@
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
- "optionator": "^0.9.3",
- "text-table": "^0.2.0"
+ "optionator": "^0.9.3"
},
"bin": {
"eslint": "bin/eslint.js"
@@ -4751,9 +5016,9 @@
}
},
"node_modules/eslint-plugin-unicorn": {
- "version": "56.0.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-56.0.0.tgz",
- "integrity": "sha512-aXpddVz/PQMmd69uxO98PA4iidiVNvA0xOtbpUoz1WhBd4RxOQQYqN618v68drY0hmy5uU2jy1bheKEVWBjlPw==",
+ "version": "56.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-56.0.1.tgz",
+ "integrity": "sha512-FwVV0Uwf8XPfVnKSGpMg7NtlZh0G0gBarCaFcMUOoqPxXryxdYxTRRv4kH6B9TFCVIrjRXG+emcxIk2ayZilog==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4785,9 +5050,9 @@
}
},
"node_modules/eslint-plugin-unicorn/node_modules/globals": {
- "version": "15.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz",
- "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==",
+ "version": "15.13.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz",
+ "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==",
"dev": true,
"license": "MIT",
"engines": {
@@ -5080,20 +5345,10 @@
"node": ">=6"
}
},
- "node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.x"
- }
- },
"node_modules/execa": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/execa/-/execa-9.5.1.tgz",
- "integrity": "sha512-QY5PPtSonnGwhhHDNI7+3RvY285c7iuJFFB+lU+oEzMY/gEGJ808owqJsrr8Otd1E/x07po1LkUBmdAc5duPAg==",
+ "version": "9.5.2",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-9.5.2.tgz",
+ "integrity": "sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -5157,9 +5412,9 @@
}
},
"node_modules/execa/node_modules/pretty-ms": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.1.0.tgz",
- "integrity": "sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==",
+ "version": "9.2.0",
+ "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.2.0.tgz",
+ "integrity": "sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -5376,9 +5631,9 @@
}
},
"node_modules/flat-cache/node_modules/flatted": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
- "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==",
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz",
+ "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==",
"dev": true,
"license": "ISC"
},
@@ -5873,13 +6128,13 @@
}
},
"node_modules/https-proxy-agent": {
- "version": "7.0.5",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz",
- "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==",
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
+ "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "agent-base": "^7.0.2",
+ "agent-base": "^7.1.2",
"debug": "4"
},
"engines": {
@@ -5916,27 +6171,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "BSD-3-Clause"
- },
"node_modules/ignore": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
@@ -6352,9 +6586,9 @@
}
},
"node_modules/jsesc": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz",
- "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
+ "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
"dev": true,
"license": "MIT",
"bin": {
@@ -6454,15 +6688,15 @@
}
},
"node_modules/jsonpath-plus": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.1.0.tgz",
- "integrity": "sha512-gHfV1IYqH8uJHYVTs8BJX1XKy2/rR93+f8QQi0xhx95aCiXn1ettYAd5T+7FU6wfqyDoX/wy0pm/fL3jOKJ9Lg==",
+ "version": "10.2.0",
+ "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.2.0.tgz",
+ "integrity": "sha512-T9V+8iNYKFL2n2rF+w02LBOT2JjDnTjioaNFrxRy0Bv1y/hNsqR/EBK7Ojy2ythRHwmz2cRIls+9JitQGZC/sw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@jsep-plugin/assignment": "^1.2.1",
- "@jsep-plugin/regex": "^1.0.3",
- "jsep": "^1.3.9"
+ "@jsep-plugin/assignment": "^1.3.0",
+ "@jsep-plugin/regex": "^1.0.4",
+ "jsep": "^1.4.0"
},
"bin": {
"jsonpath": "bin/jsonpath-cli.js",
@@ -6631,9 +6865,9 @@
"license": "MIT"
},
"node_modules/logform": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.1.tgz",
- "integrity": "sha512-CdaO738xRapbKIMVn2m4F6KTj4j7ooJ8POVnebSgKo3KBz5axNXRAL7ZdRjIV6NOr2Uf4vjtRkxrFETOioCqSA==",
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz",
+ "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6679,9 +6913,9 @@
}
},
"node_modules/magic-string": {
- "version": "0.30.12",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.12.tgz",
- "integrity": "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==",
+ "version": "0.30.15",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz",
+ "integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6901,9 +7135,9 @@
}
},
"node_modules/nanoid": {
- "version": "3.3.7",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
- "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
+ "version": "3.3.8",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
+ "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
"dev": true,
"funding": [
{
@@ -7106,9 +7340,9 @@
}
},
"node_modules/node-releases": {
- "version": "2.0.18",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
- "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
+ "version": "2.0.19",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz",
+ "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==",
"dev": true,
"license": "MIT"
},
@@ -7432,8 +7666,7 @@
"resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-12.1.3.tgz",
"integrity": "sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==",
"dev": true,
- "license": "MIT",
- "peer": true
+ "license": "MIT"
},
"node_modules/optionator": {
"version": "0.9.4",
@@ -7677,9 +7910,9 @@
}
},
"node_modules/postcss": {
- "version": "8.4.47",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz",
- "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==",
+ "version": "8.4.49",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz",
+ "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==",
"dev": true,
"funding": [
{
@@ -7698,7 +7931,7 @@
"license": "MIT",
"dependencies": {
"nanoid": "^3.3.7",
- "picocolors": "^1.1.0",
+ "picocolors": "^1.1.1",
"source-map-js": "^1.2.1"
},
"engines": {
@@ -8034,6 +8267,7 @@
"resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-2.0.1.tgz",
"integrity": "sha512-rjaeGbsmhNDcDInmwi4MuI6mRwJu6zq8GjYCLuSuE7GF+4UjgzkL69sVKKJ2T2xH61kK7rXvGYpvaTu909oXaQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"graceful-fs": "^4.1.2",
"retry": "^0.10.0"
@@ -8047,18 +8281,22 @@
"resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz",
"integrity": "sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": "*"
}
},
"node_modules/psl": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.10.0.tgz",
- "integrity": "sha512-KSKHEbjAnpUuAUserOq0FxGXCUrzC3WniuSJhvdbs102rL55266ZcHBqLWOsG30spQMlPdpy7icATiAQehg/iA==",
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz",
+ "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==",
"dev": true,
"license": "MIT",
"dependencies": {
"punycode": "^2.3.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/lupomontero"
}
},
"node_modules/punycode": {
@@ -8298,9 +8536,9 @@
}
},
"node_modules/rollup": {
- "version": "4.24.4",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.4.tgz",
- "integrity": "sha512-vGorVWIsWfX3xbcyAS+I047kFKapHYivmkaT63Smj77XwvLSJos6M1xGqZnBPFQFBRZDOcG1QnYEIxAvTr/HjA==",
+ "version": "4.28.1",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.1.tgz",
+ "integrity": "sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -8314,24 +8552,25 @@
"npm": ">=8.0.0"
},
"optionalDependencies": {
- "@rollup/rollup-android-arm-eabi": "4.24.4",
- "@rollup/rollup-android-arm64": "4.24.4",
- "@rollup/rollup-darwin-arm64": "4.24.4",
- "@rollup/rollup-darwin-x64": "4.24.4",
- "@rollup/rollup-freebsd-arm64": "4.24.4",
- "@rollup/rollup-freebsd-x64": "4.24.4",
- "@rollup/rollup-linux-arm-gnueabihf": "4.24.4",
- "@rollup/rollup-linux-arm-musleabihf": "4.24.4",
- "@rollup/rollup-linux-arm64-gnu": "4.24.4",
- "@rollup/rollup-linux-arm64-musl": "4.24.4",
- "@rollup/rollup-linux-powerpc64le-gnu": "4.24.4",
- "@rollup/rollup-linux-riscv64-gnu": "4.24.4",
- "@rollup/rollup-linux-s390x-gnu": "4.24.4",
- "@rollup/rollup-linux-x64-gnu": "4.24.4",
- "@rollup/rollup-linux-x64-musl": "4.24.4",
- "@rollup/rollup-win32-arm64-msvc": "4.24.4",
- "@rollup/rollup-win32-ia32-msvc": "4.24.4",
- "@rollup/rollup-win32-x64-msvc": "4.24.4",
+ "@rollup/rollup-android-arm-eabi": "4.28.1",
+ "@rollup/rollup-android-arm64": "4.28.1",
+ "@rollup/rollup-darwin-arm64": "4.28.1",
+ "@rollup/rollup-darwin-x64": "4.28.1",
+ "@rollup/rollup-freebsd-arm64": "4.28.1",
+ "@rollup/rollup-freebsd-x64": "4.28.1",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.28.1",
+ "@rollup/rollup-linux-arm-musleabihf": "4.28.1",
+ "@rollup/rollup-linux-arm64-gnu": "4.28.1",
+ "@rollup/rollup-linux-arm64-musl": "4.28.1",
+ "@rollup/rollup-linux-loongarch64-gnu": "4.28.1",
+ "@rollup/rollup-linux-powerpc64le-gnu": "4.28.1",
+ "@rollup/rollup-linux-riscv64-gnu": "4.28.1",
+ "@rollup/rollup-linux-s390x-gnu": "4.28.1",
+ "@rollup/rollup-linux-x64-gnu": "4.28.1",
+ "@rollup/rollup-linux-x64-musl": "4.28.1",
+ "@rollup/rollup-win32-arm64-msvc": "4.28.1",
+ "@rollup/rollup-win32-ia32-msvc": "4.28.1",
+ "@rollup/rollup-win32-x64-msvc": "4.28.1",
"fsevents": "~2.3.2"
}
},
@@ -8603,7 +8842,8 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/sponge-case/-/sponge-case-2.0.3.tgz",
"integrity": "sha512-i4h9ZGRfxV6Xw3mpZSFOfbXjf0cQcYmssGWutgNIfFZ2VM+YIWfD71N/kjjwK6X/AAHzBr+rciEcn/L34S8TGw==",
- "dev": true
+ "dev": true,
+ "license": "MIT"
},
"node_modules/sprintf-js": {
"version": "1.0.3",
@@ -8655,9 +8895,9 @@
"license": "MIT"
},
"node_modules/std-env": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz",
- "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==",
+ "version": "3.8.0",
+ "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz",
+ "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==",
"dev": true,
"license": "MIT"
},
@@ -8874,7 +9114,8 @@
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/swap-case/-/swap-case-3.0.3.tgz",
"integrity": "sha512-6p4op8wE9CQv7uDFzulI6YXUw4lD9n4oQierdbFThEKVWVQcbQcUjdP27W8XE7V4QnWmnq9jueSHceyyQnqQVA==",
- "dev": true
+ "dev": true,
+ "license": "MIT"
},
"node_modules/teleport-javascript": {
"version": "1.0.0",
@@ -8969,13 +9210,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/tinybench": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz",
@@ -8991,9 +9225,9 @@
"license": "MIT"
},
"node_modules/tinypool": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.1.tgz",
- "integrity": "sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==",
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz",
+ "integrity": "sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -9025,6 +9259,7 @@
"resolved": "https://registry.npmjs.org/title-case/-/title-case-3.0.3.tgz",
"integrity": "sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"tslib": "^2.0.3"
}
@@ -9067,9 +9302,9 @@
}
},
"node_modules/ts-api-utils": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.0.tgz",
- "integrity": "sha512-032cPxaEKwM+GT3vA5JXNzIaizx388rhsSW79vGRNGXfRRAdEAn2mvk36PvK5HnOchyWZ7afLEXqYCvPCrzuzQ==",
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz",
+ "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -9141,15 +9376,15 @@
}
},
"node_modules/typescript-eslint": {
- "version": "8.13.0",
- "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.13.0.tgz",
- "integrity": "sha512-vIMpDRJrQd70au2G8w34mPps0ezFSPMEX4pXkTzUkrNbRX+36ais2ksGWN0esZL+ZMaFJEneOBHzCgSqle7DHw==",
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.18.0.tgz",
+ "integrity": "sha512-Xq2rRjn6tzVpAyHr3+nmSg1/9k9aIHnJ2iZeOH7cfGOWqTkXTm3kwpQglEuLGdNrYvPF+2gtAs+/KF5rjVo+WQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/eslint-plugin": "8.13.0",
- "@typescript-eslint/parser": "8.13.0",
- "@typescript-eslint/utils": "8.13.0"
+ "@typescript-eslint/eslint-plugin": "8.18.0",
+ "@typescript-eslint/parser": "8.18.0",
+ "@typescript-eslint/utils": "8.18.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -9158,10 +9393,9 @@
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0",
+ "typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/uglify-js": {
@@ -9341,14 +9575,15 @@
}
},
"node_modules/vite-node": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.4.tgz",
- "integrity": "sha512-kqa9v+oi4HwkG6g8ufRnb5AeplcRw8jUF6/7/Qz1qRQOXHImG8YnLbB+LLszENwFnoBl9xIf9nVdCFzNd7GQEg==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.8.tgz",
+ "integrity": "sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg==",
"dev": true,
"license": "MIT",
"dependencies": {
"cac": "^6.7.14",
"debug": "^4.3.7",
+ "es-module-lexer": "^1.5.4",
"pathe": "^1.1.2",
"vite": "^5.0.0"
},
@@ -9363,30 +9598,30 @@
}
},
"node_modules/vite-node/node_modules/@types/node": {
- "version": "22.9.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.0.tgz",
- "integrity": "sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==",
+ "version": "22.10.2",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz",
+ "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true,
"dependencies": {
- "undici-types": "~6.19.8"
+ "undici-types": "~6.20.0"
}
},
"node_modules/vite-node/node_modules/undici-types": {
- "version": "6.19.8",
- "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
- "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==",
+ "version": "6.20.0",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
+ "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==",
"dev": true,
"license": "MIT",
"optional": true,
"peer": true
},
"node_modules/vite-node/node_modules/vite": {
- "version": "5.4.10",
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.10.tgz",
- "integrity": "sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==",
+ "version": "5.4.11",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz",
+ "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -9448,6 +9683,7 @@
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.6.2.tgz",
"integrity": "sha512-T24Jb5V48e4VgYliUXMnZ379ItbrXgOimweKaJshD84z+8q7ZOZjJan0MeDe+Ugb+uqERDVV8SBmemaGMSMugA==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=4.0.0 || >=6.0.0"
}
@@ -9569,9 +9805,9 @@
}
},
"node_modules/winston": {
- "version": "3.16.0",
- "resolved": "https://registry.npmjs.org/winston/-/winston-3.16.0.tgz",
- "integrity": "sha512-xz7+cyGN5M+4CmmD4Npq1/4T+UZaz7HaeTlAruFUTjk79CNMq+P6H30vlE4z0qfqJ01VHYQwd7OZo03nYm/+lg==",
+ "version": "3.17.0",
+ "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz",
+ "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -9579,50 +9815,33 @@
"@dabh/diagnostics": "^2.0.2",
"async": "^3.2.3",
"is-stream": "^2.0.0",
- "logform": "^2.6.0",
+ "logform": "^2.7.0",
"one-time": "^1.0.0",
"readable-stream": "^3.4.0",
"safe-stable-stringify": "^2.3.1",
"stack-trace": "0.0.x",
"triple-beam": "^1.3.0",
- "winston-transport": "^4.7.0"
+ "winston-transport": "^4.9.0"
},
"engines": {
"node": ">= 12.0.0"
}
},
"node_modules/winston-transport": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.8.0.tgz",
- "integrity": "sha512-qxSTKswC6llEMZKgCQdaWgDuMJQnhuvF5f2Nk3SNXc4byfQ+voo2mX1Px9dkNOuR8p0KAjfPG29PuYUSIb+vSA==",
+ "version": "4.9.0",
+ "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz",
+ "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "logform": "^2.6.1",
- "readable-stream": "^4.5.2",
+ "logform": "^2.7.0",
+ "readable-stream": "^3.6.2",
"triple-beam": "^1.3.0"
},
"engines": {
"node": ">= 12.0.0"
}
},
- "node_modules/winston-transport/node_modules/readable-stream": {
- "version": "4.5.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
- "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "abort-controller": "^3.0.0",
- "buffer": "^6.0.3",
- "events": "^3.3.0",
- "process": "^0.11.10",
- "string_decoder": "^1.3.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- }
- },
"node_modules/winston/node_modules/@colors/colors": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz",
@@ -9792,9 +10011,9 @@
"license": "ISC"
},
"node_modules/yaml": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz",
- "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==",
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.1.tgz",
+ "integrity": "sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==",
"dev": true,
"license": "ISC",
"bin": {
@@ -9902,9 +10121,9 @@
}
},
"node_modules/zod": {
- "version": "3.23.8",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz",
- "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==",
+ "version": "3.24.1",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz",
+ "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==",
"dev": true,
"license": "MIT",
"funding": {
diff --git a/package.json b/package.json
index e7c4bf03037b..d40b511e7e4f 100644
--- a/package.json
+++ b/package.json
@@ -2,23 +2,23 @@
"name": "azure-rest-api-specs",
"devDependencies": {
"@azure-tools/typespec-apiview": "0.4.9",
- "@azure-tools/typespec-autorest": "0.48.0",
- "@azure-tools/typespec-azure-core": "0.48.0",
- "@azure-tools/typespec-azure-portal-core": "0.48.0",
- "@azure-tools/typespec-azure-resource-manager": "0.48.0",
- "@azure-tools/typespec-azure-rulesets": "0.48.0",
+ "@azure-tools/typespec-autorest": "0.49.0",
+ "@azure-tools/typespec-azure-core": "0.49.0",
+ "@azure-tools/typespec-azure-portal-core": "0.49.0",
+ "@azure-tools/typespec-azure-resource-manager": "0.49.0",
+ "@azure-tools/typespec-azure-rulesets": "0.49.0",
"@azure-tools/typespec-client-generator-cli": "0.14.2",
- "@azure-tools/typespec-client-generator-core": "0.48.6",
+ "@azure-tools/typespec-client-generator-core": "0.49.0",
"@azure-tools/typespec-liftr-base": "0.6.0",
"@azure/avocado": "^0.9.1",
- "@typespec/compiler": "0.62.0",
- "@typespec/http": "0.62.0",
- "@typespec/openapi": "0.62.0",
- "@typespec/openapi3": "0.62.0",
- "@typespec/prettier-plugin-typespec": "0.62.0",
- "@typespec/rest": "0.62.0",
- "@typespec/streams": "0.62.0",
- "@typespec/versioning": "0.62.0",
+ "@typespec/compiler": "0.63.0",
+ "@typespec/http": "0.63.0",
+ "@typespec/openapi": "0.63.0",
+ "@typespec/openapi3": "0.63.0",
+ "@typespec/prettier-plugin-typespec": "0.63.0",
+ "@typespec/rest": "0.63.0",
+ "@typespec/streams": "0.63.0",
+ "@typespec/versioning": "0.63.0",
"azure-rest-api-specs-eng-tools": "file:eng/tools",
"oav": "^3.5.1",
"prettier": "~3.3.3",
diff --git a/specification/appconfiguration/AppConfiguration/models.tsp b/specification/appconfiguration/AppConfiguration/models.tsp
index d565222195a2..eefb14ce0daf 100644
--- a/specification/appconfiguration/AppConfiguration/models.tsp
+++ b/specification/appconfiguration/AppConfiguration/models.tsp
@@ -119,7 +119,7 @@ model KeyListResult {
items?: Key[];
@doc("The URI that can be used to request the next set of paged results.")
- @Azure.Core.nextLink
+ @nextLink
`@nextLink`?: string;
}
@@ -162,7 +162,7 @@ model KeyValueListResult {
etag?: string;
@doc("The URI that can be used to request the next set of paged results.")
- @Azure.Core.nextLink
+ @nextLink
`@nextLink`?: string;
}
@@ -207,7 +207,7 @@ model SnapshotListResult {
items?: Snapshot[];
@doc("The URI that can be used to request the next set of paged results.")
- @Azure.Core.nextLink
+ @nextLink
`@nextLink`?: string;
}
@@ -304,7 +304,7 @@ model LabelListResult {
items?: Label[];
@doc("The URI that can be used to request the next set of paged results.")
- @Azure.Core.nextLink
+ @nextLink
`@nextLink`?: string;
}
diff --git a/specification/azurefleet/AzureFleet.Management/virtualMachineScaleSet.tsp b/specification/azurefleet/AzureFleet.Management/virtualMachineScaleSet.tsp
index e673ec5caea5..788134b8c0fc 100644
--- a/specification/azurefleet/AzureFleet.Management/virtualMachineScaleSet.tsp
+++ b/specification/azurefleet/AzureFleet.Management/virtualMachineScaleSet.tsp
@@ -57,6 +57,6 @@ model VirtualMachineScaleSetListResult {
value: Array;
@doc("The link to the next page of items")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: url;
}
diff --git a/specification/batch/Azure.Batch/models.tsp b/specification/batch/Azure.Batch/models.tsp
index ab88f3aa08b0..2defed7182fc 100644
--- a/specification/batch/Azure.Batch/models.tsp
+++ b/specification/batch/Azure.Batch/models.tsp
@@ -722,7 +722,7 @@ model BatchApplicationListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -778,7 +778,7 @@ model BatchPoolListUsageMetricsResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -809,7 +809,7 @@ model BatchAccountListSupportedImagesResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -880,7 +880,7 @@ model BatchPoolNodeCountsListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -1095,7 +1095,7 @@ model BatchNodeFileListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -2338,7 +2338,7 @@ model BatchJobScheduleListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -2576,7 +2576,7 @@ model BatchJobListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -2592,7 +2592,7 @@ model BatchJobPreparationAndReleaseTaskStatusListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -3106,7 +3106,7 @@ model BatchPoolListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -3545,7 +3545,7 @@ model BatchTaskListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -3591,7 +3591,7 @@ model BatchTaskListSubtasksResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -3965,7 +3965,7 @@ model BatchNodeListResult {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
@@ -4022,6 +4022,6 @@ model BatchNodeVMExtensionListResult {
value?: BatchNodeVMExtension[];
@doc("The URL to get the next set of results.")
- @Azure.Core.nextLink
+ @nextLink
`odata.nextLink`?: string;
}
diff --git a/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp b/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp
index 4eba76e1aec9..e7e03d667745 100644
--- a/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp
+++ b/specification/cognitiveservices/AnomalyDetector/multivariate/models.tsp
@@ -362,7 +362,7 @@ model ModelList {
maxCount: int32;
@doc("Link to fetch more models.")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
}
diff --git a/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp b/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp
index 39aa0fca15ff..47f0fe623612 100644
--- a/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp
+++ b/specification/confidentialledger/Microsoft.CodeTransparency/models.tsp
@@ -67,7 +67,7 @@ model EntryIds {
transactionIds: string[];
@doc("Path to the next page of results")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
}
diff --git a/specification/fabric/Microsoft.Fabric.Management/models.tsp b/specification/fabric/Microsoft.Fabric.Management/models.tsp
index aaaed4ef8aef..8dca9773a8b0 100644
--- a/specification/fabric/Microsoft.Fabric.Management/models.tsp
+++ b/specification/fabric/Microsoft.Fabric.Management/models.tsp
@@ -115,7 +115,7 @@ model RpSkuEnumerationForNewResourceResult {
value: Array;
@doc("Url for the next page. Null if no more pages available")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
}
@@ -145,7 +145,7 @@ model RpSkuEnumerationForExistingResourceResult {
value: Array;
@doc("Url for the next page. Null if no more pages available")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
}
diff --git a/specification/machinelearningservices/AzureAI.Assets/model.tsp b/specification/machinelearningservices/AzureAI.Assets/model.tsp
index 9d1ca3b47907..92b142d12792 100644
--- a/specification/machinelearningservices/AzureAI.Assets/model.tsp
+++ b/specification/machinelearningservices/AzureAI.Assets/model.tsp
@@ -53,7 +53,7 @@ model PagedIndex {
value: Index[];
@doc("The link to the next page of items")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: ResourceLocation;
}
@@ -77,7 +77,7 @@ model PagedPrompt {
value: Prompt[];
@doc("The link to the next page of items")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: ResourceLocation;
}
diff --git a/specification/riskiq/Easm/models.tsp b/specification/riskiq/Easm/models.tsp
index fce0a8066195..f4f4a7ca0f76 100644
--- a/specification/riskiq/Easm/models.tsp
+++ b/specification/riskiq/Easm/models.tsp
@@ -216,7 +216,7 @@ model AssetPageResult {
mark?: string;
@doc("The link to access the next page of results. Not set if at the end of the result set.")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
@doc("The items in the current page of results.")
@@ -714,7 +714,7 @@ model DiscoRunPageResult {
totalElements?: int64;
@doc("The link to access the next page of results. Not set if at the end of the result set.")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
@doc("The items in the current page of results.")
@@ -1527,7 +1527,7 @@ model DeltaPageResult {
totalElements?: int64;
@doc("The link to access the next page of results. Not set if at the end of the result set.")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
@doc("The items in the current page of results.")
diff --git a/specification/schemaregistry/SchemaRegistry/main.tsp b/specification/schemaregistry/SchemaRegistry/main.tsp
index d2fded2ddae0..9026051b4eda 100644
--- a/specification/schemaregistry/SchemaRegistry/main.tsp
+++ b/specification/schemaregistry/SchemaRegistry/main.tsp
@@ -249,7 +249,7 @@ model SchemaGroups {
/** The link to the next page of items */
#suppress "@azure-tools/typespec-azure-core/casing-style" "Already public casing from service is not camelCase."
- @Azure.Core.nextLink
+ @nextLink
NextLink?: string;
}
@@ -265,7 +265,7 @@ model SchemaVersions {
/** The link to the next page of items */
#suppress "@azure-tools/typespec-azure-core/casing-style" "Already public casing from service is not camelCase."
- @Azure.Core.nextLink
+ @nextLink
NextLink?: string;
}
diff --git a/specification/translation/Azure.AI.DocumentTranslation/models.tsp b/specification/translation/Azure.AI.DocumentTranslation/models.tsp
index 1458561b5540..af783529e246 100644
--- a/specification/translation/Azure.AI.DocumentTranslation/models.tsp
+++ b/specification/translation/Azure.AI.DocumentTranslation/models.tsp
@@ -330,7 +330,7 @@ model TranslationsStatus {
value: TranslationStatus[];
@doc("Url for the next page. Null if no more pages available")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
}
@@ -447,7 +447,7 @@ model DocumentsStatus {
value: DocumentStatus[];
@doc("Url for the next page. Null if no more pages available")
- @Azure.Core.nextLink
+ @nextLink
nextLink?: string;
}
From b260ff5b944d11f7769bb3a98bdfc5c513082724 Mon Sep 17 00:00:00 2001
From: Mariana Rios Flores
Date: Wed, 11 Dec 2024 12:34:17 -0800
Subject: [PATCH 006/128] Update CODEOWNERS (#31840)
---
.github/CODEOWNERS | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 83b8bc221f23..3fe34d6bc8f2 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -273,6 +273,8 @@
/specification/**/resource-manager/**/readme.go.md @tadelesh
/specification/**/resource-manager/**/readme.python.md @msyyc
+/specification/contosowidgetmanager/ @mikeharder @raych1 @maririos
+
###########
# Eng Sys
###########
From b6bead0df961af706e984e2b9807c8a099ece61b Mon Sep 17 00:00:00 2001
From: Todd King <58755170+ToddKingMSFT@users.noreply.github.com>
Date: Wed, 11 Dec 2024 12:44:05 -0800
Subject: [PATCH 007/128] Update metrics API limit descriptions (#31277)
* Update metrics API limit descriptions
* Update package-preview-2024-01 tag to include other active Azure Monitor APIs as well
* Revert readme change
* Fix model validation errors
* revert dataplane changes to stop confusing gated build
* Fix package-2021-05-metrics issues
* Fix broken common definitions link
* Update metrics_API.json
Update throttling limit description
---
.../Microsoft.Insights/stable/2018-01-01/metrics_API.json | 6 +++---
.../stable/2019-07-01/examples/GetMetricError.json | 2 +-
.../Microsoft.Insights/stable/2019-07-01/metrics_API.json | 4 ++--
.../stable/2021-05-01/examples/GetMetricError.json | 2 +-
.../2021-05-01/examples/PostMultiResourceMetricBody.json | 1 -
.../Microsoft.Insights/stable/2021-05-01/metrics_API.json | 8 ++++----
.../Microsoft.Insights/stable/2023-10-01/metrics_API.json | 8 ++++----
.../Microsoft.Insights/stable/2024-02-01/metrics_API.json | 8 ++++----
8 files changed, 19 insertions(+), 20 deletions(-)
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/metrics_API.json
index 70fd745a0282..ec0d953880d3 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/metrics_API.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-01-01/metrics_API.json
@@ -39,7 +39,7 @@
"Metrics"
],
"operationId": "Metrics_List",
- "description": "**Lists the metric values for a resource**.",
+ "description": "**Lists the metric values for a resource**. This API uses the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "#/parameters/ResourceUriParameter"
@@ -93,7 +93,7 @@
}
}
},
- "x-ms-odata": "../../../../commonDefinitions.json#/definitions/MetadataValue",
+ "x-ms-odata": "../../../../common-types/v1/commonMonitoringTypes.json#/definitions/MetadataValue",
"x-ms-examples": {
"Get Metric for data": {
"$ref": "./examples/GetMetric.json"
@@ -194,7 +194,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "The names of the metrics (comma separated) to retrieve. Special case: If a metricname itself has a comma in it then use %2 to indicate it. Eg: 'Metric,Name1' should be **'Metric%2Name1'**",
+ "description": "The names of the metrics (comma separated) to retrieve. Limit 20 metrics. Special case: If a metricname itself has a comma in it then use %2 to indicate it. Eg: 'Metric,Name1' should be **'Metric%2Name1'**",
"x-ms-parameter-location": "method"
},
"AggregationsParameter": {
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/examples/GetMetricError.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/examples/GetMetricError.json
index cbee7bdacca4..d71b57bfa77a 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/examples/GetMetricError.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/examples/GetMetricError.json
@@ -5,7 +5,7 @@
"metricnames": "MongoRequestsCount,MongoRequests",
"metricnamespace": "microsoft.documentdb/databaseaccounts",
"aggregation": "average",
- "interval": "FULL",
+ "interval": "P1D",
"AutoAdjustTimegrain": true,
"ValidateDimensions": false,
"api-version": "2019-07-01"
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/metrics_API.json
index 1429f3e1e314..74bd0346e774 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/metrics_API.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2019-07-01/metrics_API.json
@@ -39,7 +39,7 @@
"Metrics"
],
"operationId": "Metrics_List",
- "description": "**Lists the metric values for a resource**.",
+ "description": "**Lists the metric values for a resource**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "#/parameters/ResourceUriParameter"
@@ -363,7 +363,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "The names of the metrics (comma separated) to retrieve.",
+ "description": "The names of the metrics (comma separated) to retrieve. Limit 20 metrics.",
"x-ms-parameter-location": "method"
},
"AggregationsParameter": {
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/GetMetricError.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/GetMetricError.json
index eb3ec3fc6192..9d1c02f6d1f8 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/GetMetricError.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/GetMetricError.json
@@ -5,7 +5,7 @@
"metricnames": "MongoRequestsCount,MongoRequests",
"metricnamespace": "microsoft.documentdb/databaseaccounts",
"aggregation": "average",
- "interval": "FULL",
+ "interval": "P1D",
"AutoAdjustTimegrain": true,
"ValidateDimensions": false,
"api-version": "2021-05-01"
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/PostMultiResourceMetricBody.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/PostMultiResourceMetricBody.json
index 92f7bc2c6792..4e39cd45e2f1 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/PostMultiResourceMetricBody.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/examples/PostMultiResourceMetricBody.json
@@ -4,7 +4,6 @@
"region": "westus2",
"api-version": "2021-05-01",
"body": {
- "timespan": "2021-06-08T19:00:00Z/2021-06-12T01:00:00Z",
"metricNames": "Data Disk Max Burst IOPS",
"metricNamespace": "microsoft.compute/virtualmachines",
"filter": "LUN eq '0' and Microsoft.ResourceId eq '*'",
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/metrics_API.json
index 5cc8387feec6..641c708741d9 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/metrics_API.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/metrics_API.json
@@ -43,7 +43,7 @@
"Metrics"
],
"operationId": "Metrics_ListAtSubscriptionScope",
- "description": "**Lists the metric data for a subscription**.",
+ "description": "**Lists the metric data for a subscription**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter"
@@ -117,7 +117,7 @@
"Metrics"
],
"operationId": "Metrics_ListAtSubscriptionScopePost",
- "description": "**Lists the metric data for a subscription**. Parameters can be specified on either query params or the body.",
+ "description": "**Lists the metric data for a subscription**. Parameters can be specified on either query params or the body. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter"
@@ -204,7 +204,7 @@
"Metrics"
],
"operationId": "Metrics_List",
- "description": "**Lists the metric values for a resource**.",
+ "description": "**Lists the metric values for a resource**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "./commonMonitoringTypes.json#/parameters/ResourceUriParameter"
@@ -637,7 +637,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "The names of the metrics (comma separated) to retrieve.",
+ "description": "The names of the metrics (comma separated) to retrieve. Limit 20 metrics.",
"x-ms-parameter-location": "method"
},
"AggregationsParameter": {
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2023-10-01/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2023-10-01/metrics_API.json
index 08abecf2a4f5..c9e3af244cac 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2023-10-01/metrics_API.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2023-10-01/metrics_API.json
@@ -40,7 +40,7 @@
"Metrics"
],
"operationId": "Metrics_ListAtSubscriptionScope",
- "description": "**Lists the metric data for a subscription**.",
+ "description": "**Lists the metric data for a subscription**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter"
@@ -117,7 +117,7 @@
"Metrics"
],
"operationId": "Metrics_ListAtSubscriptionScopePost",
- "description": "**Lists the metric data for a subscription**. Parameters can be specified on either query params or the body.",
+ "description": "**Lists the metric data for a subscription**. Parameters can be specified on either query params or the body. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter"
@@ -207,7 +207,7 @@
"Metrics"
],
"operationId": "Metrics_List",
- "description": "**Lists the metric values for a resource**.",
+ "description": "**Lists the metric values for a resource**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/parameters/ResourceUriParameter"
@@ -407,7 +407,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "The names of the metrics (comma separated) to retrieve.",
+ "description": "The names of the metrics (comma separated) to retrieve. Limit 20 metrics.",
"x-ms-parameter-location": "method"
},
"FilterParameter": {
diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2024-02-01/metrics_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2024-02-01/metrics_API.json
index 70171d7ac2f1..5e7ddf3d5e75 100644
--- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2024-02-01/metrics_API.json
+++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2024-02-01/metrics_API.json
@@ -40,7 +40,7 @@
"Metrics"
],
"operationId": "Metrics_ListAtSubscriptionScope",
- "description": "**Lists the metric data for a subscription**.",
+ "description": "**Lists the metric data for a subscription**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter"
@@ -117,7 +117,7 @@
"Metrics"
],
"operationId": "Metrics_ListAtSubscriptionScopePost",
- "description": "**Lists the metric data for a subscription**. Parameters can be specified on either query params or the body.",
+ "description": "**Lists the metric data for a subscription**. Parameters can be specified on either query params or the body. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter"
@@ -207,7 +207,7 @@
"Metrics"
],
"operationId": "Metrics_List",
- "description": "**Lists the metric values for a resource**.",
+ "description": "**Lists the metric values for a resource**. This API used the [default ARM throttling limits](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling).",
"parameters": [
{
"$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/parameters/ResourceUriParameter"
@@ -407,7 +407,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "The names of the metrics (comma separated) to retrieve.",
+ "description": "The names of the metrics (comma separated) to retrieve. Limit 20 metrics.",
"x-ms-parameter-location": "method"
},
"FilterParameter": {
From e682c0ca5e53e8519af0e6912794740bb07a6dab Mon Sep 17 00:00:00 2001
From: Paul Hsu
Date: Wed, 11 Dec 2024 15:45:49 -0800
Subject: [PATCH 008/128] Modify request body to be required. (#31844)
---
specification/ai/DocumentIntelligence/routes.tsp | 4 ++--
.../stable/2024-11-30/DocumentIntelligence.json | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/specification/ai/DocumentIntelligence/routes.tsp b/specification/ai/DocumentIntelligence/routes.tsp
index 2a2a7ba8f876..914bee4adee0 100644
--- a/specification/ai/DocumentIntelligence/routes.tsp
+++ b/specification/ai/DocumentIntelligence/routes.tsp
@@ -260,7 +260,7 @@ interface DocumentModels {
@doc("Analyze request parameters.")
@bodyRoot
- analyzeRequest?: AnalyzeDocumentRequest;
+ analyzeRequest: AnalyzeDocumentRequest;
},
AnalyzeOperation
>;
@@ -299,7 +299,7 @@ interface DocumentModels {
@doc("Analyze batch request parameters.")
@body
- analyzeBatchRequest?: AnalyzeBatchDocumentsRequest;
+ analyzeBatchRequest: AnalyzeBatchDocumentsRequest;
},
AnalyzeBatchOperation
>;
diff --git a/specification/ai/data-plane/DocumentIntelligence/stable/2024-11-30/DocumentIntelligence.json b/specification/ai/data-plane/DocumentIntelligence/stable/2024-11-30/DocumentIntelligence.json
index 3d1b10c174f7..2fe9ba69c526 100644
--- a/specification/ai/data-plane/DocumentIntelligence/stable/2024-11-30/DocumentIntelligence.json
+++ b/specification/ai/data-plane/DocumentIntelligence/stable/2024-11-30/DocumentIntelligence.json
@@ -618,7 +618,7 @@
"name": "analyzeBatchRequest",
"in": "body",
"description": "Analyze batch request parameters.",
- "required": false,
+ "required": true,
"schema": {
"$ref": "#/definitions/AnalyzeBatchDocumentsRequest"
}
@@ -1492,7 +1492,7 @@
"name": "analyzeRequest",
"in": "body",
"description": "Analyze request parameters.",
- "required": false,
+ "required": true,
"schema": {
"$ref": "#/definitions/AnalyzeDocumentRequest"
}
From 73979e2d1e5944bcebe4df4b78048d6f285b844f Mon Sep 17 00:00:00 2001
From: Mariana Rios Flores
Date: Wed, 11 Dec 2024 15:46:44 -0800
Subject: [PATCH 009/128] Add sdk configuration changes template (#31842)
* first try
* templates added
* update template
* Update .github/PULL_REQUEST_TEMPLATE/sdk_configuration_template.md
Co-authored-by: Ben Broderick Phillips
---------
Co-authored-by: Ben Broderick Phillips
---
.github/PULL_REQUEST_TEMPLATE.md | 2 ++
.../sdk_configuration_template.md | 25 +++++++++++++++++++
2 files changed, 27 insertions(+)
create mode 100644 .github/PULL_REQUEST_TEMPLATE/sdk_configuration_template.md
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 7839310f6d33..dd2098c4bf72 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -5,3 +5,5 @@ Switch to "Preview" on this description then select one of the choices below.
Click here to open a PR for a Data Plane API.
Click here to open a PR for a Control Plane (ARM) API.
+
+Click here to open a PR for only SDK configuration.
diff --git a/.github/PULL_REQUEST_TEMPLATE/sdk_configuration_template.md b/.github/PULL_REQUEST_TEMPLATE/sdk_configuration_template.md
new file mode 100644
index 000000000000..700c484f97f1
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE/sdk_configuration_template.md
@@ -0,0 +1,25 @@
+# SDK configuration pull request
+
+## Purpose of this PR
+
+- [ ] Make changes to the SDK configuration only when there are no modifications to the API specification, eliminating the need for an ARM or Stewardship Board API review.
+
+## Due diligence checklist
+
+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 confirm this PR is modifying only SDK configurations, and not API related specifications.
+- [ ] I have reviewed and used the respective `tspconfig.yaml` templates:
+ - [ARM tspconfig template](https://github.com/Azure/azure-rest-api-specs/blob/main/specification/contosowidgetmanager/Contoso.Management/tspconfig.yaml)
+ - [Data plane tspconfig template](https://github.com/Azure/azure-rest-api-specs/blob/main/specification/contosowidgetmanager/Contoso.WidgetManager/tspconfig.yaml)
+
+## Getting help
+
+- First, carefully read through this PR description, from top to bottom. Fill out the `Purpose of this PR` and `Due diligence checklist`.
+- If you don't have permissions to remove or add labels to the PR, request `write access` per [aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories](https://aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories)
+- To understand what you must do next to merge this PR, see the `Next Steps to Merge` comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
+- For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure and https://aka.ms/ci-fix.
+- If the PR CI checks appear to be stuck in `queued` state, please add a comment with contents `/azp run`.
+ This should result in a new comment denoting a `PR validation pipeline` has started and the checks should be updated after few minutes.
+- 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.
\ No newline at end of file
From ab67c148ec716a0d0075770742d54468f128c72e Mon Sep 17 00:00:00 2001
From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com>
Date: Wed, 11 Dec 2024 17:39:52 -0800
Subject: [PATCH 010/128] Sync eng/common directory with azure-sdk-tools for PR
9493 (#31800)
* add and use new function to PSModule-Helpers.ps1 -- `InstallAndImport-ModuleIfNotInstalled` which smartly short circuits the install and module import to be as efficient as possible. This largely has impact of improving Save-Package-Properties performance on windows machines.
---------
Co-authored-by: Scott Beddall
---
.../scripts/Helpers/PSModule-Helpers.ps1 | 52 +++++++++++++------
.../scripts/Helpers/Package-Helpers.ps1 | 37 +++++--------
2 files changed, 50 insertions(+), 39 deletions(-)
diff --git a/eng/common/scripts/Helpers/PSModule-Helpers.ps1 b/eng/common/scripts/Helpers/PSModule-Helpers.ps1
index 34dac96f8b1f..da2e6de4cc69 100644
--- a/eng/common/scripts/Helpers/PSModule-Helpers.ps1
+++ b/eng/common/scripts/Helpers/PSModule-Helpers.ps1
@@ -1,7 +1,6 @@
$global:CurrentUserModulePath = ""
-function Update-PSModulePathForCI()
-{
+function Update-PSModulePathForCI() {
# Information on PSModulePath taken from docs
# https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_psmodulepath
@@ -11,7 +10,8 @@ function Update-PSModulePathForCI()
if ($IsWindows) {
$hostedAgentModulePath = $env:SystemDrive + "\Modules"
$moduleSeperator = ";"
- } else {
+ }
+ else {
$hostedAgentModulePath = "/usr/share"
$moduleSeperator = ":"
}
@@ -55,7 +55,8 @@ function Get-ModuleRepositories([string]$moduleName) {
$repoUrls = if ($packageFeedOverrides.Contains("${moduleName}")) {
@($packageFeedOverrides["${moduleName}"], $DefaultPSRepositoryUrl)
- } else {
+ }
+ else {
@($DefaultPSRepositoryUrl)
}
@@ -63,11 +64,21 @@ function Get-ModuleRepositories([string]$moduleName) {
}
function moduleIsInstalled([string]$moduleName, [string]$version) {
- $modules = (Get-Module -ListAvailable $moduleName)
+ if (-not (Test-Path variable:script:InstalledModules)) {
+ $script:InstalledModules = @{}
+ }
+
+ if ($script:InstalledModules.ContainsKey("${moduleName}")) {
+ $modules = $script:InstalledModules["${moduleName}"]
+ }
+ else {
+ $modules = (Get-Module -ListAvailable $moduleName)
+ $script:InstalledModules["${moduleName}"] = $modules
+ }
+
if ($version -as [Version]) {
$modules = $modules.Where({ [Version]$_.Version -ge [Version]$version })
- if ($modules.Count -gt 0)
- {
+ if ($modules.Count -gt 0) {
Write-Host "Using module $($modules[0].Name) with version $($modules[0].Version)."
return $modules[0]
}
@@ -77,8 +88,7 @@ function moduleIsInstalled([string]$moduleName, [string]$version) {
function installModule([string]$moduleName, [string]$version, $repoUrl) {
$repo = (Get-PSRepository).Where({ $_.SourceLocation -eq $repoUrl })
- if ($repo.Count -eq 0)
- {
+ if ($repo.Count -eq 0) {
Register-PSRepository -Name $repoUrl -SourceLocation $repoUrl -InstallationPolicy Trusted | Out-Null
$repo = (Get-PSRepository).Where({ $_.SourceLocation -eq $repoUrl })
if ($repo.Count -eq 0) {
@@ -102,6 +112,8 @@ function installModule([string]$moduleName, [string]$version, $repoUrl) {
throw "Failed to install module $moduleName with version $version"
}
+ $script:InstalledModules["${moduleName}"] = $modules
+
# Unregister repository as it can cause overlap issues with `dotnet tool install`
# commands using the same devops feed
Unregister-PSRepository -Name $repoUrl | Out-Null
@@ -109,10 +121,17 @@ function installModule([string]$moduleName, [string]$version, $repoUrl) {
return $modules[0]
}
+function InstallAndImport-ModuleIfNotInstalled([string]$module, [string]$version) {
+ if ($null -eq (moduleIsInstalled $module $version)) {
+ Install-ModuleIfNotInstalled -WhatIf:$false $module $version | Import-Module
+ } elseif (!(Get-Module -Name $module)) {
+ Import-Module $module
+ }
+}
+
# Manual test at eng/common-tests/psmodule-helpers/Install-Module-Parallel.ps1
# If we want to use another default repository other then PSGallery we can update the default parameters
-function Install-ModuleIfNotInstalled()
-{
+function Install-ModuleIfNotInstalled() {
[CmdletBinding(SupportsShouldProcess = $true)]
param(
[string]$moduleName,
@@ -137,12 +156,14 @@ function Install-ModuleIfNotInstalled()
foreach ($url in $repoUrls) {
try {
$module = installModule -moduleName $moduleName -version $version -repoUrl $url
- } catch {
+ }
+ catch {
if ($url -ne $repoUrls[-1]) {
Write-Warning "Failed to install powershell module from '$url'. Retrying with fallback repository"
Write-Warning $_
continue
- } else {
+ }
+ else {
Write-Warning "Failed to install powershell module from $url"
throw
}
@@ -151,7 +172,8 @@ function Install-ModuleIfNotInstalled()
}
Write-Host "Using module '$($module.Name)' with version '$($module.Version)'."
- } finally {
+ }
+ finally {
$mutex.ReleaseMutex()
}
@@ -159,5 +181,5 @@ function Install-ModuleIfNotInstalled()
}
if ($null -ne $env:SYSTEM_TEAMPROJECTID) {
- Update-PSModulePathForCI
+ Update-PSModulePathForCI
}
diff --git a/eng/common/scripts/Helpers/Package-Helpers.ps1 b/eng/common/scripts/Helpers/Package-Helpers.ps1
index f1ea6ef91f27..b545872dbbbd 100644
--- a/eng/common/scripts/Helpers/Package-Helpers.ps1
+++ b/eng/common/scripts/Helpers/Package-Helpers.ps1
@@ -46,7 +46,6 @@ function GetDocsTocDisplayName($pkg) {
return $displayName
}
-
<#
.SYNOPSIS
This function is a safe wrapper around `yq` and `ConvertFrom-Yaml` to convert YAML content to a PowerShell HashTable object
@@ -68,7 +67,7 @@ Get-Content -Raw path/to/file.yml | CompatibleConvertFrom-Yaml
#>
function CompatibleConvertFrom-Yaml {
param(
- [Parameter(Mandatory=$true, ValueFromPipeline=$true)]
+ [Parameter(Mandatory = $true, ValueFromPipeline = $true)]
[string]$Content
)
@@ -76,20 +75,10 @@ function CompatibleConvertFrom-Yaml {
throw "Content to parse is a required input."
}
- # Initialize any variables or checks that need to be done once
- $yqPresent = Get-Command 'yq' -ErrorAction SilentlyContinue
- if (-not $yqPresent) {
- . (Join-Path $PSScriptRoot PSModule-Helpers.ps1)
- Install-ModuleIfNotInstalled -WhatIf:$false "powershell-yaml" "0.4.7" | Import-Module
- }
+ . (Join-Path $PSScriptRoot PSModule-Helpers.ps1)
+ InstallAndImport-ModuleIfNotInstalled "powershell-yaml" "0.4.7"
- # Process the content (for example, you could convert from YAML here)
- if ($yqPresent) {
- return ($content | yq -o=json | ConvertFrom-Json -AsHashTable)
- }
- else {
- return ConvertFrom-Yaml $content
- }
+ return ConvertFrom-Yaml $content
}
<#
@@ -114,7 +103,7 @@ LoadFrom-Yaml -YmlFile path/to/file.yml
#>
function LoadFrom-Yaml {
param(
- [Parameter(Mandatory=$true)]
+ [Parameter(Mandatory = $true)]
[string]$YmlFile
)
if (Test-Path -Path $YmlFile) {
@@ -159,19 +148,19 @@ GetValueSafelyFrom-Yaml -YamlContentAsHashtable $YmlFileContent -Keys @("extends
#>
function GetValueSafelyFrom-Yaml {
param(
- [Parameter(Mandatory=$true)]
+ [Parameter(Mandatory = $true)]
$YamlContentAsHashtable,
- [Parameter(Mandatory=$true)]
+ [Parameter(Mandatory = $true)]
[string[]]$Keys
)
$current = $YamlContentAsHashtable
foreach ($key in $Keys) {
- if ($current.ContainsKey($key) -or $current[$key]) {
- $current = $current[$key]
- }
- else {
- return $null
- }
+ if ($current.ContainsKey($key) -or $current[$key]) {
+ $current = $current[$key]
+ }
+ else {
+ return $null
+ }
}
return [object]$current
From 85ed8fc06e19c902c95b531cbd8a643428d5f28d Mon Sep 17 00:00:00 2001
From: Weidong Xu
Date: Thu, 12 Dec 2024 12:00:41 +0800
Subject: [PATCH 011/128] java needs startTime (#31848)
---
specification/batch/Azure.Batch/routes.tsp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/specification/batch/Azure.Batch/routes.tsp b/specification/batch/Azure.Batch/routes.tsp
index 6bb346a8bded..b77235ba99a9 100644
--- a/specification/batch/Azure.Batch/routes.tsp
+++ b/specification/batch/Azure.Batch/routes.tsp
@@ -80,7 +80,7 @@ interface Pools {
start time of the last aggregation interval currently available.
""")
@query
- @clientName("starttime", "!autorest")
+ @clientName("starttime", "csharp,python,javascript,go")
startTime?: utcDateTime;
@doc("""
From 28a0baf2c401a0b9bf839688c4d235398868835e Mon Sep 17 00:00:00 2001
From: Caio Saldanha
Date: Thu, 12 Dec 2024 13:26:46 -0800
Subject: [PATCH 012/128] [.NET] DocumentIntelligence: adding .NET renames
(#31861)
---
.../ai/DocumentIntelligence/client.tsp | 79 ++++++++++++-------
1 file changed, 50 insertions(+), 29 deletions(-)
diff --git a/specification/ai/DocumentIntelligence/client.tsp b/specification/ai/DocumentIntelligence/client.tsp
index 93dd6852c6c4..7d6fa57d30e6 100644
--- a/specification/ai/DocumentIntelligence/client.tsp
+++ b/specification/ai/DocumentIntelligence/client.tsp
@@ -70,16 +70,42 @@ interface DocumentIntelligenceAdministrationClient {
}
@@clientName(AnalyzeBatchDocumentsRequest,
- "AnalyzeBatchDocumentsContent",
+ "AnalyzeBatchDocumentsOptions",
"csharp"
);
-@@clientName(AnalyzeDocumentRequest, "AnalyzeDocumentContent", "csharp");
+@@clientName(AnalyzeBatchDocumentsRequest.azureBlobSource,
+ "BlobSource",
+ "csharp"
+);
+@@clientName(AnalyzeBatchDocumentsRequest.azureBlobFileListSource,
+ "BlobFileListSource",
+ "csharp"
+);
+@@clientName(AnalyzeBatchDocumentsRequest.resultContainerUrl,
+ "ResultContainerUri",
+ "csharp"
+);
+@@clientName(AnalyzeBatchOperation, "AnalyzeBatchOperationDetails", "csharp");
+@@clientName(AnalyzeBatchOperation.createdDateTime, "CreatedOn", "csharp");
+@@clientName(AnalyzeBatchOperation.lastUpdatedDateTime,
+ "LastUpdatedOn",
+ "csharp"
+);
+@@clientName(AnalyzeBatchOperationDetail,
+ "AnalyzeBatchResultDetails",
+ "csharp"
+);
+@@clientName(AnalyzeBatchOperationDetail.resultUrl, "ResultUri", "csharp");
+@@clientName(AnalyzeBatchOperationDetail.sourceUrl, "SourceUri", "csharp");
+@@clientName(AnalyzedDocument.docType, "DocumentType", "csharp");
+@@clientName(AnalyzeDocumentRequest, "AnalyzeDocumentOptions", "csharp");
+@@clientName(AnalyzeDocumentRequest.base64Source, "BytesSource", "csharp");
@@clientName(AnalyzeDocumentRequest.urlSource, "UriSource", "csharp");
@@clientName(AuthorizeClassifierCopyRequest,
- "AuthorizeClassifierCopyContent",
+ "AuthorizeClassifierCopyOptions",
"csharp"
);
-@@clientName(AuthorizeCopyRequest, "AuthorizeCopyContent", "csharp");
+@@clientName(AuthorizeCopyRequest, "AuthorizeModelCopyOptions", "csharp");
@@clientName(AzureBlobContentSource, "BlobContentSource", "csharp");
@@clientName(AzureBlobContentSource.containerUrl, "ContainerUri", "csharp");
@@clientName(AzureBlobFileListContentSource,
@@ -91,14 +117,14 @@ interface DocumentIntelligenceAdministrationClient {
"csharp"
);
@@clientName(BuildDocumentClassifierRequest,
- "BuildDocumentClassifierContent",
+ "BuildClassifierOptions",
"csharp"
);
@@clientName(BuildDocumentClassifierRequest.docTypes,
"DocumentTypes",
"csharp"
);
-@@clientName(BuildDocumentModelRequest, "BuildDocumentModelContent", "csharp");
+@@clientName(BuildDocumentModelRequest, "BuildDocumentModelOptions", "csharp");
@@clientName(BuildDocumentModelRequest.azureBlobSource, "BlobSource", "csharp");
@@clientName(BuildDocumentModelRequest.azureBlobFileListSource,
"BlobFileListSource",
@@ -116,18 +142,15 @@ interface DocumentIntelligenceAdministrationClient {
"BlobFileListSource",
"csharp"
);
-@@clientName(ClassifyDocumentRequest, "ClassifyDocumentContent", "csharp");
+@@clientName(ClassifyDocumentRequest, "ClassifyDocumentOptions", "csharp");
+@@clientName(ClassifyDocumentRequest.base64Source, "BytesSource", "csharp");
@@clientName(ClassifyDocumentRequest.urlSource, "UriSource", "csharp");
-@@clientName(ComposeDocumentModelRequest,
- "ComposeDocumentModelContent",
- "csharp"
-);
+@@clientName(ComposeDocumentModelRequest, "ComposeModelOptions", "csharp");
@@clientName(ComposeDocumentModelRequest.docTypes, "DocumentTypes", "csharp");
@@clientName(ContentSourceKind.azureBlob, "Blob", "csharp");
@@clientName(ContentSourceKind.azureBlobFileList, "BlobFileList", "csharp");
+@@clientName(ContentSourceKind.base64, "Bytes", "csharp");
@@clientName(ContentSourceKind.url, "Uri", "csharp");
-@@clientName(ModelCopyAuthorization.expirationDateTime, "ExpiresOn", "csharp");
-@@clientName(AnalyzedDocument.docType, "DocumentType", "csharp");
@@clientName(DocumentAnalysisFeature.styleFont, "FontStyling", "csharp");
@@clientName(DocumentBarcodeKind.EAN13, "Ean13", "csharp");
@@clientName(DocumentBarcodeKind.EAN8, "Ean8", "csharp");
@@ -147,15 +170,25 @@ interface DocumentIntelligenceAdministrationClient {
"ModifiedOn",
"csharp"
);
+@@clientName(DocumentField.type, "FieldType", "csharp");
@@clientName(DocumentField.valueArray, "ValueList", "csharp");
-@@clientName(DocumentField.valueInteger, "ValueLong", "csharp");
+@@clientName(DocumentField.valueInteger, "ValueInt64", "csharp");
@@clientName(DocumentField.valueNumber, "ValueDouble", "csharp");
-@@clientName(DocumentField.valueObject, "ValueDictionary", "csharp");
@@clientName(DocumentFieldSchema.type, "FieldType", "csharp");
@@clientName(DocumentFieldType.array, "List", "csharp");
-@@clientName(DocumentFieldType.integer, "Long", "csharp");
+@@clientName(DocumentFieldType.integer, "Int64", "csharp");
@@clientName(DocumentFieldType.number, "Double", "csharp");
@@clientName(DocumentFieldType.object, "Dictionary", "csharp");
+@@clientName(DocumentIntelligenceError.innererror, "InnerError", "csharp");
+@@clientName(DocumentIntelligenceInnerError.innererror, "InnerError", "csharp");
+@@clientName(DocumentIntelligenceOperationDetails.createdDateTime,
+ "CreatedOn",
+ "csharp"
+);
+@@clientName(DocumentIntelligenceOperationDetails.lastUpdatedDateTime,
+ "LastUpdatedOn",
+ "csharp"
+);
@@clientName(DocumentModelDetails.azureBlobSource, "BlobSource", "csharp");
@@clientName(DocumentModelDetails.azureBlobFileListSource,
"BlobFileListSource",
@@ -165,19 +198,7 @@ interface DocumentIntelligenceAdministrationClient {
@@clientName(DocumentModelDetails.docTypes, "DocumentTypes", "csharp");
@@clientName(DocumentModelDetails.expirationDateTime, "ExpiresOn", "csharp");
@@clientName(DocumentModelDetails.modifiedDateTime, "ModifiedOn", "csharp");
-// https://github.com/Azure/typespec-azure/issues/417
-@@clientName(DocumentIntelligenceInnerError.innererror,
- "InnerErrorObject",
- "csharp"
-);
-@@clientName(DocumentIntelligenceOperationDetails.createdDateTime,
- "CreatedOn",
- "csharp"
-);
-@@clientName(DocumentIntelligenceOperationDetails.lastUpdatedDateTime,
- "LastUpdatedOn",
- "csharp"
-);
+@@clientName(ModelCopyAuthorization.expirationDateTime, "ExpiresOn", "csharp");
@@clientName(AnalyzeDocumentRequest.base64Source, "bytesSource", "python");
@@clientName(ClassifyDocumentRequest.base64Source, "bytesSource", "python");
From 72de3f32ff4723c19e9868eb498f65c40a480fc9 Mon Sep 17 00:00:00 2001
From: Lori Fraleigh <76703586+lfraleigh@users.noreply.github.com>
Date: Thu, 12 Dec 2024 14:02:43 -0800
Subject: [PATCH 013/128] Updating docs.microsoft.com to learn.microsoft.com
(#31831)
* Update readme.md
Change docs.microsoft.com learn.microsoft.com
* Update readme.md
Change docs.microsoft.com to learn.microsoft.com
* Update ResolveDependencies.md
* Update ApiScenarioDefinition.md
* Update QuickStart.md
* Update swagger-authoring-descriptions.md
---
documentation/api-scenario/how-to/QuickStart.md | 2 +-
documentation/api-scenario/how-to/ResolveDependencies.md | 2 +-
.../api-scenario/references/ApiScenarioDefinition.md | 8 ++++----
documentation/swagger-authoring-descriptions.md | 6 +++---
.../cognitiveservices/data-plane/TextAnalytics/readme.md | 4 ++--
.../cognitiveservices/resource-manager/readme.md | 2 +-
6 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/documentation/api-scenario/how-to/QuickStart.md b/documentation/api-scenario/how-to/QuickStart.md
index ebfb32d6f267..6894024583a6 100644
--- a/documentation/api-scenario/how-to/QuickStart.md
+++ b/documentation/api-scenario/how-to/QuickStart.md
@@ -30,7 +30,7 @@ Run `oav run -h` to find all available options.
To run API test, first please prepare an AAD app which is used for provisioning Azure resource. Please grant subscription contributor permission to this AAD app.
-For how to create AAD app, please follow this doc https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal
+For how to create AAD app, please follow this doc https://learn.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
## Authoring steps
diff --git a/documentation/api-scenario/how-to/ResolveDependencies.md b/documentation/api-scenario/how-to/ResolveDependencies.md
index 09cda2df6a03..00ffc8d2a0df 100644
--- a/documentation/api-scenario/how-to/ResolveDependencies.md
+++ b/documentation/api-scenario/how-to/ResolveDependencies.md
@@ -319,4 +319,4 @@ scenarios:
### ARM Template Deployment Script
-ARM Template Deployment Script is supported in API Scenario, so that some complex operations with Azure PowerShell or CLI script can be performed in a single step. Refer to [ARM Template Deployment Script documentation](https://docs.microsoft.com/azure/azure-resource-manager/templates/deployment-script-template).
+ARM Template Deployment Script is supported in API Scenario, so that some complex operations with Azure PowerShell or CLI script can be performed in a single step. Refer to [ARM Template Deployment Script documentation](https://learn.microsoft.com/azure/azure-resource-manager/templates/deployment-script-template).
diff --git a/documentation/api-scenario/references/ApiScenarioDefinition.md b/documentation/api-scenario/references/ApiScenarioDefinition.md
index 02305c656e48..13535d063c30 100644
--- a/documentation/api-scenario/references/ApiScenarioDefinition.md
+++ b/documentation/api-scenario/references/ApiScenarioDefinition.md
@@ -254,7 +254,7 @@ Step to deploy ARM template to the scope. Template parameters and outputs will a
- **armTemplate**
- **Type:** Required, String
- - Path to ARM template json file. See [ARM Template](https://docs.microsoft.com/azure/templates/).
+ - Path to ARM template json file. See [ARM Template](https://learn.microsoft.com/azure/templates/).
### Step ARM Deployment Script
@@ -282,10 +282,10 @@ Step to deploy ARM deployment script to the scope. Template parameters and outpu
- **armDeploymentScript**
- **Type:** Required, String
- - Path to script file. See [ARM Deployment Script Template](https://docs.microsoft.com/azure/azure-resource-manager/templates/deployment-script-template).
+ - Path to script file. See [ARM Deployment Script Template](https://learn.microsoft.com/azure/azure-resource-manager/templates/deployment-script-template).
- **arguments**
- **Type:** Optional, String
- - Arguments for the script. Same as arguments in ARM Template. See [ARM Deployment Script Template](https://docs.microsoft.com/azure/azure-resource-manager/templates/deployment-script-template).
+ - Arguments for the script. Same as arguments in ARM Template. See [ARM Deployment Script Template](https://learn.microsoft.com/azure/azure-resource-manager/templates/deployment-script-template).
- **environmentVariables**
- **Type:** Optional, Array of [EnvironmentVariable](#EnvironmentVariable)
- Specify the environment variables to pass over to the script.
@@ -623,4 +623,4 @@ on data:
result:
- throws error
-```
\ No newline at end of file
+```
diff --git a/documentation/swagger-authoring-descriptions.md b/documentation/swagger-authoring-descriptions.md
index 7334bc42940a..843176243042 100644
--- a/documentation/swagger-authoring-descriptions.md
+++ b/documentation/swagger-authoring-descriptions.md
@@ -2,11 +2,11 @@
> C+E CSI SDK Documentation Team
-> **The descriptions you write for the code elements in Swagger become the baseline public Azure REST API documentation on http://docs.microsoft.com.**
+> **The descriptions you write for the code elements in Swagger become the baseline public Azure REST API documentation on http://learn.microsoft.com.**
These descriptions are also passed through by AutoRest to become triple-slash (///) comments in the corresponding client SDKs, which are likewise transformed into published baseline ref documentation.
-This means that these docs are part of your product, and as ScottGu notes, a key part of your user experience. They're not just served up on docs.microsoft.com; they can also be discovered through Swagger UI (or other REST documentation client tools), command-line tools, and IntelliSense (for client SDKs). These descriptions represent your product and the hard work you put into making great APIs, and since we are Microsoft, our readers expect a polished experience.
+This means that these docs are part of your product, and as ScottGu notes, a key part of your user experience. They're not just served up on learn.microsoft.com; they can also be discovered through Swagger UI (or other REST documentation client tools), command-line tools, and IntelliSense (for client SDKs). These descriptions represent your product and the hard work you put into making great APIs, and since we are Microsoft, our readers expect a polished experience.
Therefore, take the time to craft your descriptions well! This doc provides some basic advice from the C+E CSI content team, as well as various tips to ensure that your public Azure ref documentation looks clean, consistent, and great!
## Getting started
@@ -16,7 +16,7 @@ Therefore, take the time to craft your descriptions well! This doc provides some
2. Set yourself up with some good content support tools.
- [Grammarly](http://www.grammarly.com) is a web site that provides an English language grammar checker. Just cut-and-paste your description strings into it and review the suggested fixes.
- If you're using VSCode to edit your Swagger, consider one of these Swagger doc previewer extensions:
- - [swagger-doc-viewer](https://marketplace.visualstudio.com/items?itemName=mimarec.swagger-doc-viewer) renders your Swagger file to a more readable format. Note that this format is not the same style as what will be generated for docs.microsoft.com.
+ - [swagger-doc-viewer](https://marketplace.visualstudio.com/items?itemName=mimarec.swagger-doc-viewer) renders your Swagger file to a more readable format. Note that this format is not the same style as what will be generated for learn.microsoft.com.
- [Arjun Swagger Viewer](https://marketplace.visualstudio.com/items?itemName=Arjun.swagger-viewer) is another Swagger preview extension, but has less validation warnings.
- [OpenAPI Linting Extension](https://github.com/Azure/openapi-lint-extension#preview) can be used to check your Swagger for common mistakes.
diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md
index 92dbdf99e1a5..b8c3cca16ad9 100644
--- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md
+++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md
@@ -7,7 +7,7 @@ Note that the Cognitive Services Language SDK is simply a wrapper on top of the
## Prerequisites
-You must have a [Cognitive Services API account](https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account) with **Text Analytics API**.
+You must have a [Cognitive Services API account](https://learn.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account) with **Text Analytics API**.
You must also have the [endpoint and access key](../How-tos/text-analytics-how-to-access-key.md) that was generated for you during sign up.
@@ -18,7 +18,7 @@ You must also have the [endpoint and access key](../How-tos/text-analytics-how-t
1. Select the NuGet package and install it.
## Calling the Text Analytics API using the SDK
-See Text Analytics [Quickstart guide](https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/quickstarts/text-analytics-sdk?tabs=version-3&pivots=programming-language-csharp) for detailed instructions on how to use the SDK in your application.
+See Text Analytics [Quickstart guide](https://learn.microsoft.com/azure/cognitive-services/text-analytics/quickstarts/text-analytics-sdk?tabs=version-3&pivots=programming-language-csharp) for detailed instructions on how to use the SDK in your application.
## Releases
diff --git a/specification/cognitiveservices/resource-manager/readme.md b/specification/cognitiveservices/resource-manager/readme.md
index 01c43f61c8c1..5f02975eed28 100644
--- a/specification/cognitiveservices/resource-manager/readme.md
+++ b/specification/cognitiveservices/resource-manager/readme.md
@@ -6,7 +6,7 @@ This is the AutoRest configuration file for CognitiveServices.
# Notice
-Microsoft will use data you send to Bing Search Services or the Translator Speech API to improve Microsoft products and services. Where you send personal data to these Cognitive Services, you are responsible for obtaining sufficient consent from the data subjects. The General Privacy and Security Terms in the Online Services Terms do not apply to these Cognitive Services. Please refer to the Microsoft Cognitive Services section in the [Online Services Terms](https://www.microsoft.com/en-us/Licensing/product-licensing/products.aspx) for details. Microsoft offers policy controls that may be used to [disable new Cognitive Services deployments](https://docs.microsoft.com/en-us/azure/cognitive-services/cognitive-services-apis-create-account).
+Microsoft will use data you send to Bing Search Services or the Translator Speech API to improve Microsoft products and services. Where you send personal data to these Cognitive Services, you are responsible for obtaining sufficient consent from the data subjects. The General Privacy and Security Terms in the Online Services Terms do not apply to these Cognitive Services. Please refer to the Microsoft Cognitive Services section in the [Online Services Terms](https://www.microsoft.com/en-us/Licensing/product-licensing/products.aspx) for details. Microsoft offers policy controls that may be used to [disable new Cognitive Services deployments](https://learn.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account).
---
From 2cc4c6066ef261b0cea095cebbab033e59b33bdd Mon Sep 17 00:00:00 2001
From: Albert Cheng <38804567+ckairen@users.noreply.github.com>
Date: Thu, 12 Dec 2024 14:48:55 -0800
Subject: [PATCH 014/128] [TypeSpec APIView] Running npm ci on both target and
source commit (#31856)
* empty
* empty2
* run npm ci separately for basline and new api view
* error msg from failed tsp compile
* fix main tsp failure
---
eng/pipelines/typespec-apiview.yml | 2 --
eng/scripts/Create-APIView.ps1 | 28 +++++++++++++++++++---------
2 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/eng/pipelines/typespec-apiview.yml b/eng/pipelines/typespec-apiview.yml
index 53ee3e494aca..d97151b4a4f6 100644
--- a/eng/pipelines/typespec-apiview.yml
+++ b/eng/pipelines/typespec-apiview.yml
@@ -19,8 +19,6 @@ jobs:
steps:
- checkout: self
fetchDepth: 0
-
- - template: /eng/pipelines/templates/steps/npm-install.yml
- pwsh: |
. $(Build.SourcesDirectory)/eng/scripts/Create-APIView.ps1
diff --git a/eng/scripts/Create-APIView.ps1 b/eng/scripts/Create-APIView.ps1
index 987781886e45..f219279f1892 100644
--- a/eng/scripts/Create-APIView.ps1
+++ b/eng/scripts/Create-APIView.ps1
@@ -210,7 +210,7 @@ function Invoke-TypeSpecAPIViewParser {
Write-Host "npm exec --no -- tsp compile . --emit=@azure-tools/typespec-apiview --option @azure-tools/typespec-apiview.emitter-output-dir=$tempWorkingDirectoryPath/output/apiview.json"
npm exec --no -- tsp compile . --emit=@azure-tools/typespec-apiview --option @azure-tools/typespec-apiview.emitter-output-dir=$tempWorkingDirectoryPath/output/apiview.json
if ($LASTEXITCODE) {
- throw
+ throw "Compilation error when running: 'npm exec --no -- tsp compile . --emit=@azure-tools/typespec-apiview --option @azure-tools/typespec-apiview.emitter-output-dir=$tempWorkingDirectoryPath/output/apiview.json'"
}
Pop-Location
@@ -220,6 +220,7 @@ function Invoke-TypeSpecAPIViewParser {
Move-Item -Path $generatedAPIViewTokenFile.FullName -Destination $apiViewTokensFilePath -Force > $null
} catch {
LogError " Failed to generate '$Type' APIView Tokens on '$ProjectPath' for '$resourceProvider', please check the detail log and make sure TypeSpec compiler version is the latest."
+ LogError $_
throw
} finally {
if (Test-Path -Path $tempWorkingDirectoryPath) {
@@ -370,6 +371,8 @@ function New-TypeSpecAPIViewTokens {
-BaseCommitish:$SourceCommitId `
-TargetCommitish:$TargetCommitId
+ $typeSpecProjects = $typeSpecProjects | Where-Object {Test-Path -Path "$_/main.tsp"}
+
LogGroupStart " TypeSpec APIView Tokens will be generated for the following configuration files..."
$typeSpecProjects | ForEach-Object {
LogInfo " - $_"
@@ -382,21 +385,28 @@ function New-TypeSpecAPIViewTokens {
New-Item -ItemType Directory -Path $typeSpecAPIViewArtifactsDirectory -Force | Out-Null
try {
- # Generate TypeSpec APIView Tokens
+ npm --version --loglevel info
+
+ # Generate New TypeSpec APIView Tokens
+ git checkout $SourceCommitId
+ Write-Host "Installing required dependencies to generate New API review"
+ npm ci
+ npm ls -a
foreach ($typeSpecProject in $typeSpecProjects) {
$tokenDirectory = [System.IO.Path]::Combine($typeSpecAPIViewArtifactsDirectory, $typeSpecProject.split([IO.Path]::DirectorySeparatorChar)[-1])
New-Item -ItemType Directory -Path $tokenDirectory -Force | Out-Null
-
- # Generate New APIView Token using default tag on base branch
- git checkout $SourceCommitId
Invoke-TypeSpecAPIViewParser -Type "New" -ProjectPath $typeSpecProject -ResourceProvider $($typeSpecProject.split([IO.Path]::DirectorySeparatorChar)[-1]) -TokenDirectory $tokenDirectory
+ }
- # Generate BaseLine APIView Token using same tag on target branch
- git checkout $TargetCommitId
-
+ # Generate Baseline TypeSpec APIView Tokens
+ git checkout $TargetCommitId
+ Write-Host "Installing required dependencies to generate Baseline API review"
+ npm ci
+ npm ls -a
+ foreach ($typeSpecProject in $typeSpecProjects) {
# Skip Baseline APIView Token for new projects
if (!(Test-Path -Path $typeSpecProject)) {
- Write-Host "TypeSpec project $typeSpecProjectDir is not found in pull request target branch. API review will not have a baseline revision."
+ Write-Host "TypeSpec project $typeSpecProject is not found in pull request target branch. API review will not have a baseline revision."
}
else {
Invoke-TypeSpecAPIViewParser -Type "Baseline" -ProjectPath $typeSpecProject -ResourceProvider $($typeSpecProject.split([IO.Path]::DirectorySeparatorChar)[-1]) -TokenDirectory $tokenDirectory | Out-Null
From 67c84bd51ccfca841c39f274b9147347abed3f66 Mon Sep 17 00:00:00 2001
From: Sameeksha Vaity
Date: Thu, 12 Dec 2024 15:39:03 -0800
Subject: [PATCH 015/128] Java specific renames for Document Intelligence
2024-11-30 GA (#31595)
---
.../ai/DocumentIntelligence/client.tsp | 61 +++++++++++++++++++
.../ai/DocumentIntelligence/tspconfig.yaml | 1 +
2 files changed, 62 insertions(+)
diff --git a/specification/ai/DocumentIntelligence/client.tsp b/specification/ai/DocumentIntelligence/client.tsp
index 7d6fa57d30e6..878a7bc56107 100644
--- a/specification/ai/DocumentIntelligence/client.tsp
+++ b/specification/ai/DocumentIntelligence/client.tsp
@@ -69,6 +69,67 @@ interface DocumentIntelligenceAdministrationClient {
deleteClassifier is DocumentClassifiers.deleteClassifier;
}
+@@clientName(AuthorizeClassifierCopyRequest,
+ "AuthorizeClassifierCopyOptions",
+ "java"
+);
+@@clientName(BuildDocumentClassifierRequest,
+ "BuildDocumentClassifierOptions",
+ "java"
+);
+@@clientName(BuildDocumentClassifierRequest.docTypes, "documentTypes", "java");
+@@clientName(BuildDocumentModelRequest, "BuildDocumentModelOptions", "java");
+@@clientName(BuildDocumentModelRequest, "BuildDocumentModelOptions", "java");
+@@clientName(ClassifyDocumentRequest, "ClassifyDocumentOptions", "java");
+@@clientName(AnalyzeDocumentRequest, "AnalyzeDocumentOptions", "java");
+@@clientName(AnalyzeBatchDocumentsRequest,
+ "AnalyzeBatchDocumentsOptions",
+ "java"
+);
+@@clientName(ComposeDocumentModelRequest,
+ "ComposeDocumentModelOptions",
+ "java"
+);
+@@clientName(AuthorizeCopyRequest, "AuthorizeModelCopyOptions", "java");
+@@clientName(AnalyzeOutputOption, "AnalyzeOutputFormat", "java");
+
+@@clientName(DocumentModelDetails.createdDateTime, "createdOn", "java");
+@@clientName(DocumentModelDetails.docTypes, "documentTypes", "java");
+@@clientName(DocumentModelDetails.expirationDateTime, "expiresOn", "java");
+@@clientName(DocumentModelDetails.modifiedDateTime, "modifiedOn", "java");
+@@clientName(ComposeDocumentModelRequest.docTypes, "documentTypes", "java");
+@@clientName(ModelCopyAuthorization.expirationDateTime, "expiresOn", "java");
+@@clientName(AnalyzedDocument.docType, "documentType", "java");
+@@clientName(DocumentClassifierDetails.createdDateTime, "createdOn", "java");
+@@clientName(DocumentClassifierDetails.docTypes, "documentTypes", "java");
+@@clientName(DocumentClassifierDetails.expirationDateTime, "expiresOn", "java");
+@@clientName(DocumentClassifierDetails.modifiedDateTime, "modifiedOn", "java");
+@@clientName(DocumentIntelligenceOperationDetails.createdDateTime,
+ "createdOn",
+ "java"
+);
+@@clientName(DocumentIntelligenceOperationDetails.lastUpdatedDateTime,
+ "lastUpdatedOn",
+ "java"
+);
+@@clientName(ClassifierCopyAuthorization.expirationDateTime,
+ "expiresOn",
+ "java"
+);
+@@clientName(AnalyzeDocumentRequest.base64Source, "bytesSource", "java");
+@@clientName(ClassifyDocumentRequest.base64Source, "bytesSource", "java");
+@@clientName(AnalyzeOperation.createdDateTime, "createdOn", "java");
+@@clientName(AnalyzeOperation.lastUpdatedDateTime, "lastUpdatedOn", "java");
+@@clientName(AnalyzeBatchOperation.createdDateTime, "createdOn", "java");
+@@clientName(AnalyzeBatchOperation.lastUpdatedDateTime,
+ "lastUpdatedOn",
+ "java"
+);
+
+@@clientName(StringIndexType.utf16CodeUnit, "utf16_CodeUnit", "java");
+@@clientName(DocumentBarcodeKind.QRCode, "QR_Code", "java");
+@@clientName(DocumentBarcodeKind.MicroQRCode, "MICRO_QR_CODE", "java");
+
@@clientName(AnalyzeBatchDocumentsRequest,
"AnalyzeBatchDocumentsOptions",
"csharp"
diff --git a/specification/ai/DocumentIntelligence/tspconfig.yaml b/specification/ai/DocumentIntelligence/tspconfig.yaml
index 6b55c75a6913..f511882f911c 100644
--- a/specification/ai/DocumentIntelligence/tspconfig.yaml
+++ b/specification/ai/DocumentIntelligence/tspconfig.yaml
@@ -31,6 +31,7 @@ options:
enable-sync-stack: true
custom-types-subpackage: "implementation.models"
generate-tests: false
+ partial-update: true
customization-class: customization/src/main/java/DocumentIntelligenceCustomizations.java
polling:
buildDocumentModel:
From 751beca551f189bb54a1fbfd673ce748c01d871d Mon Sep 17 00:00:00 2001
From: Yuchao Yan
Date: Fri, 13 Dec 2024 13:28:28 +0800
Subject: [PATCH 016/128] [Python] update configuration for Python SDK (#31872)
* changelog
* python config
---
.../network/resource-manager/readme.python.md | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/specification/network/resource-manager/readme.python.md b/specification/network/resource-manager/readme.python.md
index 5cb74b3b01df..8e49cec5ee01 100644
--- a/specification/network/resource-manager/readme.python.md
+++ b/specification/network/resource-manager/readme.python.md
@@ -19,3 +19,14 @@ only-path-and-body-params-positional: true
no-namespace-folders: true
output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network
```
+
+``` yaml $(python)
+directive:
+ - from: swagger-document
+ where: $
+ transform: $.host = "management.azure.com"
+
+ - from: swagger-document
+ where: $
+ transform: $.schemes = ["https"]
+```
\ No newline at end of file
From 2d06c673ab97b228715c4ea924185998cd34c648 Mon Sep 17 00:00:00 2001
From: Weidong Xu
Date: Fri, 13 Dec 2024 17:02:11 +0800
Subject: [PATCH 017/128] playwrighttesting, add tspconfig for java (#31879)
---
.../PlaywrightTesting.Management/client.tsp | 9 +++++++++
.../PlaywrightTesting.Management/tspconfig.yaml | 4 ++++
2 files changed, 13 insertions(+)
diff --git a/specification/playwrighttesting/PlaywrightTesting.Management/client.tsp b/specification/playwrighttesting/PlaywrightTesting.Management/client.tsp
index cfc0d0b53b2d..d66172dc3f79 100644
--- a/specification/playwrighttesting/PlaywrightTesting.Management/client.tsp
+++ b/specification/playwrighttesting/PlaywrightTesting.Management/client.tsp
@@ -5,10 +5,19 @@ import "@azure-tools/typespec-azure-resource-manager";
using Azure.ClientGenerator.Core;
using Microsoft.AzurePlaywrightService;
+@@clientNamespace(Microsoft.AzurePlaywrightService,
+ "com.azure.resourcemanager.playwrighttesting",
+ "java"
+);
+
@@clientName(Microsoft.AzurePlaywrightService,
"PlaywrightTestingMgmt",
"python"
);
+@@clientName(Microsoft.AzurePlaywrightService,
+ "PlaywrightTestingMgmtClient",
+ "java"
+);
@@clientName(Azure.ResourceManager.CommonTypes.CheckNameAvailabilityResponse,
"PlaywrightTestingNameAvailabilityResult",
diff --git a/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml b/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml
index 70ea56495714..e48aa3ed79e7 100644
--- a/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml
+++ b/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml
@@ -48,3 +48,7 @@ options:
clear-output-folder: true
use-write-core: true
namespace: "{package-dir}"
+ "@azure-tools/typespec-java":
+ package-dir: "azure-resourcemanager-playwrighttesting"
+ flavor: azure
+ service-name: Playwright Testing
From 0a27976a58c16279e827bda36004d1b74b3d922a Mon Sep 17 00:00:00 2001
From: Nneka Okeke
Date: Tue, 10 Dec 2024 15:51:23 -0500
Subject: [PATCH 018/128] update examples
---
.../ScheduledActions_VirtualMachinesExecuteDeallocate.json | 2 +-
.../ScheduledActions_VirtualMachinesExecuteHibernate.json | 2 +-
.../ScheduledActions_VirtualMachinesExecuteDeallocate.json | 2 +-
.../ScheduledActions_VirtualMachinesExecuteHibernate.json | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteDeallocate.json b/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteDeallocate.json
index 6a6bc6dba0a6..5b3adf3805f2 100644
--- a/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteDeallocate.json
+++ b/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteDeallocate.json
@@ -8,7 +8,7 @@
"requestBody": {
"executionParameters": {
"retryPolicy": {
- "retryCount": 27,
+ "retryCount": 4,
"retryWindowInMinutes": 27
}
},
diff --git a/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteHibernate.json b/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteHibernate.json
index d2acec1f0ce9..db416ffbc7c9 100644
--- a/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteHibernate.json
+++ b/specification/computeschedule/ComputeSchedule.Management/examples/2024-10-01/ScheduledActions_VirtualMachinesExecuteHibernate.json
@@ -8,7 +8,7 @@
"requestBody": {
"executionParameters": {
"retryPolicy": {
- "retryCount": 27,
+ "retryCount": 5,
"retryWindowInMinutes": 27
}
},
diff --git a/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteDeallocate.json b/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteDeallocate.json
index 6a6bc6dba0a6..5b3adf3805f2 100644
--- a/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteDeallocate.json
+++ b/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteDeallocate.json
@@ -8,7 +8,7 @@
"requestBody": {
"executionParameters": {
"retryPolicy": {
- "retryCount": 27,
+ "retryCount": 4,
"retryWindowInMinutes": 27
}
},
diff --git a/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteHibernate.json b/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteHibernate.json
index d2acec1f0ce9..db416ffbc7c9 100644
--- a/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteHibernate.json
+++ b/specification/computeschedule/resource-manager/Microsoft.ComputeSchedule/stable/2024-10-01/examples/ScheduledActions_VirtualMachinesExecuteHibernate.json
@@ -8,7 +8,7 @@
"requestBody": {
"executionParameters": {
"retryPolicy": {
- "retryCount": 27,
+ "retryCount": 5,
"retryWindowInMinutes": 27
}
},
From 24319eea6d468397e2801213caaa7d364539b2b9 Mon Sep 17 00:00:00 2001
From: Libba Lawrence
Date: Fri, 13 Dec 2024 14:05:21 -0800
Subject: [PATCH 019/128] [EG] Container Registry required/optional (#30778)
* regen with required/optional cr
* missed on
---
.../ContainerRegistry.tsp | 32 +++++++--------
.../2018-01-01/GeneratedSystemEvents.json | 39 +++++++++++++------
.../2024-01-01/GeneratedSystemEvents.json | 39 +++++++++++++------
3 files changed, 72 insertions(+), 38 deletions(-)
diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ContainerRegistry/ContainerRegistry.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ContainerRegistry/ContainerRegistry.tsp
index 5f71f3c4d0fb..a64c0950a410 100644
--- a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ContainerRegistry/ContainerRegistry.tsp
+++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ContainerRegistry/ContainerRegistry.tsp
@@ -25,17 +25,17 @@ model ContainerRegistryChartDeletedEventData
alias ContainerRegistryBaseEventData = {
/** The event ID. */
- id?: string;
+ id: string;
/** The time at which the event occurred. */
@madeRequired(ServiceApiVersions.v2024_01_01)
timestamp: utcDateTime;
/** The action that encompasses the provided event. */
- action?: string;
+ action: string;
/** The location of the event. */
- location?: string;
+ location: string;
};
/** The content of the event request message. */
@@ -46,16 +46,16 @@ model ContainerRegistryEventData {
target: ContainerRegistryEventTarget;
/** The request that generated the event. */
- request: ContainerRegistryEventRequest;
+ request?: ContainerRegistryEventRequest;
/** The agent that initiated the event. For most situations, this could be from the authorization context of the request. */
- actor: ContainerRegistryEventActor;
+ actor?: ContainerRegistryEventActor;
/** The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it. */
- source: ContainerRegistryEventSource;
+ source?: ContainerRegistryEventSource;
/** The connected registry information if the event is generated by a connected registry. */
- connectedRegistry: ContainerRegistryEventConnectedRegistry;
+ connectedRegistry?: ContainerRegistryEventConnectedRegistry;
}
/** The content of the event request message. */
@@ -66,13 +66,13 @@ model ContainerRegistryArtifactEventData {
target: ContainerRegistryArtifactEventTarget;
/** The connected registry information if the event is generated by a connected registry. */
- connectedRegistry: ContainerRegistryEventConnectedRegistry;
+ connectedRegistry?: ContainerRegistryEventConnectedRegistry;
}
/** The target of the event. */
model ContainerRegistryEventTarget {
/** The MIME type of the referenced object. */
- mediaType?: string;
+ mediaType: string;
/** The number of bytes of the content. Same as Length field. */
size?: int64;
@@ -84,7 +84,7 @@ model ContainerRegistryEventTarget {
length?: int64;
/** The repository name. */
- repository?: string;
+ repository: string;
/** The direct URL to the content. */
url?: string;
@@ -113,16 +113,16 @@ model ContainerRegistryArtifactEventTarget {
/** The request that generated the event. */
model ContainerRegistryEventRequest {
/** The ID of the request that initiated the event. */
- id?: string;
+ id: string;
/** The IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request. */
addr?: string;
/** The externally accessible hostname of the registry instance, as specified by the http host header on incoming requests. */
- host?: string;
+ host: string;
/** The request method that generated the event. */
- method?: string;
+ method: string;
/** The user agent header of the request. */
useragent?: string;
@@ -147,7 +147,7 @@ model ContainerRegistryEventSource {
/** The connected registry information if the event is generated by a connected registry. */
model ContainerRegistryEventConnectedRegistry {
/** The name of the connected registry that generated this event. */
- name?: string;
+ name: string;
}
alias ContainerRegistryBaseEventTarget<
@@ -158,7 +158,7 @@ alias ContainerRegistryBaseEventTarget<
Ttag extends valueof string
> = {
@doc(TmediaType)
- mediaType?: string;
+ mediaType: string;
@doc(Tsize)
size?: int64;
@@ -167,7 +167,7 @@ alias ContainerRegistryBaseEventTarget<
digest?: string;
@doc(Trepository)
- repository?: string;
+ repository: string;
@doc(Ttag)
tag?: string;
diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
index b56665d45be9..1a098c83a2c7 100644
--- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
+++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
@@ -3353,8 +3353,10 @@
}
},
"required": [
- "target",
- "connectedRegistry"
+ "id",
+ "action",
+ "location",
+ "target"
]
},
"ContainerRegistryArtifactEventTarget": {
@@ -3390,7 +3392,11 @@
"type": "string",
"description": "The version of the artifact."
}
- }
+ },
+ "required": [
+ "mediaType",
+ "repository"
+ ]
},
"ContainerRegistryChartDeletedEventData": {
"type": "object",
@@ -3428,7 +3434,10 @@
"type": "string",
"description": "The name of the connected registry that generated this event."
}
- }
+ },
+ "required": [
+ "name"
+ ]
},
"ContainerRegistryEventData": {
"type": "object",
@@ -3473,11 +3482,10 @@
}
},
"required": [
- "target",
- "request",
- "actor",
- "source",
- "connectedRegistry"
+ "id",
+ "action",
+ "location",
+ "target"
]
},
"ContainerRegistryEventRequest": {
@@ -3504,7 +3512,12 @@
"type": "string",
"description": "The user agent header of the request."
}
- }
+ },
+ "required": [
+ "id",
+ "host",
+ "method"
+ ]
},
"ContainerRegistryEventSource": {
"type": "object",
@@ -3554,7 +3567,11 @@
"type": "string",
"description": "The tag name."
}
- }
+ },
+ "required": [
+ "mediaType",
+ "repository"
+ ]
},
"ContainerRegistryImageDeletedEventData": {
"type": "object",
diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
index 6a5fdd019b84..1c602b3cd8e2 100644
--- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
+++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
@@ -3418,9 +3418,11 @@
}
},
"required": [
+ "id",
"timestamp",
- "target",
- "connectedRegistry"
+ "action",
+ "location",
+ "target"
]
},
"ContainerRegistryArtifactEventTarget": {
@@ -3456,7 +3458,11 @@
"type": "string",
"description": "The version of the artifact."
}
- }
+ },
+ "required": [
+ "mediaType",
+ "repository"
+ ]
},
"ContainerRegistryChartDeletedEventData": {
"type": "object",
@@ -3494,7 +3500,10 @@
"type": "string",
"description": "The name of the connected registry that generated this event."
}
- }
+ },
+ "required": [
+ "name"
+ ]
},
"ContainerRegistryEventData": {
"type": "object",
@@ -3539,12 +3548,11 @@
}
},
"required": [
+ "id",
"timestamp",
- "target",
- "request",
- "actor",
- "source",
- "connectedRegistry"
+ "action",
+ "location",
+ "target"
]
},
"ContainerRegistryEventRequest": {
@@ -3571,7 +3579,12 @@
"type": "string",
"description": "The user agent header of the request."
}
- }
+ },
+ "required": [
+ "id",
+ "host",
+ "method"
+ ]
},
"ContainerRegistryEventSource": {
"type": "object",
@@ -3621,7 +3634,11 @@
"type": "string",
"description": "The tag name."
}
- }
+ },
+ "required": [
+ "mediaType",
+ "repository"
+ ]
},
"ContainerRegistryImageDeletedEventData": {
"type": "object",
From 495c99982b1231e229c9f6309602d0f10d35730d Mon Sep 17 00:00:00 2001
From: Libba Lawrence
Date: Fri, 13 Dec 2024 14:05:40 -0800
Subject: [PATCH 020/128] [EG] Resource Notifications required/optional
(#31334)
* update
* addd
---
.../Microsoft.ResourceNotifications/common.tsp | 18 +++++++++---------
.../2018-01-01/GeneratedSystemEvents.json | 15 +++++++++++----
.../2024-01-01/GeneratedSystemEvents.json | 15 +++++++++++----
3 files changed, 31 insertions(+), 17 deletions(-)
diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ResourceNotifications/common.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ResourceNotifications/common.tsp
index 356eff3542df..6227eee3f518 100644
--- a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ResourceNotifications/common.tsp
+++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.ResourceNotifications/common.tsp
@@ -12,23 +12,23 @@ across all ARN system topic events
*/
model ResourceNotificationsResourceUpdatedDetails {
/** id of the resource for which the event is being emitted */
- id?: string;
+ id: string;
/** name of the resource for which the event is being emitted */
- name?: string;
+ name: string;
/** the type of the resource for which the event is being emitted */
- type?: string;
+ type: string;
/** the location of the resource for which the event is being emitted */
location?: string;
/** the tags on the resource for which the event is being emitted */
- tags: Record;
+ tags?: Record;
/** properties in the payload of the resource for which the event is being emitted */
#suppress "@azure-tools/typespec-azure-core/bad-record-type" "The type of properties is object with additionalProperties object"
- properties: Record;
+ properties?: Record;
}
/** details of operational info */
@@ -48,7 +48,7 @@ model ResourceNotificationsResourceUpdatedEventData {
operationalInfo: ResourceNotificationsOperationalDetails;
/** api version of the resource properties bag */
- apiVersion?: string;
+ apiVersion: string;
}
/**
@@ -57,13 +57,13 @@ across all ARN system topic delete events
*/
model ResourceNotificationsResourceDeletedDetails {
/** id of the resource for which the event is being emitted */
- id?: string;
+ id: string;
/** name of the resource for which the event is being emitted */
- name?: string;
+ name: string;
/** the type of the resource for which the event is being emitted */
- type?: string;
+ type: string;
}
/**
diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
index 1a098c83a2c7..7e53e9960093 100644
--- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
+++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
@@ -6904,7 +6904,12 @@
"type": "string",
"description": "the type of the resource for which the event is being emitted"
}
- }
+ },
+ "required": [
+ "id",
+ "name",
+ "type"
+ ]
},
"ResourceNotificationsResourceDeletedEventData": {
"type": "object",
@@ -6978,8 +6983,9 @@
}
},
"required": [
- "tags",
- "properties"
+ "id",
+ "name",
+ "type"
]
},
"ResourceNotificationsResourceUpdatedEventData": {
@@ -7003,7 +7009,8 @@
},
"required": [
"resourceInfo",
- "operationalInfo"
+ "operationalInfo",
+ "apiVersion"
]
},
"ResourceWriteCancelEventData": {
diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
index 1c602b3cd8e2..224b84e4b98b 100644
--- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
+++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
@@ -7031,7 +7031,12 @@
"type": "string",
"description": "the type of the resource for which the event is being emitted"
}
- }
+ },
+ "required": [
+ "id",
+ "name",
+ "type"
+ ]
},
"ResourceNotificationsResourceDeletedEventData": {
"type": "object",
@@ -7105,8 +7110,9 @@
}
},
"required": [
- "tags",
- "properties"
+ "id",
+ "name",
+ "type"
]
},
"ResourceNotificationsResourceUpdatedEventData": {
@@ -7130,7 +7136,8 @@
},
"required": [
"resourceInfo",
- "operationalInfo"
+ "operationalInfo",
+ "apiVersion"
]
},
"ResourceWriteCancelEventData": {
From 58740206b853320974ef5e4864f7be8120b15a27 Mon Sep 17 00:00:00 2001
From: Libba Lawrence
Date: Fri, 13 Dec 2024 16:20:54 -0800
Subject: [PATCH 021/128] required (#30758)
Co-authored-by: Laurent Mazuel
---
.../Microsoft.SignalRService/SignalRService.tsp | 4 ++--
.../stable/2018-01-01/GeneratedSystemEvents.json | 12 ++++++++++--
.../stable/2024-01-01/GeneratedSystemEvents.json | 8 ++++++--
3 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.SignalRService/SignalRService.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.SignalRService/SignalRService.tsp
index 332188465cc4..abc999e2aad4 100644
--- a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.SignalRService/SignalRService.tsp
+++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Microsoft.SignalRService/SignalRService.tsp
@@ -24,10 +24,10 @@ namespace Microsoft.EventGrid.SystemEvents {
timestamp: utcDateTime;
/** The hub of connected client connection. */
- hubName?: string;
+ hubName: string;
/** The connection Id of connected client connection. */
- connectionId?: string;
+ connectionId: string;
/** The user Id of connected client connection. */
userId?: string;
diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
index 7e53e9960093..60a997e9bee1 100644
--- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
+++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2018-01-01/GeneratedSystemEvents.json
@@ -7372,7 +7372,11 @@
"type": "string",
"description": "The user Id of connected client connection."
}
- }
+ },
+ "required": [
+ "hubName",
+ "connectionId"
+ ]
},
"SignalRServiceClientConnectionDisconnectedEventData": {
"type": "object",
@@ -7399,7 +7403,11 @@
"type": "string",
"description": "The message of error that cause the client connection disconnected."
}
- }
+ },
+ "required": [
+ "hubName",
+ "connectionId"
+ ]
},
"StampKind": {
"type": "string",
diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
index 224b84e4b98b..7d18fde4a6ea 100644
--- a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
+++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/GeneratedSystemEvents.json
@@ -7501,7 +7501,9 @@
}
},
"required": [
- "timestamp"
+ "timestamp",
+ "hubName",
+ "connectionId"
]
},
"SignalRServiceClientConnectionDisconnectedEventData": {
@@ -7531,7 +7533,9 @@
}
},
"required": [
- "timestamp"
+ "timestamp",
+ "hubName",
+ "connectionId"
]
},
"StampKind": {
From ada2aba3ac674ba632c07571421d64484230289a Mon Sep 17 00:00:00 2001
From: Aviv Haddad
Date: Mon, 16 Dec 2024 13:05:17 +0200
Subject: [PATCH 022/128] Removing deprecated api's (#31836)
* remove deprecated api's
* update the readme file
* fix another readme
* revert and test
* change readme file again
* remove just package preview
* revert
* read
---
.../AlertProcessingRules.json | 871 -----------------
...tion_group_all_alerts_in_subscription.json | 93 --
...ules_Create_or_update_add_correlation.json | 108 ---
...ups_all_Sev0_Sev1_two_resource_groups.json | 129 ---
...ction_groups_from_specific_alert_rule.json | 111 ---
..._action_groups_outside_business_hours.json | 135 ---
...n_groups_recurring_maintenance_window.json | 156 ---
...pecific_VM_one-off_maintenance_window.json | 99 --
.../examples/AlertProcessingRules_Delete.json | 12 -
.../AlertProcessingRules_GetById.json | 96 --
...ertProcessingRules_List_ResourceGroup.json | 135 ---
...lertProcessingRules_List_Subscription.json | 126 ---
.../examples/AlertProcessingRules_Patch.json | 92 --
.../AlertProcessingRules.json | 911 ------------------
...tion_group_all_alerts_in_subscription.json | 93 --
...ules_Create_or_update_add_correlation.json | 108 ---
..._correlation_with_correlation_updates.json | 132 ---
...ups_all_Sev0_Sev1_two_resource_groups.json | 129 ---
...ction_groups_from_specific_alert_rule.json | 111 ---
..._action_groups_outside_business_hours.json | 135 ---
...n_groups_recurring_maintenance_window.json | 156 ---
...pecific_VM_one-off_maintenance_window.json | 99 --
.../examples/AlertProcessingRules_Delete.json | 12 -
.../AlertProcessingRules_GetById.json | 96 --
...ertProcessingRules_List_ResourceGroup.json | 135 ---
...lertProcessingRules_List_Subscription.json | 126 ---
.../examples/AlertProcessingRules_Patch.json | 92 --
.../resource-manager/readme.md | 22 +-
28 files changed, 1 insertion(+), 4519 deletions(-)
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/AlertProcessingRules.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Delete.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_GetById.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_Subscription.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Patch.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/AlertProcessingRules.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation_with_correlation_updates.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Delete.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_GetById.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_Subscription.json
delete mode 100644 specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Patch.json
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/AlertProcessingRules.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/AlertProcessingRules.json
deleted file mode 100644
index 061fdf3f1ea1..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/AlertProcessingRules.json
+++ /dev/null
@@ -1,871 +0,0 @@
-{
- "swagger": "2.0",
- "info": {
- "version": "2023-05-01-preview",
- "title": "Azure Alerts Management Service Resource Provider",
- "description": "APIs for Azure alert processing rules CRUD operations."
- },
- "host": "management.azure.com",
- "schemes": [
- "https"
- ],
- "consumes": [
- "application/json"
- ],
- "produces": [
- "application/json"
- ],
- "securityDefinitions": {
- "azure_auth": {
- "type": "oauth2",
- "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
- "flow": "implicit",
- "description": "Azure Active Directory OAuth2 Flow",
- "scopes": {
- "user_impersonation": "impersonate your user account"
- }
- }
- },
- "paths": {
- "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/actionRules": {
- "get": {
- "description": "List all alert processing rules in a subscription.",
- "operationId": "AlertProcessingRules_ListBySubscription",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Return the list of alert processing rules.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRulesList"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "GetAlertProcessingRulesSubscriptionWide": {
- "$ref": "./examples/AlertProcessingRules_List_Subscription.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AlertsManagement/actionRules": {
- "get": {
- "operationId": "AlertProcessingRules_ListByResourceGroup",
- "description": "List all alert processing rules in a resource group.",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Return the list of alert processing rules.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRulesList"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "GetAlertProcessingRulesResourceGroupWide": {
- "$ref": "./examples/AlertProcessingRules_List_ResourceGroup.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AlertsManagement/actionRules/{alertProcessingRuleName}": {
- "get": {
- "description": "Get an alert processing rule by name.",
- "operationId": "AlertProcessingRules_GetByName",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name of the alert processing rule that needs to be fetched.",
- "required": true,
- "type": "string"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Returns the specific alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "GetAlertProcessingRuleById": {
- "$ref": "./examples/AlertProcessingRules_GetById.json"
- }
- }
- },
- "put": {
- "operationId": "AlertProcessingRules_CreateOrUpdate",
- "description": "Create or update an alert processing rule.",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name of the alert processing rule that needs to be created/updated.",
- "required": true,
- "type": "string"
- },
- {
- "name": "alertProcessingRule",
- "in": "body",
- "description": "Alert processing rule to be created/updated.",
- "required": true,
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Returns the updated alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "201": {
- "description": "Created. Returns the created alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Create or update a rule that adds an action group to all alerts in a subscription": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json"
- },
- "Create or update a rule that adds two action groups to all Sev0 and Sev1 alerts in two resource groups": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json"
- },
- "Create or update a rule that removes all action groups from alerts on a specific VM during a one-off maintenance window (1800-2000 at a specific date, Pacific Standard Time)": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json"
- },
- "Create or update a rule that removes all action groups from all alerts on any VM in two resource groups during a recurring maintenance window (2200-0400 every Sat and Sun, India Standard Time)": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json"
- },
- "Create or update a rule that removes all action groups outside business hours (Mon-Fri 09:00-17:00, Eastern Standard Time)": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json"
- },
- "Create or update a rule that removes all action groups from all alerts in a subscription coming from a specific alert rule": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json"
- },
- "Create or update a rule that adds alerts correlation": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_correlation.json"
- }
- }
- },
- "delete": {
- "description": "Delete an alert processing rule.",
- "operationId": "AlertProcessingRules_Delete",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name of the alert processing rule that needs to be deleted.",
- "required": true,
- "type": "string"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "Successful request to delete an alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- }
- },
- "204": {
- "description": "No content: the request was successful, but the response is empty.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "DeleteAlertProcessingRule": {
- "$ref": "./examples/AlertProcessingRules_Delete.json"
- }
- }
- },
- "patch": {
- "description": "Enable, disable, or update tags for an alert processing rule.",
- "operationId": "AlertProcessingRules_Update",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name that needs to be updated.",
- "required": true,
- "type": "string"
- },
- {
- "name": "alertProcessingRulePatch",
- "in": "body",
- "required": true,
- "schema": {
- "$ref": "#/definitions/PatchObject"
- },
- "description": "Parameters supplied to the operation."
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Returns the created/updated alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "PatchAlertProcessingRule": {
- "$ref": "./examples/AlertProcessingRules_Patch.json"
- }
- }
- }
- }
- },
- "parameters": {
- "subscriptionId": {
- "name": "subscriptionId",
- "in": "path",
- "required": true,
- "type": "string",
- "description": "The ID of the target subscription.",
- "minLength": 1
- },
- "resourceGroupName": {
- "name": "resourceGroupName",
- "description": "Resource group name where the resource is created.",
- "type": "string",
- "in": "path",
- "required": true,
- "x-ms-parameter-location": "method"
- }
- },
- "definitions": {
- "errorResponse": {
- "description": "An error response from the service.",
- "properties": {
- "error": {
- "$ref": "#/definitions/errorResponseBody"
- }
- }
- },
- "errorResponseBody": {
- "description": "Details of error response.",
- "properties": {
- "code": {
- "type": "string",
- "description": "Error code, intended to be consumed programmatically."
- },
- "message": {
- "type": "string",
- "description": "Description of the error, intended for display in user interface."
- },
- "target": {
- "type": "string",
- "description": "Target of the particular error, for example name of the property."
- },
- "details": {
- "type": "array",
- "description": "A list of additional details about the error.",
- "items": {
- "$ref": "#/definitions/errorResponseBody"
- }
- }
- }
- },
- "Resource": {
- "x-ms-azure-resource": true,
- "description": "An azure resource object",
- "properties": {
- "id": {
- "type": "string",
- "readOnly": true,
- "description": "Azure resource Id"
- },
- "type": {
- "type": "string",
- "readOnly": true,
- "description": "Azure resource type"
- },
- "name": {
- "type": "string",
- "readOnly": true,
- "description": "Azure resource name"
- }
- }
- },
- "ManagedResource": {
- "description": "An azure managed resource object.",
- "allOf": [
- {
- "$ref": "#/definitions/Resource"
- }
- ],
- "properties": {
- "location": {
- "type": "string",
- "description": "Resource location",
- "x-ms-mutability": [
- "create",
- "read"
- ]
- },
- "tags": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "Resource tags"
- }
- },
- "required": [
- "location"
- ]
- },
- "Scopes": {
- "type": "array",
- "description": "List of ARM IDs which will be the target of the given alert processing rule.",
- "items": {
- "type": "string"
- }
- },
- "Condition": {
- "type": "object",
- "description": "Condition to trigger an alert processing rule.",
- "properties": {
- "field": {
- "type": "string",
- "description": "Field for a given condition.",
- "enum": [
- "Severity",
- "MonitorService",
- "MonitorCondition",
- "SignalType",
- "TargetResourceType",
- "TargetResource",
- "TargetResourceGroup",
- "AlertRuleId",
- "AlertRuleName",
- "Description",
- "AlertContext"
- ],
- "x-ms-enum": {
- "name": "Field",
- "modelAsString": true
- }
- },
- "operator": {
- "type": "string",
- "description": "Operator for a given condition.",
- "enum": [
- "Equals",
- "NotEquals",
- "Contains",
- "DoesNotContain"
- ],
- "x-ms-enum": {
- "name": "Operator",
- "modelAsString": true
- }
- },
- "values": {
- "type": "array",
- "description": "List of values to match for a given condition.",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "Conditions": {
- "type": "array",
- "description": "Conditions in alert instance to be matched for a given alert processing rule. Default value is all. Multiple values could be provided with comma separation.",
- "items": {
- "$ref": "#/definitions/Condition"
- }
- },
- "Schedule": {
- "type": "object",
- "description": "Scheduling configuration for a given alert processing rule.",
- "properties": {
- "effectiveFrom": {
- "type": "string",
- "pattern": "^(?:(\\d{4}-\\d{2}-\\d{2})T(\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?))$",
- "description": "Scheduling effective from time. Date-Time in ISO-8601 format without timezone suffix."
- },
- "effectiveUntil": {
- "type": "string",
- "pattern": "^(?:(\\d{4}-\\d{2}-\\d{2})T(\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?))$",
- "description": "Scheduling effective until time. Date-Time in ISO-8601 format without timezone suffix."
- },
- "timeZone": {
- "type": "string",
- "description": "Scheduling time zone."
- },
- "recurrences": {
- "type": "array",
- "description": "List of recurrences.",
- "items": {
- "$ref": "#/definitions/Recurrence"
- }
- }
- }
- },
- "Recurrence": {
- "type": "object",
- "description": "Recurrence object.",
- "discriminator": "recurrenceType",
- "required": [
- "recurrenceType"
- ],
- "properties": {
- "recurrenceType": {
- "type": "string",
- "description": "Specifies when the recurrence should be applied.",
- "enum": [
- "Daily",
- "Weekly",
- "Monthly"
- ],
- "x-ms-enum": {
- "name": "RecurrenceType",
- "modelAsString": true
- }
- },
- "startTime": {
- "type": "string",
- "description": "Start time for recurrence."
- },
- "endTime": {
- "type": "string",
- "description": "End time for recurrence."
- }
- }
- },
- "DailyRecurrence": {
- "x-ms-discriminator-value": "Daily",
- "type": "object",
- "description": "Daily recurrence object.",
- "required": [
- "startTime",
- "endTime"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Recurrence"
- }
- ]
- },
- "WeeklyRecurrence": {
- "x-ms-discriminator-value": "Weekly",
- "type": "object",
- "description": "Weekly recurrence object.",
- "required": [
- "daysOfWeek"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Recurrence"
- }
- ],
- "properties": {
- "daysOfWeek": {
- "type": "array",
- "description": "Specifies the values for weekly recurrence pattern.",
- "items": {
- "$ref": "#/definitions/DaysOfWeek"
- }
- }
- }
- },
- "MonthlyRecurrence": {
- "x-ms-discriminator-value": "Monthly",
- "type": "object",
- "description": "Monthly recurrence object.",
- "required": [
- "daysOfMonth"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Recurrence"
- }
- ],
- "properties": {
- "daysOfMonth": {
- "type": "array",
- "description": "Specifies the values for monthly recurrence pattern.",
- "items": {
- "type": "integer",
- "format": "int32"
- }
- }
- }
- },
- "DaysOfWeek": {
- "type": "string",
- "description": "Days of week.",
- "enum": [
- "Sunday",
- "Monday",
- "Tuesday",
- "Wednesday",
- "Thursday",
- "Friday",
- "Saturday"
- ],
- "x-ms-enum": {
- "name": "DaysOfWeek",
- "modelAsString": true
- }
- },
- "AlertProcessingRule": {
- "type": "object",
- "description": "Alert processing rule object containing target scopes, conditions and scheduling logic.",
- "allOf": [
- {
- "$ref": "#/definitions/ManagedResource"
- }
- ],
- "properties": {
- "properties": {
- "description": "Alert processing rule properties.",
- "$ref": "#/definitions/AlertProcessingRuleProperties"
- },
- "systemData": {
- "description": "Alert processing rule system data.",
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData"
- }
- }
- },
- "AlertProcessingRuleProperties": {
- "type": "object",
- "description": "Alert processing rule properties defining scopes, conditions and scheduling logic for alert processing rule.",
- "required": [
- "scopes",
- "actions"
- ],
- "properties": {
- "scopes": {
- "description": "Scopes on which alert processing rule will apply.",
- "$ref": "#/definitions/Scopes"
- },
- "conditions": {
- "description": "Conditions on which alerts will be filtered.",
- "$ref": "#/definitions/Conditions"
- },
- "schedule": {
- "description": "Scheduling for alert processing rule.",
- "$ref": "#/definitions/Schedule"
- },
- "actions": {
- "type": "array",
- "description": "Actions to be applied.",
- "items": {
- "$ref": "#/definitions/Action"
- }
- },
- "description": {
- "type": "string",
- "description": "Description of alert processing rule."
- },
- "enabled": {
- "type": "boolean",
- "default": true,
- "description": "Indicates if the given alert processing rule is enabled or disabled."
- }
- }
- },
- "Action": {
- "type": "object",
- "description": "Action to be applied.",
- "discriminator": "actionType",
- "required": [
- "actionType"
- ],
- "properties": {
- "actionType": {
- "type": "string",
- "description": "Action that should be applied.",
- "enum": [
- "AddActionGroups",
- "RemoveAllActionGroups",
- "CorrelateAlerts"
- ],
- "x-ms-enum": {
- "name": "actionType",
- "modelAsString": true
- }
- }
- }
- },
- "AddActionGroups": {
- "x-ms-discriminator-value": "AddActionGroups",
- "type": "object",
- "description": "Add action groups to alert processing rule.",
- "required": [
- "actionGroupIds"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Action"
- }
- ],
- "properties": {
- "actionGroupIds": {
- "description": "List of action group Ids to add to alert processing rule.",
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "RemoveAllActionGroups": {
- "x-ms-discriminator-value": "RemoveAllActionGroups",
- "type": "object",
- "description": "Indicates if all action groups should be removed.",
- "allOf": [
- {
- "$ref": "#/definitions/Action"
- }
- ]
- },
- "CorrelateAlerts": {
- "x-ms-discriminator-value": "CorrelateAlerts",
- "type": "object",
- "description": "Add logic for alerts correlation.",
- "required": [
- "correlateBy",
- "correlationInterval",
- "priority"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Action"
- }
- ],
- "properties": {
- "correlateBy": {
- "type": "array",
- "description": "The list of conditions for the alerts correlations.",
- "items": {
- "$ref": "#/definitions/CorrelateBy"
- },
- "x-ms-identifiers": []
- },
- "correlationInterval": {
- "type": "string",
- "description": "The required duration (in ISO8601 format) for the alerts correlation."
- },
- "priority": {
- "type": "integer",
- "format": "int32",
- "description": "The priority of this correlation."
- },
- "notificationsForCorrelatedAlerts": {
- "type": "string",
- "default": "SuppressAlways",
- "description": "Indicates how to handle child alerts notifications.",
- "enum": [
- "NotifyAlways",
- "SuppressAlways"
- ],
- "x-ms-enum": {
- "name": "NotificationsForCorrelatedAlerts",
- "modelAsString": true
- }
- }
- }
- },
- "CorrelateBy": {
- "type": "object",
- "description": "The logic for the correlation.",
- "properties": {
- "field": {
- "type": "string",
- "description": "The JPath of the property that the alerts should be correlated by."
- }
- }
- },
- "AlertProcessingRulesList": {
- "type": "object",
- "description": "List of alert processing rules.",
- "properties": {
- "nextLink": {
- "type": "string",
- "description": "URL to fetch the next set of alert processing rules."
- },
- "value": {
- "type": "array",
- "description": "List of alert processing rules.",
- "items": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- }
- }
- },
- "PatchProperties": {
- "description": "Alert processing rule properties supported by patch.",
- "properties": {
- "enabled": {
- "type": "boolean",
- "description": "Indicates if the given alert processing rule is enabled or disabled."
- }
- }
- },
- "PatchObject": {
- "description": "Data contract for patch.",
- "properties": {
- "properties": {
- "x-ms-client-flatten": true,
- "description": "Properties supported by patch operation.",
- "$ref": "#/definitions/PatchProperties"
- },
- "tags": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "Tags to be updated."
- }
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json
deleted file mode 100644
index 32b4fc1d28be..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json
+++ /dev/null
@@ -1,93 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "AddActionGroupToSubscription",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/ActionGroup1"
- ]
- }
- ],
- "description": "Add ActionGroup1 to all alerts in the subscription",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/ActionGroup1"
- ]
- }
- ],
- "description": "Add ActionGroup1 to all alerts in the subscription",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupToSubscription",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupToSubscription",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/ActionGroup1"
- ]
- }
- ],
- "description": "Add ActionGroup1 to all alerts in the subscription",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupToSubscription",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupToSubscription",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
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
deleted file mode 100644
index 8fde816481be..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "CorrelateAlerts",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways"
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways"
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/CorrelateAlerts",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "CorrelateAlerts",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways"
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/CorrelateAlerts",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "CorrelateAlerts",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json
deleted file mode 100644
index ae6e9c54d3d3..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json
+++ /dev/null
@@ -1,129 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "AddActionGroupsBySeverity",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "sev0",
- "sev1"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- ],
- "description": "Add AGId1 and AGId2 to all Sev0 and Sev1 alerts in these resourceGroups",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-13T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "sev0",
- "sev1"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- ],
- "description": "Add AGId1 and AGId2 to all Sev0 and Sev1 alerts in these resourceGroups",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupsBySeverity",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupsBySeverity",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-13T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "sev0",
- "sev1"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- ],
- "description": "Add AGId1 and AGId2 to all Sev0 and Sev1 alerts in these resourceGroups",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupsBySeverity",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupsBySeverity",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json
deleted file mode 100644
index 8a6297b88e2c..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json
+++ /dev/null
@@ -1,111 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsSpecificAlertRule",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "conditions": [
- {
- "field": "AlertRuleId",
- "operator": "Equals",
- "values": [
- "/subscriptions/suubId1/resourceGroups/Rgid2/providers/microsoft.insights/activityLogAlerts/RuleName"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Removes all ActionGroups from all Alerts that fire on above AlertRule",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "conditions": [
- {
- "field": "AlertRuleId",
- "operator": "Equals",
- "values": [
- "/subscriptions/suubId1/resourceGroups/Rgid2/providers/microsoft.insights/activityLogAlerts/RuleName"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Removes all ActionGroups from all Alerts that fire on above AlertRule",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsSpecificAlertRule",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsSpecificAlertRule",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "conditions": [
- {
- "field": "AlertRuleId",
- "operator": "Equals",
- "values": [
- "/subscriptions/suubId1/resourceGroups/Rgid2/providers/microsoft.insights/activityLogAlerts/RuleName"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Removes all ActionGroups from all Alerts that fire on above AlertRule",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsSpecificAlertRule",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsSpecificAlertRule",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json
deleted file mode 100644
index 50a9d0e3ba95..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json
+++ /dev/null
@@ -1,135 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsOutsideBusinessHours",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "Eastern Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "17:00:00",
- "endTime": "09:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups outside business hours",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "Eastern Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "17:00:00",
- "endTime": "09:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups outside business hours",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsOutsideBusinessHours",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsOutsideBusinessHours",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "Eastern Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "17:00:00",
- "endTime": "09:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups outside business hours",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsOutsideBusinessHours",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsOutsideBusinessHours",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json
deleted file mode 100644
index f8565f60ba12..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json
+++ /dev/null
@@ -1,156 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsRecurringMaintenance",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "TargetResourceType",
- "operator": "Equals",
- "values": [
- "microsoft.compute/virtualmachines"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "India Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "22:00:00",
- "endTime": "04:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups from all Vitual machine Alerts during the recurring maintenance",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "TargetResourceType",
- "operator": "Equals",
- "values": [
- "microsoft.compute/virtualmachines"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "India Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "22:00:00",
- "endTime": "04:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups from all Vitual machine Alerts during the recurring maintenance",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsRecurringMaintenance",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsRecurringMaintenance",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "TargetResourceType",
- "operator": "Equals",
- "values": [
- "microsoft.compute/virtualmachines"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "India Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "22:00:00",
- "endTime": "04:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups from all Vitual machine Alerts during the recurring maintenance",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsRecurringMaintenance",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsRecurringMaintenance",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json
deleted file mode 100644
index 6af7e683b7e6..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json
+++ /dev/null
@@ -1,99 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsMaintenanceWindow",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1/providers/Microsoft.Compute/virtualMachines/VMName"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "effectiveFrom": "2021-04-15T18:00:00",
- "effectiveUntil": "2021-04-15T20:00:00",
- "timeZone": "Pacific Standard Time"
- },
- "description": "Removes all ActionGroups from all Alerts on VMName during the maintenance window",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T20:13:29Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1/providers/Microsoft.Compute/virtualMachines/VMName"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "effectiveFrom": "2021-04-15T18:00:00",
- "effectiveUntil": "2021-04-15T20:00:00",
- "timeZone": "Pacific Standard Time"
- },
- "description": "Removes all ActionGroups from all Alerts on VMName during the maintenance window",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsMaintenanceWindow",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsMaintenanceWindow",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T20:13:29Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1/providers/Microsoft.Compute/virtualMachines/VMName"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "effectiveFrom": "2021-04-15T18:00:00",
- "effectiveUntil": "2021-04-15T20:00:00",
- "timeZone": "Pacific Standard Time"
- },
- "description": "Removes all ActionGroups from all Alerts on VMName during the maintenance window",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsMaintenanceWindow",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsMaintenanceWindow",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Delete.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Delete.json
deleted file mode 100644
index 4739ed28de22..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Delete.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "DailySuppression"
- },
- "responses": {
- "200": {},
- "204": {}
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_GetById.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_GetById.json
deleted file mode 100644
index 06d56f08128d..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_GetById.json
+++ /dev/null
@@ -1,96 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "DailySuppression"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/DailySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "DailySuppression",
- "location": "Global",
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "MonitorCondition",
- "operator": "Equals",
- "values": [
- "Fired"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-01-10T22:05:09",
- "effectiveUntil": "2018-12-10T22:05:09",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "06:00:00",
- "endTime": "14:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "startTime": "10:00:00",
- "endTime": "20:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "actiongGroup1",
- "actiongGroup2"
- ]
- }
- ],
- "description": "Alert processing rule on resource group for daily and weekly scheduling",
- "enabled": true
- },
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json
deleted file mode 100644
index b699ca7bbea2..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json
+++ /dev/null
@@ -1,135 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com:443/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules?api-version=2023-05-01-preview&ctoken=%2bRID%3aPlwOAPHEGwB9UwEAAAAgCw%3d%3d%23RT%3a2%23TRC%3a500%23RTD%3aqtQyMDE4LTA2LTEyVDE1OjEyOjE1",
- "value": [
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-09-12T06:00:00",
- "effectiveUntil": "2018-09-20T14:00:00",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "06:00:00",
- "endTime": "14:00:00"
- }
- ]
- },
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Alert processing rule on resource group for daily suppression",
- "enabled": true
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/DailySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "DailySuppression",
- "location": "Global",
- "tags": {}
- },
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.Compute/VirtualMachines/testResource"
- ],
- "conditions": [
- {
- "field": "MonitorCondition",
- "operator": "Equals",
- "values": [
- "Fired"
- ]
- },
- {
- "field": "Description",
- "operator": "Contains",
- "values": [
- "Percentage CPU greater than 80%",
- "Metric alert on resource foo"
- ]
- },
- {
- "field": "AlertContext",
- "operator": "DoesNotContain",
- "values": [
- "testresource",
- "foo"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.insights/actiongroups/testAG"
- ]
- }
- ],
- "description": "Alert processing rule on resource group for sending email",
- "enabled": true
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/WeeklySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "WeeklySuppression",
- "location": "Global",
- "tags": {}
- }
- ]
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_Subscription.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_Subscription.json
deleted file mode 100644
index cbf581ab8ff4..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_List_Subscription.json
+++ /dev/null
@@ -1,126 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com:443/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/providers/Microsoft.AlertsManagement/actionRules?api-version=2023-05-01-preview&ctoken=%2bRID%3aPlwOAPHEGwB9UwEAAAAgCw%3d%3d%23RT%3a2%23TRC%3a500%23RTD%3aqtQyMDE4LTA2LTEyVDE1OjEyOjE1",
- "value": [
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-01-10T22:05:09",
- "effectiveUntil": "2018-12-10T22:05:09",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "06:00:00",
- "endTime": "14:00:00"
- }
- ]
- },
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Alert processing rule on resource group for daily suppression",
- "enabled": true
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/DailySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "DailySuppression",
- "location": "Global",
- "tags": {}
- },
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.Compute/VirtualMachines/testResource"
- ],
- "conditions": [
- {
- "field": "MonitorCondition",
- "operator": "Equals",
- "values": [
- "Fired"
- ]
- },
- {
- "field": "Description",
- "operator": "Contains",
- "values": [
- "Percentage CPU greater than 80%",
- "Metric alert on resource foo"
- ]
- }
- ],
- "description": "Alert processing rule on resource group for adding action group",
- "enabled": true,
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "actiongGroup1"
- ]
- }
- ]
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/WeeklySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "WeeklySuppression",
- "location": "Global",
- "tags": {}
- }
- ]
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Patch.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Patch.json
deleted file mode 100644
index 7c663679c69f..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2023-05-01-preview/examples/AlertProcessingRules_Patch.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "parameters": {
- "api-version": "2023-05-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "WeeklySuppression",
- "alertProcessingRulePatch": {
- "tags": {
- "key1": "value1",
- "key2": "value2"
- },
- "properties": {
- "enabled": false
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-12-10T22:05:09",
- "effectiveUntil": "2018-12-05T22:05:09",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "06:00:00",
- "endTime": "14:00:00",
- "daysOfWeek": [
- "Tuesday",
- "Friday"
- ]
- }
- ]
- },
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Alert processing rule on resource group for weekly suppression",
- "enabled": false
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/WeeklySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "WeeklySuppression",
- "location": "Global",
- "tags": {
- "key1": "value1",
- "key2": "value2"
- }
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/AlertProcessingRules.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/AlertProcessingRules.json
deleted file mode 100644
index a24150c84c64..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/AlertProcessingRules.json
+++ /dev/null
@@ -1,911 +0,0 @@
-{
- "swagger": "2.0",
- "info": {
- "version": "2024-03-01-preview",
- "title": "Azure Alerts Management Service Resource Provider",
- "description": "APIs for Azure alert processing rules CRUD operations."
- },
- "host": "management.azure.com",
- "schemes": [
- "https"
- ],
- "consumes": [
- "application/json"
- ],
- "produces": [
- "application/json"
- ],
- "securityDefinitions": {
- "azure_auth": {
- "type": "oauth2",
- "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
- "flow": "implicit",
- "description": "Azure Active Directory OAuth2 Flow",
- "scopes": {
- "user_impersonation": "impersonate your user account"
- }
- }
- },
- "paths": {
- "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/actionRules": {
- "get": {
- "description": "List all alert processing rules in a subscription.",
- "operationId": "AlertProcessingRules_ListBySubscription",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Return the list of alert processing rules.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRulesList"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "GetAlertProcessingRulesSubscriptionWide": {
- "$ref": "./examples/AlertProcessingRules_List_Subscription.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AlertsManagement/actionRules": {
- "get": {
- "operationId": "AlertProcessingRules_ListByResourceGroup",
- "description": "List all alert processing rules in a resource group.",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Return the list of alert processing rules.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRulesList"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-pageable": {
- "nextLinkName": "nextLink"
- },
- "x-ms-examples": {
- "GetAlertProcessingRulesResourceGroupWide": {
- "$ref": "./examples/AlertProcessingRules_List_ResourceGroup.json"
- }
- }
- }
- },
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AlertsManagement/actionRules/{alertProcessingRuleName}": {
- "get": {
- "description": "Get an alert processing rule by name.",
- "operationId": "AlertProcessingRules_GetByName",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name of the alert processing rule that needs to be fetched.",
- "required": true,
- "type": "string"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Returns the specific alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "GetAlertProcessingRuleById": {
- "$ref": "./examples/AlertProcessingRules_GetById.json"
- }
- }
- },
- "put": {
- "operationId": "AlertProcessingRules_CreateOrUpdate",
- "description": "Create or update an alert processing rule.",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name of the alert processing rule that needs to be created/updated.",
- "required": true,
- "type": "string"
- },
- {
- "name": "alertProcessingRule",
- "in": "body",
- "description": "Alert processing rule to be created/updated.",
- "required": true,
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Returns the updated alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "201": {
- "description": "Created. Returns the created alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "Create or update a rule that adds an action group to all alerts in a subscription": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json"
- },
- "Create or update a rule that adds two action groups to all Sev0 and Sev1 alerts in two resource groups": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json"
- },
- "Create or update a rule that removes all action groups from alerts on a specific VM during a one-off maintenance window (1800-2000 at a specific date, Pacific Standard Time)": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json"
- },
- "Create or update a rule that removes all action groups from all alerts on any VM in two resource groups during a recurring maintenance window (2200-0400 every Sat and Sun, India Standard Time)": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json"
- },
- "Create or update a rule that removes all action groups outside business hours (Mon-Fri 09:00-17:00, Eastern Standard Time)": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json"
- },
- "Create or update a rule that removes all action groups from all alerts in a subscription coming from a specific alert rule": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json"
- },
- "Create or update a rule that adds alerts correlation": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_correlation.json"
- },
- "Create or update a rule that adds alerts correlation with correlation updates": {
- "$ref": "./examples/AlertProcessingRules_Create_or_update_add_correlation_with_correlation_updates.json"
- }
- }
- },
- "delete": {
- "description": "Delete an alert processing rule.",
- "operationId": "AlertProcessingRules_Delete",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name of the alert processing rule that needs to be deleted.",
- "required": true,
- "type": "string"
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "Successful request to delete an alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- }
- },
- "204": {
- "description": "No content: the request was successful, but the response is empty.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "DeleteAlertProcessingRule": {
- "$ref": "./examples/AlertProcessingRules_Delete.json"
- }
- }
- },
- "patch": {
- "description": "Enable, disable, or update tags for an alert processing rule.",
- "operationId": "AlertProcessingRules_Update",
- "parameters": [
- {
- "$ref": "#/parameters/subscriptionId"
- },
- {
- "$ref": "#/parameters/resourceGroupName"
- },
- {
- "name": "alertProcessingRuleName",
- "in": "path",
- "description": "The name that needs to be updated.",
- "required": true,
- "type": "string"
- },
- {
- "name": "alertProcessingRulePatch",
- "in": "body",
- "required": true,
- "schema": {
- "$ref": "#/definitions/PatchObject"
- },
- "description": "Parameters supplied to the operation."
- },
- {
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter"
- }
- ],
- "responses": {
- "200": {
- "description": "OK. Returns the created/updated alert processing rule.",
- "headers": {
- "x-ms-request-id": {
- "type": "string",
- "description": "Service generated Request ID."
- }
- },
- "schema": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- },
- "default": {
- "description": "Error response describing why the operation failed.",
- "schema": {
- "$ref": "#/definitions/errorResponse"
- }
- }
- },
- "x-ms-examples": {
- "PatchAlertProcessingRule": {
- "$ref": "./examples/AlertProcessingRules_Patch.json"
- }
- }
- }
- }
- },
- "parameters": {
- "subscriptionId": {
- "name": "subscriptionId",
- "in": "path",
- "required": true,
- "type": "string",
- "description": "The ID of the target subscription.",
- "minLength": 1
- },
- "resourceGroupName": {
- "name": "resourceGroupName",
- "description": "Resource group name where the resource is created.",
- "type": "string",
- "in": "path",
- "required": true,
- "x-ms-parameter-location": "method"
- }
- },
- "definitions": {
- "errorResponse": {
- "description": "An error response from the service.",
- "properties": {
- "error": {
- "$ref": "#/definitions/errorResponseBody"
- }
- }
- },
- "errorResponseBody": {
- "description": "Details of error response.",
- "properties": {
- "code": {
- "type": "string",
- "description": "Error code, intended to be consumed programmatically."
- },
- "message": {
- "type": "string",
- "description": "Description of the error, intended for display in user interface."
- },
- "target": {
- "type": "string",
- "description": "Target of the particular error, for example name of the property."
- },
- "details": {
- "type": "array",
- "description": "A list of additional details about the error.",
- "items": {
- "$ref": "#/definitions/errorResponseBody"
- }
- }
- }
- },
- "Resource": {
- "x-ms-azure-resource": true,
- "description": "An azure resource object",
- "properties": {
- "id": {
- "type": "string",
- "readOnly": true,
- "description": "Azure resource Id"
- },
- "type": {
- "type": "string",
- "readOnly": true,
- "description": "Azure resource type"
- },
- "name": {
- "type": "string",
- "readOnly": true,
- "description": "Azure resource name"
- }
- }
- },
- "ManagedResource": {
- "description": "An azure managed resource object.",
- "allOf": [
- {
- "$ref": "#/definitions/Resource"
- }
- ],
- "properties": {
- "location": {
- "type": "string",
- "description": "Resource location",
- "x-ms-mutability": [
- "create",
- "read"
- ]
- },
- "tags": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "Resource tags"
- }
- },
- "required": [
- "location"
- ]
- },
- "Scopes": {
- "type": "array",
- "description": "List of ARM IDs which will be the target of the given alert processing rule.",
- "items": {
- "type": "string"
- }
- },
- "Condition": {
- "type": "object",
- "description": "Condition to trigger an alert processing rule.",
- "properties": {
- "field": {
- "type": "string",
- "description": "Field for a given condition.",
- "enum": [
- "Severity",
- "MonitorService",
- "MonitorCondition",
- "SignalType",
- "TargetResourceType",
- "TargetResource",
- "TargetResourceGroup",
- "AlertRuleId",
- "AlertRuleName",
- "Description",
- "AlertContext"
- ],
- "x-ms-enum": {
- "name": "Field",
- "modelAsString": true
- }
- },
- "operator": {
- "type": "string",
- "description": "Operator for a given condition.",
- "enum": [
- "Equals",
- "NotEquals",
- "Contains",
- "DoesNotContain"
- ],
- "x-ms-enum": {
- "name": "Operator",
- "modelAsString": true
- }
- },
- "values": {
- "type": "array",
- "description": "List of values to match for a given condition.",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "Conditions": {
- "type": "array",
- "description": "Conditions in alert instance to be matched for a given alert processing rule. Default value is all. Multiple values could be provided with comma separation.",
- "items": {
- "$ref": "#/definitions/Condition"
- }
- },
- "Schedule": {
- "type": "object",
- "description": "Scheduling configuration for a given alert processing rule.",
- "properties": {
- "effectiveFrom": {
- "type": "string",
- "pattern": "^(?:(\\d{4}-\\d{2}-\\d{2})T(\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?))$",
- "description": "Scheduling effective from time. Date-Time in ISO-8601 format without timezone suffix."
- },
- "effectiveUntil": {
- "type": "string",
- "pattern": "^(?:(\\d{4}-\\d{2}-\\d{2})T(\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?))$",
- "description": "Scheduling effective until time. Date-Time in ISO-8601 format without timezone suffix."
- },
- "timeZone": {
- "type": "string",
- "description": "Scheduling time zone."
- },
- "recurrences": {
- "type": "array",
- "description": "List of recurrences.",
- "items": {
- "$ref": "#/definitions/Recurrence"
- }
- }
- }
- },
- "Recurrence": {
- "type": "object",
- "description": "Recurrence object.",
- "discriminator": "recurrenceType",
- "required": [
- "recurrenceType"
- ],
- "properties": {
- "recurrenceType": {
- "type": "string",
- "description": "Specifies when the recurrence should be applied.",
- "enum": [
- "Daily",
- "Weekly",
- "Monthly"
- ],
- "x-ms-enum": {
- "name": "RecurrenceType",
- "modelAsString": true
- }
- },
- "startTime": {
- "type": "string",
- "description": "Start time for recurrence."
- },
- "endTime": {
- "type": "string",
- "description": "End time for recurrence."
- }
- }
- },
- "DailyRecurrence": {
- "x-ms-discriminator-value": "Daily",
- "type": "object",
- "description": "Daily recurrence object.",
- "required": [
- "startTime",
- "endTime"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Recurrence"
- }
- ]
- },
- "WeeklyRecurrence": {
- "x-ms-discriminator-value": "Weekly",
- "type": "object",
- "description": "Weekly recurrence object.",
- "required": [
- "daysOfWeek"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Recurrence"
- }
- ],
- "properties": {
- "daysOfWeek": {
- "type": "array",
- "description": "Specifies the values for weekly recurrence pattern.",
- "items": {
- "$ref": "#/definitions/DaysOfWeek"
- }
- }
- }
- },
- "MonthlyRecurrence": {
- "x-ms-discriminator-value": "Monthly",
- "type": "object",
- "description": "Monthly recurrence object.",
- "required": [
- "daysOfMonth"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Recurrence"
- }
- ],
- "properties": {
- "daysOfMonth": {
- "type": "array",
- "description": "Specifies the values for monthly recurrence pattern.",
- "items": {
- "type": "integer",
- "format": "int32"
- }
- }
- }
- },
- "DaysOfWeek": {
- "type": "string",
- "description": "Days of week.",
- "enum": [
- "Sunday",
- "Monday",
- "Tuesday",
- "Wednesday",
- "Thursday",
- "Friday",
- "Saturday"
- ],
- "x-ms-enum": {
- "name": "DaysOfWeek",
- "modelAsString": true
- }
- },
- "AlertProcessingRule": {
- "type": "object",
- "description": "Alert processing rule object containing target scopes, conditions and scheduling logic.",
- "allOf": [
- {
- "$ref": "#/definitions/ManagedResource"
- }
- ],
- "properties": {
- "properties": {
- "description": "Alert processing rule properties.",
- "$ref": "#/definitions/AlertProcessingRuleProperties"
- },
- "systemData": {
- "description": "Alert processing rule system data.",
- "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData"
- }
- }
- },
- "AlertProcessingRuleProperties": {
- "type": "object",
- "description": "Alert processing rule properties defining scopes, conditions and scheduling logic for alert processing rule.",
- "required": [
- "scopes",
- "actions"
- ],
- "properties": {
- "scopes": {
- "description": "Scopes on which alert processing rule will apply.",
- "$ref": "#/definitions/Scopes"
- },
- "conditions": {
- "description": "Conditions on which alerts will be filtered.",
- "$ref": "#/definitions/Conditions"
- },
- "schedule": {
- "description": "Scheduling for alert processing rule.",
- "$ref": "#/definitions/Schedule"
- },
- "actions": {
- "type": "array",
- "description": "Actions to be applied.",
- "items": {
- "$ref": "#/definitions/Action"
- }
- },
- "description": {
- "type": "string",
- "description": "Description of alert processing rule."
- },
- "enabled": {
- "type": "boolean",
- "default": true,
- "description": "Indicates if the given alert processing rule is enabled or disabled."
- }
- }
- },
- "Action": {
- "type": "object",
- "description": "Action to be applied.",
- "discriminator": "actionType",
- "required": [
- "actionType"
- ],
- "properties": {
- "actionType": {
- "type": "string",
- "description": "Action that should be applied.",
- "enum": [
- "AddActionGroups",
- "RemoveAllActionGroups",
- "CorrelateAlerts"
- ],
- "x-ms-enum": {
- "name": "actionType",
- "modelAsString": true
- }
- }
- }
- },
- "AddActionGroups": {
- "x-ms-discriminator-value": "AddActionGroups",
- "type": "object",
- "description": "Add action groups to alert processing rule.",
- "required": [
- "actionGroupIds"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Action"
- }
- ],
- "properties": {
- "actionGroupIds": {
- "description": "List of action group Ids to add to alert processing rule.",
- "type": "array",
- "items": {
- "type": "string"
- }
- }
- }
- },
- "RemoveAllActionGroups": {
- "x-ms-discriminator-value": "RemoveAllActionGroups",
- "type": "object",
- "description": "Indicates if all action groups should be removed.",
- "allOf": [
- {
- "$ref": "#/definitions/Action"
- }
- ]
- },
- "CorrelateAlerts": {
- "x-ms-discriminator-value": "CorrelateAlerts",
- "type": "object",
- "description": "Add logic for alerts correlation.",
- "required": [
- "correlateBy",
- "correlationInterval",
- "priority"
- ],
- "allOf": [
- {
- "$ref": "#/definitions/Action"
- }
- ],
- "properties": {
- "correlateBy": {
- "type": "array",
- "description": "The list of conditions for the alerts correlations.",
- "items": {
- "$ref": "#/definitions/CorrelateBy"
- },
- "x-ms-identifiers": []
- },
- "correlationInterval": {
- "type": "string",
- "description": "The required duration (in ISO8601 format) for the alerts correlation."
- },
- "priority": {
- "type": "integer",
- "format": "int32",
- "description": "The priority of this correlation."
- },
- "notificationsForCorrelatedAlerts": {
- "type": "string",
- "default": "SuppressAlways",
- "description": "Indicates how to handle child alerts notifications.",
- "enum": [
- "NotifyAlways",
- "SuppressAlways"
- ],
- "x-ms-enum": {
- "name": "NotificationsForCorrelatedAlerts",
- "modelAsString": true
- }
- },
- "correlationUpdates": {
- "$ref": "#/definitions/CorrelationUpdates"
- }
- }
- },
- "CorrelateBy": {
- "type": "object",
- "description": "The logic for the correlation.",
- "properties": {
- "field": {
- "type": "string",
- "description": "The JPath of the property that the alerts should be correlated by."
- }
- }
- },
- "CorrelationUpdates": {
- "type": "object",
- "description": "Defines the updates to be applied for correlation.",
- "properties": {
- "updateType": {
- "type": "string",
- "description": "The type of update that needs to be performed.",
- "default": "timeBased",
- "enum": [
- "timeBased"
- ],
- "x-ms-enum": {
- "name": "UpdateType",
- "modelAsString": true
- }
- },
- "updateInterval": {
- "type": "string",
- "description": "The update interval for notification updates in ISO8601 format."
- },
- "actionGroups": {
- "type": "array",
- "description": "The action group ids.",
- "items": {
- "type": "string"
- }
- }
- },
- "required": [
- "updateType",
- "updateInterval",
- "actionGroups"
- ]
- },
- "AlertProcessingRulesList": {
- "type": "object",
- "description": "List of alert processing rules.",
- "properties": {
- "nextLink": {
- "type": "string",
- "description": "URL to fetch the next set of alert processing rules."
- },
- "value": {
- "type": "array",
- "description": "List of alert processing rules.",
- "items": {
- "$ref": "#/definitions/AlertProcessingRule"
- }
- }
- }
- },
- "PatchProperties": {
- "description": "Alert processing rule properties supported by patch.",
- "properties": {
- "enabled": {
- "type": "boolean",
- "description": "Indicates if the given alert processing rule is enabled or disabled."
- }
- }
- },
- "PatchObject": {
- "description": "Data contract for patch.",
- "properties": {
- "properties": {
- "x-ms-client-flatten": true,
- "description": "Properties supported by patch operation.",
- "$ref": "#/definitions/PatchProperties"
- },
- "tags": {
- "type": "object",
- "additionalProperties": {
- "type": "string"
- },
- "description": "Tags to be updated."
- }
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json
deleted file mode 100644
index 720b541f15c4..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_action_group_all_alerts_in_subscription.json
+++ /dev/null
@@ -1,93 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "AddActionGroupToSubscription",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/ActionGroup1"
- ]
- }
- ],
- "description": "Add ActionGroup1 to all alerts in the subscription",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/ActionGroup1"
- ]
- }
- ],
- "description": "Add ActionGroup1 to all alerts in the subscription",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupToSubscription",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupToSubscription",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/ActionGroup1"
- ]
- }
- ],
- "description": "Add ActionGroup1 to all alerts in the subscription",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupToSubscription",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupToSubscription",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
deleted file mode 100644
index 9722d8f855b2..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation.json
+++ /dev/null
@@ -1,108 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "CorrelateAlerts",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways"
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways"
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/CorrelateAlerts",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "CorrelateAlerts",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways"
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/CorrelateAlerts",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "CorrelateAlerts",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation_with_correlation_updates.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation_with_correlation_updates.json
deleted file mode 100644
index c4f6125919aa..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_correlation_with_correlation_updates.json
+++ /dev/null
@@ -1,132 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "CorrelateAlerts",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways",
- "correlationUpdates": {
- "updateType": "timeBased",
- "updateInterval": "PT15M",
- "actionGroups": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways",
- "correlationUpdates": {
- "updateType": "timeBased",
- "updateInterval": "PT15M",
- "actionGroups": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/CorrelateAlerts",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "CorrelateAlerts",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2021-02-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2021-02-13T16:15:34Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "CorrelateAlerts",
- "correlateBy": [
- {
- "field": "essentials.alertRule"
- }
- ],
- "correlationInterval": "PT30M",
- "priority": 50,
- "notificationsForCorrelatedAlerts": "SuppressAlways",
- "correlationUpdates": {
- "updateType": "timeBased",
- "updateInterval": "PT15M",
- "actionGroups": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- }
- ],
- "description": "Correlate Alerts Example.",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/CorrelateAlerts",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "CorrelateAlerts",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json
deleted file mode 100644
index 182f0188b0ee..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_add_two_action_groups_all_Sev0_Sev1_two_resource_groups.json
+++ /dev/null
@@ -1,129 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "AddActionGroupsBySeverity",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "sev0",
- "sev1"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- ],
- "description": "Add AGId1 and AGId2 to all Sev0 and Sev1 alerts in these resourceGroups",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-13T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "sev0",
- "sev1"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- ],
- "description": "Add AGId1 and AGId2 to all Sev0 and Sev1 alerts in these resourceGroups",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupsBySeverity",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupsBySeverity",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-13T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "sev0",
- "sev1"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId1",
- "/subscriptions/subId1/resourcegroups/RGId1/providers/microsoft.insights/actiongroups/AGId2"
- ]
- }
- ],
- "description": "Add AGId1 and AGId2 to all Sev0 and Sev1 alerts in these resourceGroups",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/AddActionGroupsBySeverity",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "AddActionGroupsBySeverity",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json
deleted file mode 100644
index bdfce5606a0a..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_from_specific_alert_rule.json
+++ /dev/null
@@ -1,111 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsSpecificAlertRule",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "conditions": [
- {
- "field": "AlertRuleId",
- "operator": "Equals",
- "values": [
- "/subscriptions/suubId1/resourceGroups/Rgid2/providers/microsoft.insights/activityLogAlerts/RuleName"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Removes all ActionGroups from all Alerts that fire on above AlertRule",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "conditions": [
- {
- "field": "AlertRuleId",
- "operator": "Equals",
- "values": [
- "/subscriptions/suubId1/resourceGroups/Rgid2/providers/microsoft.insights/activityLogAlerts/RuleName"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Removes all ActionGroups from all Alerts that fire on above AlertRule",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsSpecificAlertRule",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsSpecificAlertRule",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "conditions": [
- {
- "field": "AlertRuleId",
- "operator": "Equals",
- "values": [
- "/subscriptions/suubId1/resourceGroups/Rgid2/providers/microsoft.insights/activityLogAlerts/RuleName"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Removes all ActionGroups from all Alerts that fire on above AlertRule",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsSpecificAlertRule",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsSpecificAlertRule",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json
deleted file mode 100644
index e3966fd2a737..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_outside_business_hours.json
+++ /dev/null
@@ -1,135 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsOutsideBusinessHours",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "Eastern Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "17:00:00",
- "endTime": "09:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups outside business hours",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "Eastern Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "17:00:00",
- "endTime": "09:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups outside business hours",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsOutsideBusinessHours",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsOutsideBusinessHours",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "Eastern Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "17:00:00",
- "endTime": "09:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups outside business hours",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsOutsideBusinessHours",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsOutsideBusinessHours",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json
deleted file mode 100644
index 3be69fef8b72..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_recurring_maintenance_window.json
+++ /dev/null
@@ -1,156 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsRecurringMaintenance",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "TargetResourceType",
- "operator": "Equals",
- "values": [
- "microsoft.compute/virtualmachines"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "India Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "22:00:00",
- "endTime": "04:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups from all Vitual machine Alerts during the recurring maintenance",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "TargetResourceType",
- "operator": "Equals",
- "values": [
- "microsoft.compute/virtualmachines"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "India Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "22:00:00",
- "endTime": "04:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups from all Vitual machine Alerts during the recurring maintenance",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsRecurringMaintenance",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsRecurringMaintenance",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-11T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1",
- "/subscriptions/subId1/resourceGroups/RGId2"
- ],
- "conditions": [
- {
- "field": "TargetResourceType",
- "operator": "Equals",
- "values": [
- "microsoft.compute/virtualmachines"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "timeZone": "India Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "22:00:00",
- "endTime": "04:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "description": "Remove all ActionGroups from all Vitual machine Alerts during the recurring maintenance",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsRecurringMaintenance",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsRecurringMaintenance",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json
deleted file mode 100644
index 485cababf062..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Create_or_update_remove_all_action_groups_specific_VM_one-off_maintenance_window.json
+++ /dev/null
@@ -1,99 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "subId1",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "RemoveActionGroupsMaintenanceWindow",
- "alertProcessingRule": {
- "location": "Global",
- "tags": {},
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1/providers/Microsoft.Compute/virtualMachines/VMName"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "effectiveFrom": "2021-04-15T18:00:00",
- "effectiveUntil": "2021-04-15T20:00:00",
- "timeZone": "Pacific Standard Time"
- },
- "description": "Removes all ActionGroups from all Alerts on VMName during the maintenance window",
- "enabled": true
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T20:13:29Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1/providers/Microsoft.Compute/virtualMachines/VMName"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "effectiveFrom": "2021-04-15T18:00:00",
- "effectiveUntil": "2021-04-15T20:00:00",
- "timeZone": "Pacific Standard Time"
- },
- "description": "Removes all ActionGroups from all Alerts on VMName during the maintenance window",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsMaintenanceWindow",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsMaintenanceWindow",
- "location": "Global",
- "tags": {}
- }
- },
- "201": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T20:13:29Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/subId1/resourceGroups/RGId1/providers/Microsoft.Compute/virtualMachines/VMName"
- ],
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "schedule": {
- "effectiveFrom": "2021-04-15T18:00:00",
- "effectiveUntil": "2021-04-15T20:00:00",
- "timeZone": "Pacific Standard Time"
- },
- "description": "Removes all ActionGroups from all Alerts on VMName during the maintenance window",
- "enabled": true
- },
- "id": "/subscriptions/subId1/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/RemoveActionGroupsMaintenanceWindow",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "RemoveActionGroupsMaintenanceWindow",
- "location": "Global",
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Delete.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Delete.json
deleted file mode 100644
index 686e3126fbe6..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Delete.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "DailySuppression"
- },
- "responses": {
- "200": {},
- "204": {}
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_GetById.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_GetById.json
deleted file mode 100644
index 14867df25384..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_GetById.json
+++ /dev/null
@@ -1,96 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "DailySuppression"
- },
- "responses": {
- "200": {
- "body": {
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/DailySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "DailySuppression",
- "location": "Global",
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "MonitorCondition",
- "operator": "Equals",
- "values": [
- "Fired"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-01-10T22:05:09",
- "effectiveUntil": "2018-12-10T22:05:09",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "06:00:00",
- "endTime": "14:00:00"
- },
- {
- "recurrenceType": "Weekly",
- "startTime": "10:00:00",
- "endTime": "20:00:00",
- "daysOfWeek": [
- "Saturday",
- "Sunday"
- ]
- }
- ]
- },
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "actiongGroup1",
- "actiongGroup2"
- ]
- }
- ],
- "description": "Alert processing rule on resource group for daily and weekly scheduling",
- "enabled": true
- },
- "tags": {}
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json
deleted file mode 100644
index b672d112e52f..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_ResourceGroup.json
+++ /dev/null
@@ -1,135 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com:443/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules?api-version=2023-05-01-preview&ctoken=%2bRID%3aPlwOAPHEGwB9UwEAAAAgCw%3d%3d%23RT%3a2%23TRC%3a500%23RTD%3aqtQyMDE4LTA2LTEyVDE1OjEyOjE1",
- "value": [
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-09-12T06:00:00",
- "effectiveUntil": "2018-09-20T14:00:00",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "06:00:00",
- "endTime": "14:00:00"
- }
- ]
- },
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Alert processing rule on resource group for daily suppression",
- "enabled": true
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/DailySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "DailySuppression",
- "location": "Global",
- "tags": {}
- },
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.Compute/VirtualMachines/testResource"
- ],
- "conditions": [
- {
- "field": "MonitorCondition",
- "operator": "Equals",
- "values": [
- "Fired"
- ]
- },
- {
- "field": "Description",
- "operator": "Contains",
- "values": [
- "Percentage CPU greater than 80%",
- "Metric alert on resource foo"
- ]
- },
- {
- "field": "AlertContext",
- "operator": "DoesNotContain",
- "values": [
- "testresource",
- "foo"
- ]
- }
- ],
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.insights/actiongroups/testAG"
- ]
- }
- ],
- "description": "Alert processing rule on resource group for sending email",
- "enabled": true
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/WeeklySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "WeeklySuppression",
- "location": "Global",
- "tags": {}
- }
- ]
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_Subscription.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_Subscription.json
deleted file mode 100644
index f173f58f4454..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_List_Subscription.json
+++ /dev/null
@@ -1,126 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d"
- },
- "responses": {
- "200": {
- "body": {
- "nextLink": "https://management.azure.com:443/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/providers/Microsoft.AlertsManagement/actionRules?api-version=2023-05-01-preview&ctoken=%2bRID%3aPlwOAPHEGwB9UwEAAAAgCw%3d%3d%23RT%3a2%23TRC%3a500%23RTD%3aqtQyMDE4LTA2LTEyVDE1OjEyOjE1",
- "value": [
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-01-10T22:05:09",
- "effectiveUntil": "2018-12-10T22:05:09",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Daily",
- "startTime": "06:00:00",
- "endTime": "14:00:00"
- }
- ]
- },
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Alert processing rule on resource group for daily suppression",
- "enabled": true
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/DailySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "DailySuppression",
- "location": "Global",
- "tags": {}
- },
- {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.Compute/VirtualMachines/testResource"
- ],
- "conditions": [
- {
- "field": "MonitorCondition",
- "operator": "Equals",
- "values": [
- "Fired"
- ]
- },
- {
- "field": "Description",
- "operator": "Contains",
- "values": [
- "Percentage CPU greater than 80%",
- "Metric alert on resource foo"
- ]
- }
- ],
- "description": "Alert processing rule on resource group for adding action group",
- "enabled": true,
- "actions": [
- {
- "actionType": "AddActionGroups",
- "actionGroupIds": [
- "actiongGroup1"
- ]
- }
- ]
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/WeeklySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "WeeklySuppression",
- "location": "Global",
- "tags": {}
- }
- ]
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Patch.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Patch.json
deleted file mode 100644
index 534ffc1548c1..000000000000
--- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-03-01-preview/examples/AlertProcessingRules_Patch.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "parameters": {
- "api-version": "2024-03-01-preview",
- "subscriptionId": "1e3ff1c0-771a-4119-a03b-be82a51e232d",
- "resourceGroupName": "alertscorrelationrg",
- "alertProcessingRuleName": "WeeklySuppression",
- "alertProcessingRulePatch": {
- "tags": {
- "key1": "value1",
- "key2": "value2"
- },
- "properties": {
- "enabled": false
- }
- }
- },
- "responses": {
- "200": {
- "body": {
- "systemData": {
- "createdBy": "abc@microsoft.com",
- "createdByType": "User",
- "createdAt": "2018-06-12T22:05:09Z",
- "lastModifiedBy": "xyz@microsoft.com",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2018-06-12T22:05:09Z"
- },
- "properties": {
- "scopes": [
- "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg"
- ],
- "conditions": [
- {
- "field": "Severity",
- "operator": "Equals",
- "values": [
- "Sev0",
- "Sev2"
- ]
- },
- {
- "field": "MonitorService",
- "operator": "Equals",
- "values": [
- "Platform",
- "Application Insights"
- ]
- },
- {
- "field": "TargetResourceType",
- "operator": "NotEquals",
- "values": [
- "Microsoft.Compute/VirtualMachines"
- ]
- }
- ],
- "schedule": {
- "effectiveFrom": "2018-12-10T22:05:09",
- "effectiveUntil": "2018-12-05T22:05:09",
- "timeZone": "Pacific Standard Time",
- "recurrences": [
- {
- "recurrenceType": "Weekly",
- "startTime": "06:00:00",
- "endTime": "14:00:00",
- "daysOfWeek": [
- "Tuesday",
- "Friday"
- ]
- }
- ]
- },
- "actions": [
- {
- "actionType": "RemoveAllActionGroups"
- }
- ],
- "description": "Alert processing rule on resource group for weekly suppression",
- "enabled": false
- },
- "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/resourceGroups/alertscorrelationrg/providers/Microsoft.AlertsManagement/actionRules/WeeklySuppression",
- "type": "Microsoft.AlertsManagement/actionRules",
- "name": "WeeklySuppression",
- "location": "Global",
- "tags": {
- "key1": "value1",
- "key2": "value2"
- }
- }
- }
- }
-}
diff --git a/specification/alertsmanagement/resource-manager/readme.md b/specification/alertsmanagement/resource-manager/readme.md
index ec60ffba02b5..6cf150503fb0 100644
--- a/specification/alertsmanagement/resource-manager/readme.md
+++ b/specification/alertsmanagement/resource-manager/readme.md
@@ -47,18 +47,6 @@ openapi-type: arm
tag: package-2023-03
```
-### Tag: package-preview-2024-03
-
-These settings apply only when `--tag=package-preview-2024-03` is specified on the command line.
-
-```yaml $(tag) == 'package-preview-2024-03'
-input-file:
- - Microsoft.AlertsManagement/preview/2024-03-01-preview/AlertProcessingRules.json
-suppressions:
- - code: OperationsAPIImplementation
- from: AlertProcessingRules.json
- reason: Aleady implemented in AlertsManagement.json.
-```
### Tag: package-preview-2024-01
These settings apply only when `--tag=package-preview-2024-01` is specified on the command line.
@@ -83,14 +71,6 @@ These settings apply only when `--tag=package-preview-2023-07` is specified on t
input-file:
- Microsoft.AlertsManagement/preview/2023-07-12-preview/AlertsManagement.json
```
-### 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.AlertsManagement/preview/2023-05-01-preview/AlertProcessingRules.json
-```
### Tag: package-preview-2023-04
These settings apply only when `--tag=package-preview-2023-04` is specified on the command line.
@@ -117,7 +97,7 @@ input-file:
- Microsoft.AlertsManagement/preview/2024-01-01-preview/AlertsManagement.json
- Microsoft.AlertsManagement/preview/2019-05-05-preview/SmartGroups.json
- Microsoft.AlertsManagement/preview/2023-08-01-preview/AlertRuleRecommendations.json
- - Microsoft.AlertsManagement/preview/2024-03-01-preview/AlertProcessingRules.json
+ - Microsoft.AlertsManagement/preview/2021-08-08-preview/AlertProcessingRules.json
```
### Tag: package-2021-08
From 17dbd6e760c42aeacf1db39381fc26e30dda72ca Mon Sep 17 00:00:00 2001
From: catalinaperalta
Date: Mon, 16 Dec 2024 14:33:30 -0800
Subject: [PATCH 023/128] Document Intelligence - Python sdk fixes (#31811)
* python fixes
* update package version
* clean up
---------
Co-authored-by: Catalina Peralta
---
specification/ai/DocumentIntelligence/client.tsp | 1 +
specification/ai/DocumentIntelligence/routes.tsp | 12 ++++++++++++
specification/ai/DocumentIntelligence/tspconfig.yaml | 2 +-
3 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/specification/ai/DocumentIntelligence/client.tsp b/specification/ai/DocumentIntelligence/client.tsp
index 878a7bc56107..f605ef9c1892 100644
--- a/specification/ai/DocumentIntelligence/client.tsp
+++ b/specification/ai/DocumentIntelligence/client.tsp
@@ -264,3 +264,4 @@ interface DocumentIntelligenceAdministrationClient {
@@clientName(AnalyzeDocumentRequest.base64Source, "bytesSource", "python");
@@clientName(ClassifyDocumentRequest.base64Source, "bytesSource", "python");
@@clientName(DocumentFieldSchema.items, "itemsSchema", "python");
+@@clientName(AnalyzeFromStreamRequestParams.input, "body", "python");
diff --git a/specification/ai/DocumentIntelligence/routes.tsp b/specification/ai/DocumentIntelligence/routes.tsp
index 914bee4adee0..cecabf738468 100644
--- a/specification/ai/DocumentIntelligence/routes.tsp
+++ b/specification/ai/DocumentIntelligence/routes.tsp
@@ -1,4 +1,5 @@
import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-client-generator-core";
import "@typespec/rest";
import "@typespec/http";
import "./models.tsp";
@@ -8,6 +9,7 @@ using Azure.Core.Traits;
using TypeSpec.Rest;
using TypeSpec.Http;
using TypeSpec.Versioning;
+using Azure.ClientGenerator.Core;
namespace DocumentIntelligence;
@@ -260,6 +262,7 @@ interface DocumentModels {
@doc("Analyze request parameters.")
@bodyRoot
+ @clientName("body", "python")
analyzeRequest: AnalyzeDocumentRequest;
},
AnalyzeOperation
@@ -299,6 +302,7 @@ interface DocumentModels {
@doc("Analyze batch request parameters.")
@body
+ @clientName("body", "python")
analyzeBatchRequest: AnalyzeBatchDocumentsRequest;
},
AnalyzeBatchOperation
@@ -350,6 +354,7 @@ interface DocumentModels {
{
@doc("Build request parameters.")
@bodyRoot
+ @clientName("body", "python")
buildRequest: BuildDocumentModelRequest;
},
DocumentModelBuildOperationDetails
@@ -364,6 +369,7 @@ interface DocumentModels {
{
@doc("Compose request parameters.")
@bodyRoot
+ @clientName("body", "python")
composeRequest: ComposeDocumentModelRequest;
},
DocumentModelComposeOperationDetails
@@ -380,6 +386,7 @@ interface DocumentModels {
{
@doc("Authorize copy request parameters.")
@bodyRoot
+ @clientName("body", "python")
authorizeCopyRequest: AuthorizeCopyRequest;
},
ModelCopyAuthorization
@@ -400,6 +407,7 @@ interface DocumentModels {
@doc("Copy to request parameters.")
@bodyRoot
+ @clientName("body", "python")
copyToRequest: ModelCopyAuthorization;
},
DocumentModelCopyToOperationDetails
@@ -461,6 +469,7 @@ interface DocumentClassifiers {
{
@doc("Build request parameters.")
@bodyRoot
+ @clientName("body", "python")
buildRequest: BuildDocumentClassifierRequest;
},
DocumentClassifierBuildOperationDetails
@@ -506,6 +515,7 @@ interface DocumentClassifiers {
@doc("Classify request parameters.")
@bodyRoot
+ @clientName("body", "python")
classifyRequest: ClassifyDocumentRequest;
},
AnalyzeOperation
@@ -541,6 +551,7 @@ interface DocumentClassifiers {
{
@doc("Authorize copy request parameters.")
@body
+ @clientName("body", "python")
authorizeCopyRequest: AuthorizeClassifierCopyRequest;
},
ClassifierCopyAuthorization
@@ -563,6 +574,7 @@ interface DocumentClassifiers {
@doc("Copy to request parameters.")
@body
+ @clientName("body", "python")
copyToRequest: ClassifierCopyAuthorization;
},
DocumentClassifierCopyToOperationDetails
diff --git a/specification/ai/DocumentIntelligence/tspconfig.yaml b/specification/ai/DocumentIntelligence/tspconfig.yaml
index f511882f911c..304ffec49c22 100644
--- a/specification/ai/DocumentIntelligence/tspconfig.yaml
+++ b/specification/ai/DocumentIntelligence/tspconfig.yaml
@@ -21,7 +21,7 @@ options:
package-pprint-name: "Azure AI Document Intelligence"
package-dir: "azure-ai-documentintelligence"
package-name: "{package-dir}"
- package-version: 1.0.0b2
+ package-version: 1.0.0
flavor: azure
generate-test: true
generate-sample: true
From 400c11792452dcb27582223863171cd596680a58 Mon Sep 17 00:00:00 2001
From: Sameeksha Vaity
Date: Mon, 16 Dec 2024 17:34:41 -0800
Subject: [PATCH 024/128] Java renames for DI GA (#31880)
---
specification/ai/DocumentIntelligence/client.tsp | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/specification/ai/DocumentIntelligence/client.tsp b/specification/ai/DocumentIntelligence/client.tsp
index f605ef9c1892..a2e0071deb92 100644
--- a/specification/ai/DocumentIntelligence/client.tsp
+++ b/specification/ai/DocumentIntelligence/client.tsp
@@ -130,6 +130,14 @@ interface DocumentIntelligenceAdministrationClient {
@@clientName(DocumentBarcodeKind.QRCode, "QR_Code", "java");
@@clientName(DocumentBarcodeKind.MicroQRCode, "MICRO_QR_CODE", "java");
+@@clientName(DocumentIntelligenceError.innererror, "innerError", "java");
+@@clientName(DocumentIntelligenceInnerError.innererror, "innerError", "java");
+@@clientName(DocumentField.valueArray, "valueList", "java");
+@@clientName(DocumentField.valueObject, "valueMap", "java");
+@@clientName(AnalyzeBatchOperation, "AnalyzeBatchOperationDetails", "java");
+@@clientName(AnalyzeOperation, "AnalyzeOperationDetails", "java");
+@@clientName(AnalyzeBatchOperationDetail, "AnalyzeBatchResultDetails", "java");
+
@@clientName(AnalyzeBatchDocumentsRequest,
"AnalyzeBatchDocumentsOptions",
"csharp"
From 59799c650469a665614dd88c261ade7b78dcf77d Mon Sep 17 00:00:00 2001
From: Weidong Xu
Date: Tue, 17 Dec 2024 16:53:33 +0800
Subject: [PATCH 025/128] standbypool, java config, move namespace to
client.tsp (#31907)
---
specification/standbypool/StandbyPool.Management/client.tsp | 5 +++++
.../standbypool/StandbyPool.Management/tspconfig.yaml | 1 -
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/specification/standbypool/StandbyPool.Management/client.tsp b/specification/standbypool/StandbyPool.Management/client.tsp
index eb89c67494a0..b89f212301b0 100644
--- a/specification/standbypool/StandbyPool.Management/client.tsp
+++ b/specification/standbypool/StandbyPool.Management/client.tsp
@@ -61,3 +61,8 @@ using Microsoft.StandbyPool;
"javascript"
);
@@clientName(Microsoft.StandbyPool, "StandbyPoolMgmtClient", "python");
+@@clientName(Microsoft.StandbyPool, "StandbyPoolManagementClient", "java");
+@@clientNamespace(Microsoft.StandbyPool,
+ "com.azure.resourcemanager.standbypool",
+ "java"
+);
diff --git a/specification/standbypool/StandbyPool.Management/tspconfig.yaml b/specification/standbypool/StandbyPool.Management/tspconfig.yaml
index 4b4d1a07623c..f73860ceb298 100644
--- a/specification/standbypool/StandbyPool.Management/tspconfig.yaml
+++ b/specification/standbypool/StandbyPool.Management/tspconfig.yaml
@@ -21,7 +21,6 @@ options:
"@azure-tools/typespec-java":
package-dir: "azure-resourcemanager-standbypool"
flavor: "azure"
- namespace: "com.azure.resourcemanager.standbypool"
service-name: "Standby Pool"
"@azure-tools/typespec-csharp":
package-dir: "Azure.ResourceManager.StandbyPool"
From 1e620cfbf7df188acef4d6b4a8752aa3aa82fa02 Mon Sep 17 00:00:00 2001
From: Mario Guerra <85648637+mario-guerra@users.noreply.github.com>
Date: Tue, 17 Dec 2024 12:25:45 -0600
Subject: [PATCH 026/128] change docs.microsoft.com to learn.microsoft.com
(#31901)
---
.../baseVirtualMachineProfile.tsp | 60 +++++++--------
.../2023-11-01-preview/azurefleet.json | 36 ++++-----
.../2024-05-01-preview/azurefleet.json | 36 ++++-----
.../stable/2024-11-01/azurefleet.json | 36 ++++-----
.../AzureLargeInstance.Management/models.tsp | 2 +-
.../azurelargeinstance.json | 2 +-
.../azurelargeinstance.json | 2 +-
.../stable/2024-04-10/azurelargeinstance.json | 2 +-
.../models.tsp | 2 +-
.../2024-02-01-preview/stackhcivm.json | 2 +-
.../2024-05-01-preview/stackhcivm.json | 2 +-
.../2024-08-01-preview/stackhcivm.json | 2 +-
specification/batch/Azure.Batch/models.tsp | 34 ++++-----
specification/batch/Azure.Batch/routes.tsp | 24 +++---
.../preview/2024-07-01.20.0/BatchService.json | 74 +++++++++----------
.../main.tsp | 4 +-
.../Language.AnalyzeDocuments/main.tsp | 2 +-
.../models/common.models.tsp | 2 +-
.../Language.AnalyzeText-authoring/main.tsp | 4 +-
.../Language.AnalyzeText/main.tsp | 2 +-
.../models/common.models.tsp | 2 +-
.../Language.Conversations/main.tsp | 2 +-
.../Language.Conversations/models/common.tsp | 2 +-
.../analyzeconversations-authoring.json | 2 +-
.../analyzetext-authoring.json | 2 +-
.../analyzeconversations-authoring.json | 2 +-
.../analyzeconversations.json | 2 +-
.../2024-11-15-preview/analyzedocuments.json | 2 +-
.../analyzetext-authoring.json | 2 +-
.../2024-11-15-preview/analyzetext.json | 2 +-
.../stable/2022-05-01/analyzetext.json | 2 +-
.../analyzeconversations-authoring.json | 2 +-
.../2023-04-01/analyzeconversations.json | 2 +-
.../2023-04-01/analyzetext-authoring.json | 2 +-
.../stable/2023-04-01/analyzetext.json | 2 +-
.../2024-05-01/analyzeconversations.json | 2 +-
.../2024-11-01/analyzeconversations.json | 2 +-
.../stable/2024-11-01/analyzetext.json | 2 +-
.../LoadTestService/models.tsp | 8 +-
.../2023-04-01-preview/loadtestservice.json | 14 ++--
.../2024-03-01-preview/loadtestservice.json | 14 ++--
.../2024-05-01-preview/loadtestservice.json | 14 ++--
.../2024-07-01-preview/loadtestservice.json | 14 ++--
.../2024-12-01-preview/loadtestservice.json | 14 ++--
.../stable/2022-11-01/loadtestservice.json | 14 ++--
.../models.tsp | 8 +-
.../stable/2024-09-01/SAPVirtualInstance.json | 8 +-
47 files changed, 237 insertions(+), 237 deletions(-)
diff --git a/specification/azurefleet/AzureFleet.Management/baseVirtualMachineProfile.tsp b/specification/azurefleet/AzureFleet.Management/baseVirtualMachineProfile.tsp
index ddee90aa3ec5..4e6ae8137a81 100644
--- a/specification/azurefleet/AzureFleet.Management/baseVirtualMachineProfile.tsp
+++ b/specification/azurefleet/AzureFleet.Management/baseVirtualMachineProfile.tsp
@@ -53,9 +53,9 @@ model BaseVirtualMachineProfile {
* 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)
+ * Server](https://learn.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)
+ * Server](https://learn.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)
*
Minimum api-version: 2015-06-15
*/
licenseType?: string;
@@ -146,10 +146,10 @@ model VirtualMachineScaleSetOSProfile {
\"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)
+ VM](https://learn.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)
+ Extension](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)
""")
@visibility("create", "update")
@secret
@@ -160,7 +160,7 @@ model VirtualMachineScaleSetOSProfile {
* 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)
+ * creation](https://learn.microsoft.com/azure/virtual-machines/linux/using-cloud-init)
*/
@visibility("create", "update")
@secret
@@ -174,7 +174,7 @@ model VirtualMachineScaleSetOSProfile {
/**
* 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).
+ * Distributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*/
linuxConfiguration?: LinuxConfiguration;
@@ -182,9 +182,9 @@ model VirtualMachineScaleSetOSProfile {
* 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)
+ * Linux](https://learn.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).
+ * Windows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*/
#suppress "@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers" "id exists inside sourceVault"
@OpenAPI.extension("x-ms-identifiers", ["sourceVault/id"])
@@ -226,9 +226,9 @@ model WindowsConfiguration {
/**
* 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)
+ * [TimeZoneInfo.Id](https://learn.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).
+ * [TimeZoneInfo.GetSystemTimeZones](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones).
*/
timeZone?: string;
@@ -379,16 +379,16 @@ model WinRMListener {
* 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).
+ * vault](https://learn.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)
+ * Linux](https://learn.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).
+ * Windows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*/
certificateUrl?: url;
}
@@ -396,7 +396,7 @@ model WinRMListener {
/**
* 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).
+ * Distributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*/
model LinuxConfiguration {
/**
@@ -458,7 +458,7 @@ model SshPublicKey {
* 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).
+ * Azure]https://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).
*/
keyData?: string;
}
@@ -547,16 +547,16 @@ model VaultCertificate {
* 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).
+ * vault](https://learn.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)
+ * Linux](https://learn.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).
+ * Windows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).
*/
certificateUrl?: url;
@@ -588,7 +588,7 @@ model VirtualMachineScaleSetStorageProfile {
* 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).
+ * machines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview).
*/
osDisk?: VirtualMachineScaleSetOSDisk;
@@ -596,7 +596,7 @@ model VirtualMachineScaleSetStorageProfile {
* 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).
+ * machines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview).
*/
@OpenAPI.extension("x-ms-identifiers", ["name", "lun"])
dataDisks?: VirtualMachineScaleSetDataDisk[];
@@ -763,8 +763,8 @@ model DiffDiskSettings {
* 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
+ * https://learn.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at
+ * https://learn.microsoft.com/azure/virtual-machines/linux/sizes to check which VM
* sizes exposes a cache disk.
*/
placement?: DiffDiskPlacement;
@@ -1639,7 +1639,7 @@ model VMSizeProperties {
* 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).
+ * region](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list).
*/
vCPUsAvailable?: int32;
@@ -1648,7 +1648,7 @@ model VMSizeProperties {
* 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).
+ * region](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list).
* **Setting this property to 1 also means that hyper-threading is disabled.**
*/
vCPUsPerCore?: int32;
@@ -1982,9 +1982,9 @@ union DiffDiskOptions {
* 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
+ * https://learn.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
+ * https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements
* Minimum api-version for NvmeDisk: 2024-03-01.
*/
union DiffDiskPlacement {
@@ -2015,9 +2015,9 @@ union DiffDiskPlacement {
* 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
+ * https://learn.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
+ * https://learn.microsoft.com/azure/virtual-machines/linux/disks-types
*/
union StorageAccountTypes {
string,
@@ -2319,10 +2319,10 @@ union StatusLevelTypes {
* 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
+ * (https://learn.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
+ * (https://learn.microsoft.com/rest/api/compute/resourceskus/list). For more
* information about Disk Controller Types supported please refer to
* https://aka.ms/azure-diskcontrollertypes.
*/
diff --git a/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2023-11-01-preview/azurefleet.json b/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2023-11-01-preview/azurefleet.json
index c43864ec01d4..0eda0b9808c1 100644
--- a/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2023-11-01-preview/azurefleet.json
+++ b/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2023-11-01-preview/azurefleet.json
@@ -652,7 +652,7 @@
},
"licenseType": {
"type": "string",
- "description": "Specifies that the image or disk that is being used was licensed on-premises.\n
Possible values for Windows Server operating system are:
\nWindows_Client
Windows_Server
Possible values for Linux\nServer operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS\n(for SUSE)
For more information, see [Azure Hybrid Use Benefit for\nWindows\nServer](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)\n
[Azure Hybrid Use Benefit for Linux\nServer](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)\n
Minimum api-version: 2015-06-15"
+ "description": "Specifies that the image or disk that is being used was licensed on-premises.\n
Possible values for Windows Server operating system are:
\nWindows_Client
Windows_Server
Possible values for Linux\nServer operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS\n(for SUSE)
For more information, see [Azure Hybrid Use Benefit for\nWindows\nServer](https://learn.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)\n
[Azure Hybrid Use Benefit for Linux\nServer](https://learn.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)\n
Minimum api-version: 2015-06-15"
},
"scheduledEventsProfile": {
"$ref": "#/definitions/ScheduledEventsProfile",
@@ -816,7 +816,7 @@
},
"DiffDiskPlacement": {
"type": "string",
- "description": "Specifies the ephemeral disk placement for operating system disk. This property\ncan be used by user in the request to choose the location i.e, cache disk or\nresource disk space for Ephemeral OS disk provisioning. For more information on\nEphemeral OS disk size requirements, please refer Ephemeral OS disk size\nrequirements for Windows VM at\nhttps://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements\nand Linux VM at\nhttps://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements\nMinimum api-version for NvmeDisk: 2024-03-01.",
+ "description": "Specifies the ephemeral disk placement for operating system disk. This property\ncan be used by user in the request to choose the location i.e, cache disk or\nresource disk space for Ephemeral OS disk provisioning. For more information on\nEphemeral OS disk size requirements, please refer Ephemeral OS disk size\nrequirements for Windows VM at\nhttps://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements\nand Linux VM at\nhttps://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements\nMinimum api-version for NvmeDisk: 2024-03-01.",
"enum": [
"CacheDisk",
"ResourceDisk",
@@ -854,13 +854,13 @@
},
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
- "description": "Specifies the ephemeral disk placement for operating system disk. Possible\nvalues are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is:\n**CacheDisk** if one is configured for the VM size otherwise **ResourceDisk**\nis used. Refer to the VM size documentation for Windows VM at\nhttps://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at\nhttps://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM\nsizes exposes a cache disk."
+ "description": "Specifies the ephemeral disk placement for operating system disk. Possible\nvalues are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is:\n**CacheDisk** if one is configured for the VM size otherwise **ResourceDisk**\nis used. Refer to the VM size documentation for Windows VM at\nhttps://learn.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at\nhttps://learn.microsoft.com/azure/virtual-machines/linux/sizes to check which VM\nsizes exposes a cache disk."
}
}
},
"DiskControllerTypes": {
"type": "string",
- "description": "Specifies the disk controller type configured for the VM and\nVirtualMachineScaleSet. This property is only supported for virtual machines\nwhose operating system disk and VM sku supports Generation 2\n(https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please\ncheck the HyperVGenerations capability returned as part of VM sku capabilities\nin the response of Microsoft.Compute SKUs api for the region contains V2\n(https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more\ninformation about Disk Controller Types supported please refer to\nhttps://aka.ms/azure-diskcontrollertypes.",
+ "description": "Specifies the disk controller type configured for the VM and\nVirtualMachineScaleSet. This property is only supported for virtual machines\nwhose operating system disk and VM sku supports Generation 2\n(https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), please\ncheck the HyperVGenerations capability returned as part of VM sku capabilities\nin the response of Microsoft.Compute SKUs api for the region contains V2\n(https://learn.microsoft.com/rest/api/compute/resourceskus/list). For more\ninformation about Disk Controller Types supported please refer to\nhttps://aka.ms/azure-diskcontrollertypes.",
"enum": [
"SCSI",
"NVMe"
@@ -1252,7 +1252,7 @@
},
"LinuxConfiguration": {
"type": "object",
- "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
"properties": {
"disablePasswordAuthentication": {
"type": "boolean",
@@ -2052,7 +2052,7 @@
},
"keyData": {
"type": "string",
- "description": "SSH public key certificate used to authenticate with the VM through ssh. The\nkey needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys,\nsee [Create SSH keys on Linux and Mac for Linux VMs in\nAzure]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\nkey needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys,\nsee [Create SSH keys on Linux and Mac for Linux VMs in\nAzure]https://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
@@ -2088,7 +2088,7 @@
},
"StorageAccountTypes": {
"type": "string",
- "description": "Specifies the storage account type for the managed disk. Managed OS disk\nstorage account type can only be set when you create the scale set. NOTE:\nUltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk.\nStandard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS\nuses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD\nzone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant\nstorage. For more information regarding disks supported for Windows Virtual\nMachines, refer to\nhttps://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for\nLinux Virtual Machines, refer to\nhttps://docs.microsoft.com/azure/virtual-machines/linux/disks-types",
+ "description": "Specifies the storage account type for the managed disk. Managed OS disk\nstorage account type can only be set when you create the scale set. NOTE:\nUltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk.\nStandard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS\nuses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD\nzone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant\nstorage. For more information regarding disks supported for Windows Virtual\nMachines, refer to\nhttps://learn.microsoft.com/azure/virtual-machines/windows/disks-types and, for\nLinux Virtual Machines, refer to\nhttps://learn.microsoft.com/azure/virtual-machines/linux/disks-types",
"enum": [
"Standard_LRS",
"Premium_LRS",
@@ -2247,12 +2247,12 @@
"vCPUsAvailable": {
"type": "integer",
"format": "int32",
- "description": "Specifies the number of vCPUs available for the VM. When this property is not\nspecified in the request body the default behavior is to set it to the value of\nvCPUs available for that VM size exposed in api response of [List all available\nvirtual machine sizes in a\nregion](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\nspecified in the request body the default behavior is to set it to the value of\nvCPUs available for that VM size exposed in api response of [List all available\nvirtual machine sizes in a\nregion](https://learn.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\nin the request body the default behavior is set to the value of vCPUsPerCore\nfor the VM Size exposed in api response of [List all available virtual machine\nsizes in a\nregion](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list).\n**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\nin the request body the default behavior is set to the value of vCPUsPerCore\nfor the VM Size exposed in api response of [List all available virtual machine\nsizes in a\nregion](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list).\n**Setting this property to 1 also means that hyper-threading is disabled.**"
}
}
},
@@ -2263,7 +2263,7 @@
"certificateUrl": {
"type": "string",
"format": "uri",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be It is the Base64 encoding of the\nfollowing JSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](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\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be It is the Base64 encoding of the\nfollowing JSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
},
"certificateStore": {
"type": "string",
@@ -2808,7 +2808,7 @@
"adminPassword": {
"type": "string",
"format": "password",
- "description": "Specifies the password of the administrator account.
**Minimum-length\n(Windows):** 8 characters
**Minimum-length (Linux):** 6 characters\n
**Max-length (Windows):** 123 characters
**Max-length\n(Linux):** 72 characters
**Complexity requirements:** 3 out of 4\nconditions below need to be fulfilled
Has lower characters
Has upper\ncharacters
Has a digit
Has a special character (Regex match [\\W_])\n
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\",\n\"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\",\n\"Password22\", \"iloveyou!\"
For resetting the password, see [How to\nreset the Remote Desktop service or its login password in a Windows\nVM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)\n
For resetting root password, see [Manage users, SSH, and check or\nrepair disks on Azure Linux VMs using the VMAccess\nExtension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "description": "Specifies the password of the administrator account.
**Minimum-length\n(Windows):** 8 characters
**Minimum-length (Linux):** 6 characters\n
**Max-length (Windows):** 123 characters
**Max-length\n(Linux):** 72 characters
**Complexity requirements:** 3 out of 4\nconditions below need to be fulfilled
Has lower characters
Has upper\ncharacters
Has a digit
Has a special character (Regex match [\\W_])\n
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\",\n\"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\",\n\"Password22\", \"iloveyou!\"
For resetting the password, see [How to\nreset the Remote Desktop service or its login password in a Windows\nVM](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)\n
For resetting root password, see [Manage users, SSH, and check or\nrepair disks on Azure Linux VMs using the VMAccess\nExtension](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
"x-ms-mutability": [
"update",
"create"
@@ -2818,7 +2818,7 @@
"customData": {
"type": "string",
"format": "password",
- "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string\nis decoded to a binary array that is saved as a file on the Virtual Machine.\nThe maximum length of the binary array is 65535 bytes. For using cloud-init for\nyour VM, see [Using cloud-init to customize a Linux VM during\ncreation](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\nis decoded to a binary array that is saved as a file on the Virtual Machine.\nThe maximum length of the binary array is 65535 bytes. For using cloud-init for\nyour VM, see [Using cloud-init to customize a Linux VM during\ncreation](https://learn.microsoft.com/azure/virtual-machines/linux/using-cloud-init)",
"x-ms-mutability": [
"update",
"create"
@@ -2831,11 +2831,11 @@
},
"linuxConfiguration": {
"$ref": "#/definitions/LinuxConfiguration",
- "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
},
"secrets": {
"type": "array",
- "description": "Specifies set of certificates that should be installed onto the virtual\nmachines in the scale set. To install certificates on a virtual machine it is\nrecommended to use the [Azure Key Vault virtual machine extension for\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).",
+ "description": "Specifies set of certificates that should be installed onto the virtual\nmachines in the scale set. To install certificates on a virtual machine it is\nrecommended to use the [Azure Key Vault virtual machine extension for\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).",
"items": {
"$ref": "#/definitions/VaultSecretGroup"
},
@@ -2936,11 +2936,11 @@
},
"osDisk": {
"$ref": "#/definitions/VirtualMachineScaleSetOSDisk",
- "description": "Specifies information about the operating system disk used by the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ "description": "Specifies information about the operating system disk used by the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview)."
},
"dataDisks": {
"type": "array",
- "description": "Specifies the parameters that are used to add data disks to the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview).",
+ "description": "Specifies the parameters that are used to add data disks to the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview).",
"items": {
"$ref": "#/definitions/VirtualMachineScaleSetDataDisk"
},
@@ -2993,7 +2993,7 @@
"certificateUrl": {
"type": "string",
"format": "uri",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](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\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
}
}
},
@@ -3011,7 +3011,7 @@
},
"timeZone": {
"type": "string",
- "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\".\nPossible values can be\n[TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id)\nvalue from time zones returned by\n[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\".\nPossible values can be\n[TimeZoneInfo.Id](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id)\nvalue from time zones returned by\n[TimeZoneInfo.GetSystemTimeZones](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones)."
},
"additionalUnattendContent": {
"type": "array",
diff --git a/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json b/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json
index 0f9e314d27f5..b4f3bf018123 100644
--- a/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json
+++ b/specification/azurefleet/resource-manager/Microsoft.AzureFleet/preview/2024-05-01-preview/azurefleet.json
@@ -634,7 +634,7 @@
},
"licenseType": {
"type": "string",
- "description": "Specifies that the image or disk that is being used was licensed on-premises.\n
Possible values for Windows Server operating system are:
\nWindows_Client
Windows_Server
Possible values for Linux\nServer operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS\n(for SUSE)
For more information, see [Azure Hybrid Use Benefit for\nWindows\nServer](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)\n
[Azure Hybrid Use Benefit for Linux\nServer](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)\n
Minimum api-version: 2015-06-15"
+ "description": "Specifies that the image or disk that is being used was licensed on-premises.\n
Possible values for Windows Server operating system are:
\nWindows_Client
Windows_Server
Possible values for Linux\nServer operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS\n(for SUSE)
For more information, see [Azure Hybrid Use Benefit for\nWindows\nServer](https://learn.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)\n
[Azure Hybrid Use Benefit for Linux\nServer](https://learn.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)\n
Minimum api-version: 2015-06-15"
},
"scheduledEventsProfile": {
"$ref": "#/definitions/ScheduledEventsProfile",
@@ -803,7 +803,7 @@
},
"DiffDiskPlacement": {
"type": "string",
- "description": "Specifies the ephemeral disk placement for operating system disk. This property\ncan be used by user in the request to choose the location i.e, cache disk or\nresource disk space for Ephemeral OS disk provisioning. For more information on\nEphemeral OS disk size requirements, please refer Ephemeral OS disk size\nrequirements for Windows VM at\nhttps://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements\nand Linux VM at\nhttps://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements\nMinimum api-version for NvmeDisk: 2024-03-01.",
+ "description": "Specifies the ephemeral disk placement for operating system disk. This property\ncan be used by user in the request to choose the location i.e, cache disk or\nresource disk space for Ephemeral OS disk provisioning. For more information on\nEphemeral OS disk size requirements, please refer Ephemeral OS disk size\nrequirements for Windows VM at\nhttps://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements\nand Linux VM at\nhttps://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements\nMinimum api-version for NvmeDisk: 2024-03-01.",
"enum": [
"CacheDisk",
"ResourceDisk",
@@ -841,13 +841,13 @@
},
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
- "description": "Specifies the ephemeral disk placement for operating system disk. Possible\nvalues are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is:\n**CacheDisk** if one is configured for the VM size otherwise **ResourceDisk**\nis used. Refer to the VM size documentation for Windows VM at\nhttps://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at\nhttps://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM\nsizes exposes a cache disk."
+ "description": "Specifies the ephemeral disk placement for operating system disk. Possible\nvalues are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is:\n**CacheDisk** if one is configured for the VM size otherwise **ResourceDisk**\nis used. Refer to the VM size documentation for Windows VM at\nhttps://learn.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at\nhttps://learn.microsoft.com/azure/virtual-machines/linux/sizes to check which VM\nsizes exposes a cache disk."
}
}
},
"DiskControllerTypes": {
"type": "string",
- "description": "Specifies the disk controller type configured for the VM and\nVirtualMachineScaleSet. This property is only supported for virtual machines\nwhose operating system disk and VM sku supports Generation 2\n(https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please\ncheck the HyperVGenerations capability returned as part of VM sku capabilities\nin the response of Microsoft.Compute SKUs api for the region contains V2\n(https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more\ninformation about Disk Controller Types supported please refer to\nhttps://aka.ms/azure-diskcontrollertypes.",
+ "description": "Specifies the disk controller type configured for the VM and\nVirtualMachineScaleSet. This property is only supported for virtual machines\nwhose operating system disk and VM sku supports Generation 2\n(https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), please\ncheck the HyperVGenerations capability returned as part of VM sku capabilities\nin the response of Microsoft.Compute SKUs api for the region contains V2\n(https://learn.microsoft.com/rest/api/compute/resourceskus/list). For more\ninformation about Disk Controller Types supported please refer to\nhttps://aka.ms/azure-diskcontrollertypes.",
"enum": [
"SCSI",
"NVMe"
@@ -1239,7 +1239,7 @@
},
"LinuxConfiguration": {
"type": "object",
- "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
"properties": {
"disablePasswordAuthentication": {
"type": "boolean",
@@ -2049,7 +2049,7 @@
},
"keyData": {
"type": "string",
- "description": "SSH public key certificate used to authenticate with the VM through ssh. The\nkey needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys,\nsee [Create SSH keys on Linux and Mac for Linux VMs in\nAzure]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\nkey needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys,\nsee [Create SSH keys on Linux and Mac for Linux VMs in\nAzure]https://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
@@ -2085,7 +2085,7 @@
},
"StorageAccountTypes": {
"type": "string",
- "description": "Specifies the storage account type for the managed disk. Managed OS disk\nstorage account type can only be set when you create the scale set. NOTE:\nUltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk.\nStandard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS\nuses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD\nzone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant\nstorage. For more information regarding disks supported for Windows Virtual\nMachines, refer to\nhttps://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for\nLinux Virtual Machines, refer to\nhttps://docs.microsoft.com/azure/virtual-machines/linux/disks-types",
+ "description": "Specifies the storage account type for the managed disk. Managed OS disk\nstorage account type can only be set when you create the scale set. NOTE:\nUltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk.\nStandard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS\nuses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD\nzone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant\nstorage. For more information regarding disks supported for Windows Virtual\nMachines, refer to\nhttps://learn.microsoft.com/azure/virtual-machines/windows/disks-types and, for\nLinux Virtual Machines, refer to\nhttps://learn.microsoft.com/azure/virtual-machines/linux/disks-types",
"enum": [
"Standard_LRS",
"Premium_LRS",
@@ -2244,12 +2244,12 @@
"vCPUsAvailable": {
"type": "integer",
"format": "int32",
- "description": "Specifies the number of vCPUs available for the VM. When this property is not\nspecified in the request body the default behavior is to set it to the value of\nvCPUs available for that VM size exposed in api response of [List all available\nvirtual machine sizes in a\nregion](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\nspecified in the request body the default behavior is to set it to the value of\nvCPUs available for that VM size exposed in api response of [List all available\nvirtual machine sizes in a\nregion](https://learn.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\nin the request body the default behavior is set to the value of vCPUsPerCore\nfor the VM Size exposed in api response of [List all available virtual machine\nsizes in a\nregion](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list).\n**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\nin the request body the default behavior is set to the value of vCPUsPerCore\nfor the VM Size exposed in api response of [List all available virtual machine\nsizes in a\nregion](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list).\n**Setting this property to 1 also means that hyper-threading is disabled.**"
}
}
},
@@ -2260,7 +2260,7 @@
"certificateUrl": {
"type": "string",
"format": "uri",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be It is the Base64 encoding of the\nfollowing JSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](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\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be It is the Base64 encoding of the\nfollowing JSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
},
"certificateStore": {
"type": "string",
@@ -2810,7 +2810,7 @@
"adminPassword": {
"type": "string",
"format": "password",
- "description": "Specifies the password of the administrator account.
**Minimum-length\n(Windows):** 8 characters
**Minimum-length (Linux):** 6 characters\n
**Max-length (Windows):** 123 characters
**Max-length\n(Linux):** 72 characters
**Complexity requirements:** 3 out of 4\nconditions below need to be fulfilled
Has lower characters
Has upper\ncharacters
Has a digit
Has a special character (Regex match [\\W_])\n
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\",\n\"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\",\n\"Password22\", \"iloveyou!\"
For resetting the password, see [How to\nreset the Remote Desktop service or its login password in a Windows\nVM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)\n
For resetting root password, see [Manage users, SSH, and check or\nrepair disks on Azure Linux VMs using the VMAccess\nExtension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "description": "Specifies the password of the administrator account.
**Minimum-length\n(Windows):** 8 characters
**Minimum-length (Linux):** 6 characters\n
**Max-length (Windows):** 123 characters
**Max-length\n(Linux):** 72 characters
**Complexity requirements:** 3 out of 4\nconditions below need to be fulfilled
Has lower characters
Has upper\ncharacters
Has a digit
Has a special character (Regex match [\\W_])\n
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\",\n\"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\",\n\"Password22\", \"iloveyou!\"
For resetting the password, see [How to\nreset the Remote Desktop service or its login password in a Windows\nVM](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)\n
For resetting root password, see [Manage users, SSH, and check or\nrepair disks on Azure Linux VMs using the VMAccess\nExtension](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
"x-ms-mutability": [
"update",
"create"
@@ -2820,7 +2820,7 @@
"customData": {
"type": "string",
"format": "password",
- "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string\nis decoded to a binary array that is saved as a file on the Virtual Machine.\nThe maximum length of the binary array is 65535 bytes. For using cloud-init for\nyour VM, see [Using cloud-init to customize a Linux VM during\ncreation](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\nis decoded to a binary array that is saved as a file on the Virtual Machine.\nThe maximum length of the binary array is 65535 bytes. For using cloud-init for\nyour VM, see [Using cloud-init to customize a Linux VM during\ncreation](https://learn.microsoft.com/azure/virtual-machines/linux/using-cloud-init)",
"x-ms-mutability": [
"update",
"create"
@@ -2833,11 +2833,11 @@
},
"linuxConfiguration": {
"$ref": "#/definitions/LinuxConfiguration",
- "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
},
"secrets": {
"type": "array",
- "description": "Specifies set of certificates that should be installed onto the virtual\nmachines in the scale set. To install certificates on a virtual machine it is\nrecommended to use the [Azure Key Vault virtual machine extension for\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).",
+ "description": "Specifies set of certificates that should be installed onto the virtual\nmachines in the scale set. To install certificates on a virtual machine it is\nrecommended to use the [Azure Key Vault virtual machine extension for\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).",
"items": {
"$ref": "#/definitions/VaultSecretGroup"
},
@@ -2938,11 +2938,11 @@
},
"osDisk": {
"$ref": "#/definitions/VirtualMachineScaleSetOSDisk",
- "description": "Specifies information about the operating system disk used by the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ "description": "Specifies information about the operating system disk used by the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview)."
},
"dataDisks": {
"type": "array",
- "description": "Specifies the parameters that are used to add data disks to the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview).",
+ "description": "Specifies the parameters that are used to add data disks to the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview).",
"items": {
"$ref": "#/definitions/VirtualMachineScaleSetDataDisk"
},
@@ -3002,7 +3002,7 @@
"certificateUrl": {
"type": "string",
"format": "uri",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](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\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
}
}
},
@@ -3020,7 +3020,7 @@
},
"timeZone": {
"type": "string",
- "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\".\nPossible values can be\n[TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id)\nvalue from time zones returned by\n[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\".\nPossible values can be\n[TimeZoneInfo.Id](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id)\nvalue from time zones returned by\n[TimeZoneInfo.GetSystemTimeZones](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones)."
},
"additionalUnattendContent": {
"type": "array",
diff --git a/specification/azurefleet/resource-manager/Microsoft.AzureFleet/stable/2024-11-01/azurefleet.json b/specification/azurefleet/resource-manager/Microsoft.AzureFleet/stable/2024-11-01/azurefleet.json
index 846c2c7bb283..2dc5d0f17a7f 100644
--- a/specification/azurefleet/resource-manager/Microsoft.AzureFleet/stable/2024-11-01/azurefleet.json
+++ b/specification/azurefleet/resource-manager/Microsoft.AzureFleet/stable/2024-11-01/azurefleet.json
@@ -747,7 +747,7 @@
},
"licenseType": {
"type": "string",
- "description": "Specifies that the image or disk that is being used was licensed on-premises.\n
Possible values for Windows Server operating system are:
\nWindows_Client
Windows_Server
Possible values for Linux\nServer operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS\n(for SUSE)
For more information, see [Azure Hybrid Use Benefit for\nWindows\nServer](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)\n
[Azure Hybrid Use Benefit for Linux\nServer](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)\n
Minimum api-version: 2015-06-15"
+ "description": "Specifies that the image or disk that is being used was licensed on-premises.\n
Possible values for Windows Server operating system are:
\nWindows_Client
Windows_Server
Possible values for Linux\nServer operating system are:
RHEL_BYOS (for RHEL)
SLES_BYOS\n(for SUSE)
For more information, see [Azure Hybrid Use Benefit for\nWindows\nServer](https://learn.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing)\n
[Azure Hybrid Use Benefit for Linux\nServer](https://learn.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux)\n
Minimum api-version: 2015-06-15"
},
"scheduledEventsProfile": {
"$ref": "#/definitions/ScheduledEventsProfile",
@@ -956,7 +956,7 @@
},
"DiffDiskPlacement": {
"type": "string",
- "description": "Specifies the ephemeral disk placement for operating system disk. This property\ncan be used by user in the request to choose the location i.e, cache disk or\nresource disk space for Ephemeral OS disk provisioning. For more information on\nEphemeral OS disk size requirements, please refer Ephemeral OS disk size\nrequirements for Windows VM at\nhttps://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements\nand Linux VM at\nhttps://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements\nMinimum api-version for NvmeDisk: 2024-03-01.",
+ "description": "Specifies the ephemeral disk placement for operating system disk. This property\ncan be used by user in the request to choose the location i.e, cache disk or\nresource disk space for Ephemeral OS disk provisioning. For more information on\nEphemeral OS disk size requirements, please refer Ephemeral OS disk size\nrequirements for Windows VM at\nhttps://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements\nand Linux VM at\nhttps://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements\nMinimum api-version for NvmeDisk: 2024-03-01.",
"enum": [
"CacheDisk",
"ResourceDisk",
@@ -994,13 +994,13 @@
},
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
- "description": "Specifies the ephemeral disk placement for operating system disk. Possible\nvalues are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is:\n**CacheDisk** if one is configured for the VM size otherwise **ResourceDisk**\nis used. Refer to the VM size documentation for Windows VM at\nhttps://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at\nhttps://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM\nsizes exposes a cache disk."
+ "description": "Specifies the ephemeral disk placement for operating system disk. Possible\nvalues are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is:\n**CacheDisk** if one is configured for the VM size otherwise **ResourceDisk**\nis used. Refer to the VM size documentation for Windows VM at\nhttps://learn.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at\nhttps://learn.microsoft.com/azure/virtual-machines/linux/sizes to check which VM\nsizes exposes a cache disk."
}
}
},
"DiskControllerTypes": {
"type": "string",
- "description": "Specifies the disk controller type configured for the VM and\nVirtualMachineScaleSet. This property is only supported for virtual machines\nwhose operating system disk and VM sku supports Generation 2\n(https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please\ncheck the HyperVGenerations capability returned as part of VM sku capabilities\nin the response of Microsoft.Compute SKUs api for the region contains V2\n(https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more\ninformation about Disk Controller Types supported please refer to\nhttps://aka.ms/azure-diskcontrollertypes.",
+ "description": "Specifies the disk controller type configured for the VM and\nVirtualMachineScaleSet. This property is only supported for virtual machines\nwhose operating system disk and VM sku supports Generation 2\n(https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), please\ncheck the HyperVGenerations capability returned as part of VM sku capabilities\nin the response of Microsoft.Compute SKUs api for the region contains V2\n(https://learn.microsoft.com/rest/api/compute/resourceskus/list). For more\ninformation about Disk Controller Types supported please refer to\nhttps://aka.ms/azure-diskcontrollertypes.",
"enum": [
"SCSI",
"NVMe"
@@ -1400,7 +1400,7 @@
},
"LinuxConfiguration": {
"type": "object",
- "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
"properties": {
"disablePasswordAuthentication": {
"type": "boolean",
@@ -2251,7 +2251,7 @@
},
"keyData": {
"type": "string",
- "description": "SSH public key certificate used to authenticate with the VM through ssh. The\nkey needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys,\nsee [Create SSH keys on Linux and Mac for Linux VMs in\nAzure]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\nkey needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys,\nsee [Create SSH keys on Linux and Mac for Linux VMs in\nAzure]https://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
@@ -2287,7 +2287,7 @@
},
"StorageAccountTypes": {
"type": "string",
- "description": "Specifies the storage account type for the managed disk. Managed OS disk\nstorage account type can only be set when you create the scale set. NOTE:\nUltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk.\nStandard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS\nuses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD\nzone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant\nstorage. For more information regarding disks supported for Windows Virtual\nMachines, refer to\nhttps://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for\nLinux Virtual Machines, refer to\nhttps://docs.microsoft.com/azure/virtual-machines/linux/disks-types",
+ "description": "Specifies the storage account type for the managed disk. Managed OS disk\nstorage account type can only be set when you create the scale set. NOTE:\nUltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk.\nStandard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS\nuses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD\nzone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant\nstorage. For more information regarding disks supported for Windows Virtual\nMachines, refer to\nhttps://learn.microsoft.com/azure/virtual-machines/windows/disks-types and, for\nLinux Virtual Machines, refer to\nhttps://learn.microsoft.com/azure/virtual-machines/linux/disks-types",
"enum": [
"Standard_LRS",
"Premium_LRS",
@@ -2684,12 +2684,12 @@
"vCPUsAvailable": {
"type": "integer",
"format": "int32",
- "description": "Specifies the number of vCPUs available for the VM. When this property is not\nspecified in the request body the default behavior is to set it to the value of\nvCPUs available for that VM size exposed in api response of [List all available\nvirtual machine sizes in a\nregion](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\nspecified in the request body the default behavior is to set it to the value of\nvCPUs available for that VM size exposed in api response of [List all available\nvirtual machine sizes in a\nregion](https://learn.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\nin the request body the default behavior is set to the value of vCPUsPerCore\nfor the VM Size exposed in api response of [List all available virtual machine\nsizes in a\nregion](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list).\n**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\nin the request body the default behavior is set to the value of vCPUsPerCore\nfor the VM Size exposed in api response of [List all available virtual machine\nsizes in a\nregion](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list).\n**Setting this property to 1 also means that hyper-threading is disabled.**"
}
}
},
@@ -2700,7 +2700,7 @@
"certificateUrl": {
"type": "string",
"format": "uri",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be It is the Base64 encoding of the\nfollowing JSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](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\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be It is the Base64 encoding of the\nfollowing JSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
},
"certificateStore": {
"type": "string",
@@ -3250,7 +3250,7 @@
"adminPassword": {
"type": "string",
"format": "password",
- "description": "Specifies the password of the administrator account.
**Minimum-length\n(Windows):** 8 characters
**Minimum-length (Linux):** 6 characters\n
**Max-length (Windows):** 123 characters
**Max-length\n(Linux):** 72 characters
**Complexity requirements:** 3 out of 4\nconditions below need to be fulfilled
Has lower characters
Has upper\ncharacters
Has a digit
Has a special character (Regex match [\\W_])\n
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\",\n\"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\",\n\"Password22\", \"iloveyou!\"
For resetting the password, see [How to\nreset the Remote Desktop service or its login password in a Windows\nVM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)\n
For resetting root password, see [Manage users, SSH, and check or\nrepair disks on Azure Linux VMs using the VMAccess\nExtension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
+ "description": "Specifies the password of the administrator account.
**Minimum-length\n(Windows):** 8 characters
**Minimum-length (Linux):** 6 characters\n
**Max-length (Windows):** 123 characters
**Max-length\n(Linux):** 72 characters
**Complexity requirements:** 3 out of 4\nconditions below need to be fulfilled
Has lower characters
Has upper\ncharacters
Has a digit
Has a special character (Regex match [\\W_])\n
**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\",\n\"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\",\n\"Password22\", \"iloveyou!\"
For resetting the password, see [How to\nreset the Remote Desktop service or its login password in a Windows\nVM](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp)\n
For resetting root password, see [Manage users, SSH, and check or\nrepair disks on Azure Linux VMs using the VMAccess\nExtension](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
"x-ms-mutability": [
"update",
"create"
@@ -3260,7 +3260,7 @@
"customData": {
"type": "string",
"format": "password",
- "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string\nis decoded to a binary array that is saved as a file on the Virtual Machine.\nThe maximum length of the binary array is 65535 bytes. For using cloud-init for\nyour VM, see [Using cloud-init to customize a Linux VM during\ncreation](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\nis decoded to a binary array that is saved as a file on the Virtual Machine.\nThe maximum length of the binary array is 65535 bytes. For using cloud-init for\nyour VM, see [Using cloud-init to customize a Linux VM during\ncreation](https://learn.microsoft.com/azure/virtual-machines/linux/using-cloud-init)",
"x-ms-mutability": [
"update",
"create"
@@ -3273,11 +3273,11 @@
},
"linuxConfiguration": {
"$ref": "#/definitions/LinuxConfiguration",
- "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
+ "description": "Specifies the Linux operating system settings on the virtual machine. For a\nlist of supported Linux distributions, see [Linux on Azure-Endorsed\nDistributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros)."
},
"secrets": {
"type": "array",
- "description": "Specifies set of certificates that should be installed onto the virtual\nmachines in the scale set. To install certificates on a virtual machine it is\nrecommended to use the [Azure Key Vault virtual machine extension for\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).",
+ "description": "Specifies set of certificates that should be installed onto the virtual\nmachines in the scale set. To install certificates on a virtual machine it is\nrecommended to use the [Azure Key Vault virtual machine extension for\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows).",
"items": {
"$ref": "#/definitions/VaultSecretGroup"
},
@@ -3378,11 +3378,11 @@
},
"osDisk": {
"$ref": "#/definitions/VirtualMachineScaleSetOSDisk",
- "description": "Specifies information about the operating system disk used by the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview)."
+ "description": "Specifies information about the operating system disk used by the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview)."
},
"dataDisks": {
"type": "array",
- "description": "Specifies the parameters that are used to add data disks to the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview).",
+ "description": "Specifies the parameters that are used to add data disks to the virtual\nmachines in the scale set. For more information about disks, see [About disks\nand VHDs for Azure virtual\nmachines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview).",
"items": {
"$ref": "#/definitions/VirtualMachineScaleSetDataDisk"
},
@@ -3442,7 +3442,7 @@
"certificateUrl": {
"type": "string",
"format": "uri",
- "description": "This is the URL of a certificate that has been uploaded to Key Vault as a\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](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\nsecret. For adding a secret to the Key Vault, see [Add a key or secret to the\nkey\nvault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add).\nIn this case, your certificate needs to be the Base64 encoding of the following\nJSON Object which is encoded in UTF-8:
{
\n\"data\":\"\",
\"dataType\":\"pfx\",
\n\"password\":\"\"
}
To install certificates on a virtual\nmachine it is recommended to use the [Azure Key Vault virtual machine extension\nfor\nLinux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux)\nor the [Azure Key Vault virtual machine extension for\nWindows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows)."
}
}
},
@@ -3460,7 +3460,7 @@
},
"timeZone": {
"type": "string",
- "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\".\nPossible values can be\n[TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id)\nvalue from time zones returned by\n[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\".\nPossible values can be\n[TimeZoneInfo.Id](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id)\nvalue from time zones returned by\n[TimeZoneInfo.GetSystemTimeZones](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones)."
},
"additionalUnattendContent": {
"type": "array",
diff --git a/specification/azurelargeinstance/AzureLargeInstance.Management/models.tsp b/specification/azurelargeinstance/AzureLargeInstance.Management/models.tsp
index 92155d57e702..0df5344c89c0 100644
--- a/specification/azurelargeinstance/AzureLargeInstance.Management/models.tsp
+++ b/specification/azurelargeinstance/AzureLargeInstance.Management/models.tsp
@@ -29,7 +29,7 @@ union AzureLargeInstanceHardwareTypeNamesEnum {
"SDFLEX",
}
-@doc("Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://docs.microsoft.com/azure/sap/large-instances/hana-available-skus")
+@doc("Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://learn.microsoft.com/azure/sap/large-instances/hana-available-skus")
union AzureLargeInstanceSizeNamesEnum {
string,
diff --git a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json
index 93519783821a..fc81535df5cb 100644
--- a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json
+++ b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2023-07-20-preview/azurelargeinstance.json
@@ -917,7 +917,7 @@
},
"AzureLargeInstanceSizeNamesEnum": {
"type": "string",
- "description": "Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://docs.microsoft.com/azure/sap/large-instances/hana-available-skus",
+ "description": "Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://learn.microsoft.com/azure/sap/large-instances/hana-available-skus",
"enum": [
"S72m",
"S144m",
diff --git a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2024-08-01-preview/azurelargeinstance.json b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2024-08-01-preview/azurelargeinstance.json
index c1d2a11ebd0b..b9cb56b9677e 100644
--- a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2024-08-01-preview/azurelargeinstance.json
+++ b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/preview/2024-08-01-preview/azurelargeinstance.json
@@ -1142,7 +1142,7 @@
},
"AzureLargeInstanceSizeNamesEnum": {
"type": "string",
- "description": "Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://docs.microsoft.com/azure/sap/large-instances/hana-available-skus",
+ "description": "Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://learn.microsoft.com/azure/sap/large-instances/hana-available-skus",
"enum": [
"S72m",
"S144m",
diff --git a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/stable/2024-04-10/azurelargeinstance.json b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/stable/2024-04-10/azurelargeinstance.json
index c20d5c66b605..3b0432bf55ec 100644
--- a/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/stable/2024-04-10/azurelargeinstance.json
+++ b/specification/azurelargeinstance/resource-manager/Microsoft.AzureLargeInstance/stable/2024-04-10/azurelargeinstance.json
@@ -913,7 +913,7 @@
},
"AzureLargeInstanceSizeNamesEnum": {
"type": "string",
- "description": "Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://docs.microsoft.com/azure/sap/large-instances/hana-available-skus",
+ "description": "Enum of available model types (each of which have their own storage / memory sizes) for an Azure Large Instance type. See https://learn.microsoft.com/azure/sap/large-instances/hana-available-skus",
"enum": [
"S72m",
"S144m",
diff --git a/specification/azurestackhci/AzureStackHCI.StackHCIVM.Management/models.tsp b/specification/azurestackhci/AzureStackHCI.StackHCIVM.Management/models.tsp
index 78e564c9a975..e102940d5e41 100644
--- a/specification/azurestackhci/AzureStackHCI.StackHCIVM.Management/models.tsp
+++ b/specification/azurestackhci/AzureStackHCI.StackHCIVM.Management/models.tsp
@@ -1409,7 +1409,7 @@ model SshPublicKey {
@doc("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")
path?: string;
- @doc("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).")
+ @doc("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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).")
keyData?: string;
}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-02-01-preview/stackhcivm.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-02-01-preview/stackhcivm.json
index 742cafe03e3c..ea32b8d012a8 100644
--- a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-02-01-preview/stackhcivm.json
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-02-01-preview/stackhcivm.json
@@ -5689,7 +5689,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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-05-01-preview/stackhcivm.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-05-01-preview/stackhcivm.json
index 443e85a6b372..9b0d6face304 100644
--- a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-05-01-preview/stackhcivm.json
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-05-01-preview/stackhcivm.json
@@ -5736,7 +5736,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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-08-01-preview/stackhcivm.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-08-01-preview/stackhcivm.json
index 5f2cf9663887..d0b1ab9157a1 100644
--- a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-08-01-preview/stackhcivm.json
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCIVM/preview/2024-08-01-preview/stackhcivm.json
@@ -5890,7 +5890,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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
diff --git a/specification/batch/Azure.Batch/models.tsp b/specification/batch/Azure.Batch/models.tsp
index 2defed7182fc..351b00907cbe 100644
--- a/specification/batch/Azure.Batch/models.tsp
+++ b/specification/batch/Azure.Batch/models.tsp
@@ -264,7 +264,7 @@ union IpAddressProvisioningType {
NoPublicIpAddresses: "nopublicipaddresses",
}
-@doc("Specifies the ephemeral disk placement for operating system disk for all compute nodes (VMs) in the pool. This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements")
+@doc("Specifies the ephemeral disk placement for operating system disk for all compute nodes (VMs) in the pool. This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements")
union DiffDiskPlacement {
string,
@@ -793,7 +793,7 @@ model BatchPoolUsageMetrics {
@doc("The end time of the aggregation interval covered by this entry.")
endTime: utcDateTime;
- @doc("The size of virtual machines in the Pool. All VMs in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).")
+ @doc("The size of virtual machines in the Pool. All VMs in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes).")
vmSize: string;
@doc("The total core hours used in the Pool during this aggregation interval.")
@@ -857,7 +857,7 @@ model ImageReference {
@doc("The version of the Azure Virtual Machines Marketplace Image. A value of 'latest' can be specified to select the latest version of an Image. If omitted, the default is 'latest'.")
version?: string;
- @doc("The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version. This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration.")
+ @doc("The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version. This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration.")
virtualMachineImageId?: string;
@doc("The specific version of the platform image or marketplace image used to create the node. This read-only field differs from 'version' only if the value specified for 'version' when the pool was created was 'latest'.")
@@ -1318,7 +1318,7 @@ model BatchJobSpecification {
@doc("The network configuration for the Job.")
model BatchJobNetworkConfiguration {
- @doc("The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.")
+ @doc("The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.")
subnetId: string;
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@@ -1367,7 +1367,7 @@ model BatchJobManagerTask {
@doc("The display name of the Job Manager Task. It need not be unique and can contain any Unicode characters up to a maximum length of 1024.")
displayName?: string;
- @doc("The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
commandLine: string;
@doc("The settings for the container under which the Job Manager Task runs. If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files.")
@@ -1523,7 +1523,7 @@ model OutputFileBlobContainerDestination {
@doc("The reference to the user assigned identity to use to access Azure Blob Storage specified by containerUrl. The identity must have write access to the Azure Blob Storage container.")
identityReference?: BatchNodeIdentityReference;
- @doc("A list of name-value pairs for headers to be used in uploading output files. These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://docs.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types.")
+ @doc("A list of name-value pairs for headers to be used in uploading output files. These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://learn.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types.")
uploadHeaders?: HttpHeader[];
}
@@ -1645,7 +1645,7 @@ model BatchJobPreparationTask {
@doc("A string that uniquely identifies the Job Preparation Task within the Job. The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters. If you do not specify this property, the Batch service assigns a default value of 'jobpreparation'. No other Task in the Job can have the same ID as the Job Preparation Task. If you try to submit a Task with the same id, the Batch service rejects the request with error code TaskIdSameAsJobPreparationTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict).")
id?: string;
- @doc("The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
commandLine: string;
@doc("The settings for the container under which the Job Preparation Task runs. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files.")
@@ -1692,7 +1692,7 @@ model BatchJobReleaseTask {
@doc("A string that uniquely identifies the Job Release Task within the Job. The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters. If you do not specify this property, the Batch service assigns a default value of 'jobrelease'. No other Task in the Job can have the same ID as the Job Release Task. If you try to submit a Task with the same id, the Batch service rejects the request with error code TaskIdSameAsJobReleaseTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict).")
id?: string;
- @doc("The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
commandLine: string;
@doc("The settings for the container under which the Job Release Task runs. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files.")
@@ -1746,7 +1746,7 @@ model BatchPoolSpecification {
@doc("The display name for the Pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.")
displayName?: string;
- @doc("The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).")
+ @doc("The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes).")
vmSize: string;
@doc("The virtual machine configuration for the Pool. This property must be specified.")
@@ -1823,7 +1823,7 @@ model VirtualMachineConfiguration {
@doc("Windows operating system settings on the virtual machine. This property must not be specified if the imageReference property specifies a Linux OS Image.")
windowsConfiguration?: WindowsConfiguration;
- @doc("The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine.")
+ @doc("The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://learn.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://learn.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine.")
dataDisks?: DataDisk[];
@doc("""
@@ -1976,7 +1976,7 @@ model OSDisk {
compute node (VM).
""")
model DiffDiskSettings {
- @doc("Specifies the ephemeral disk placement for operating system disk for all VMs in the pool. This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.")
+ @doc("Specifies the ephemeral disk placement for operating system disk for all VMs in the pool. This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.")
placement?: DiffDiskPlacement;
}
@@ -1989,7 +1989,7 @@ model BatchTaskSchedulingPolicy {
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Property types must use camelCase"
@doc("The network configuration for a Pool.")
model NetworkConfiguration {
- @doc("The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration")
+ @doc("The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration")
subnetId?: string;
@doc("The scope of dynamic vnet assignment.")
@@ -2081,7 +2081,7 @@ model PublicIpAddressConfiguration {
block Batch from being able to re-run the StartTask.
""")
model BatchStartTask {
- @doc("The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
commandLine: string;
@doc("The settings for the container under which the StartTask runs. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files.")
@@ -2995,7 +2995,7 @@ model BatchPoolUpdateContent {
@doc("The display name for the Pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. This field can be updated only when the pool is empty.")
displayName?: string;
- @doc("The size of virtual machines in the Pool. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).
This field can be updated only when the pool is empty.")
+ @doc("The size of virtual machines in the Pool. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes).
This field can be updated only when the pool is empty.")
vmSize?: string;
@doc("Whether the Pool permits direct communication between Compute Nodes. Enabling inter-node communication limits the maximum size of the Pool due to deployment restrictions on the Compute Nodes of the Pool. This may result in the Pool not reaching its desired size. The default value is false.
This field can be updated only when the pool is empty.")
@@ -3214,7 +3214,7 @@ model BatchTask {
@visibility("read")
previousStateTransitionTime?: utcDateTime;
- @doc("The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
@visibility("read")
commandLine?: string;
@@ -3291,7 +3291,7 @@ model BatchTaskCreateContent {
@doc("How the Batch service should respond when the Task completes.")
exitConditions?: ExitConditions;
- @doc("The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).")
commandLine: string;
@doc("The settings for the container under which the Task runs. If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files.")
@@ -3750,7 +3750,7 @@ model BatchNode {
@doc("An identifier which can be passed when adding a Task to request that the Task be scheduled on this Compute Node. Note that this is just a soft affinity. If the target Compute Node is busy or unavailable at the time the Task is scheduled, then the Task will be scheduled elsewhere.")
affinityId?: string;
- @doc("The size of the virtual machine hosting the Compute Node. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).")
+ @doc("The size of the virtual machine hosting the Compute Node. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes).")
vmSize?: string;
@doc("The total number of Job Tasks completed on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks.")
diff --git a/specification/batch/Azure.Batch/routes.tsp b/specification/batch/Azure.Batch/routes.tsp
index b77235ba99a9..33883e51c534 100644
--- a/specification/batch/Azure.Batch/routes.tsp
+++ b/specification/batch/Azure.Batch/routes.tsp
@@ -93,7 +93,7 @@ interface Pools {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.
""")
@query
@clientName("filter", "!autorest")
@@ -127,7 +127,7 @@ interface Pools {
{
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.
""")
@query
@clientName("filter", "!autorest")
@@ -350,7 +350,7 @@ interface Pools {
{
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.
""")
@query
@clientName("filter", "!autorest")
@@ -370,7 +370,7 @@ interface Pools {
{
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.
""")
@query
@clientName("filter", "!autorest")
@@ -582,7 +582,7 @@ interface Jobs {
{
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.
""")
@query
@clientName("filter", "!autorest")
@@ -613,7 +613,7 @@ interface Jobs {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.
""")
@query
@clientName("filter", "!autorest")
@@ -654,7 +654,7 @@ interface Jobs {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.
""")
@query
@clientName("filter", "!autorest")
@@ -863,7 +863,7 @@ interface JobSchedules {
{
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.
""")
@query
@clientName("filter", "!autorest")
@@ -925,7 +925,7 @@ interface Tasks {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.
""")
@query
@clientName("filter", "!autorest")
@@ -1199,7 +1199,7 @@ interface Tasks {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.
""")
@query
@clientName("filter", "!autorest")
@@ -1519,7 +1519,7 @@ interface Nodes {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.
""")
@query
@clientName("filter", "!autorest")
@@ -1653,7 +1653,7 @@ interface Nodes {
@doc("""
An OData $filter clause. For more information on constructing this filter, see
- https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.
+ https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.
""")
@query
@clientName("filter", "!autorest")
diff --git a/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json b/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json
index bfada817a590..d902ee9ac80a 100644
--- a/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json
+++ b/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json
@@ -330,7 +330,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.",
"required": false,
"type": "string"
},
@@ -1505,7 +1505,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.",
"required": false,
"type": "string"
},
@@ -1727,7 +1727,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.",
"required": false,
"type": "string"
},
@@ -2423,7 +2423,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.",
"required": false,
"type": "string"
},
@@ -3480,7 +3480,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.",
"required": false,
"type": "string"
},
@@ -4659,7 +4659,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.",
"required": false,
"type": "string"
},
@@ -4926,7 +4926,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.",
"required": false,
"type": "string"
}
@@ -5035,7 +5035,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.",
"required": false,
"type": "string"
},
@@ -6191,7 +6191,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.",
"required": false,
"type": "string"
},
@@ -7018,7 +7018,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.",
"required": false,
"type": "string"
},
@@ -8955,7 +8955,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.",
"required": false,
"type": "string"
}
@@ -9064,7 +9064,7 @@
{
"name": "$filter",
"in": "query",
- "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see\nhttps://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.",
"required": false,
"type": "string"
}
@@ -9902,7 +9902,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettings",
@@ -9989,7 +9989,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Job Manager Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettingsUpdate",
@@ -10064,7 +10064,7 @@
"properties": {
"subnetId": {
"type": "string",
- "description": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration."
+ "description": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration."
},
"skipWithdrawFromVNet": {
"type": "boolean",
@@ -10082,7 +10082,7 @@
"properties": {
"subnetId": {
"type": "string",
- "description": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration."
+ "description": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration."
},
"skipWithdrawFromVNet": {
"type": "boolean",
@@ -10144,7 +10144,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettings",
@@ -10281,7 +10281,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Job Preparation Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettingsUpdate",
@@ -10331,7 +10331,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettings",
@@ -10455,7 +10455,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Job Release Task. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettingsUpdate",
@@ -11268,7 +11268,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of the virtual machine hosting the Compute Node. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "The size of the virtual machine hosting the Compute Node. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"totalTasksRun": {
"type": "integer",
@@ -12874,7 +12874,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"virtualMachineConfiguration": {
"$ref": "#/definitions/VirtualMachineConfiguration",
@@ -12988,7 +12988,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"virtualMachineConfiguration": {
"$ref": "#/definitions/VirtualMachineConfigurationUpdate",
@@ -13156,7 +13156,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of virtual machines in the Pool. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).
This field can be updated only when the pool is empty."
+ "description": "The size of virtual machines in the Pool. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes).
This field can be updated only when the pool is empty."
},
"enableInterNodeCommunication": {
"type": "boolean",
@@ -13252,7 +13252,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of virtual machines in the Pool. All VMs in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "The size of virtual machines in the Pool. All VMs in a Pool are the same size. For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"totalCoreHours": {
"type": "number",
@@ -13300,7 +13300,7 @@
"properties": {
"commandLine": {
"type": "string",
- "description": "The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettings",
@@ -13422,7 +13422,7 @@
"properties": {
"commandLine": {
"type": "string",
- "description": "The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the StartTask. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettingsUpdate",
@@ -13655,7 +13655,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables).",
+ "description": "The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).",
"readOnly": true
},
"containerSettings": {
@@ -14006,7 +14006,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettings",
@@ -14793,7 +14793,7 @@
},
"DiffDiskPlacement": {
"type": "string",
- "description": "Specifies the ephemeral disk placement for operating system disk for all compute nodes (VMs) in the pool. This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
+ "description": "Specifies the ephemeral disk placement for operating system disk for all compute nodes (VMs) in the pool. This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
"enum": [
"cachedisk"
],
@@ -14815,7 +14815,7 @@
"properties": {
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
- "description": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool. This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements."
+ "description": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool. This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements."
}
}
},
@@ -15138,7 +15138,7 @@
},
"virtualMachineImageId": {
"type": "string",
- "description": "The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version. This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration."
+ "description": "The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version. This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration."
},
"exactVersion": {
"type": "string",
@@ -15491,7 +15491,7 @@
"properties": {
"subnetId": {
"type": "string",
- "description": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration"
+ "description": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration"
},
"dynamicVNetAssignmentScope": {
"$ref": "#/definitions/DynamicVNetAssignmentScope",
@@ -15518,7 +15518,7 @@
"properties": {
"subnetId": {
"type": "string",
- "description": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration"
+ "description": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration"
},
"dynamicVNetAssignmentScope": {
"$ref": "#/definitions/DynamicVNetAssignmentScope",
@@ -15756,7 +15756,7 @@
},
"uploadHeaders": {
"type": "array",
- "description": "A list of name-value pairs for headers to be used in uploading output files. These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://docs.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types.",
+ "description": "A list of name-value pairs for headers to be used in uploading output files. These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://learn.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types.",
"items": {
"$ref": "#/definitions/HttpHeader"
},
@@ -16454,7 +16454,7 @@
},
"dataDisks": {
"type": "array",
- "description": "The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine.",
+ "description": "The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://learn.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://learn.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine.",
"items": {
"$ref": "#/definitions/DataDisk"
},
@@ -16521,7 +16521,7 @@
},
"dataDisks": {
"type": "array",
- "description": "The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine.",
+ "description": "The configuration for data disks attached to the Compute Nodes in the Pool. This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://learn.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://learn.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine.",
"items": {
"$ref": "#/definitions/DataDisk"
},
diff --git a/specification/cognitiveservices/Language.AnalyzeConversations-authoring/main.tsp b/specification/cognitiveservices/Language.AnalyzeConversations-authoring/main.tsp
index 8d2da7a13b62..b98d62ba53ce 100644
--- a/specification/cognitiveservices/Language.AnalyzeConversations-authoring/main.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeConversations-authoring/main.tsp
@@ -12,7 +12,7 @@ using TypeSpec.Rest;
using TypeSpec.Http;
using TypeSpec.Versioning;
/**
- * The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.
+ * The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.
*/
@useAuth(
ApiKeyAuth | OAuth2Auth<[
@@ -30,7 +30,7 @@ using TypeSpec.Versioning;
@versioned(Versions)
@server(
"{Endpoint}/language",
- "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
{
/**
* Supported Cognitive Services endpoint e.g., https://.api.cognitiveservices.azure.com.
diff --git a/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp b/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp
index b15a92433176..818725dac06b 100644
--- a/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp
@@ -16,7 +16,7 @@ using Azure.Core.Traits;
/** The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms.
* The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering.
- * Further documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0 */
+ * Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0 */
@useAuth(
TypeSpec.Http.ApiKeyAuth<
TypeSpec.Http.ApiKeyLocation.header,
diff --git a/specification/cognitiveservices/Language.AnalyzeDocuments/models/common.models.tsp b/specification/cognitiveservices/Language.AnalyzeDocuments/models/common.models.tsp
index 3081d26f46cc..60fa7ed7dd0c 100644
--- a/specification/cognitiveservices/Language.AnalyzeDocuments/models/common.models.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeDocuments/models/common.models.tsp
@@ -12,7 +12,7 @@ using Azure.Core.Traits;
namespace Language.AnalyzeDocuments;
-/** These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://docs.microsoft.com/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0 or v2.0](https://docs.microsoft.com/azure/active-directory/develop/azure-ad-endpoint-comparison) supports Work, School, and Guests but does not support Personal accounts. */
+/** These are the [Azure Active Directory OAuth2](https://learn.microsoft.com/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://learn.microsoft.com/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0 or v2.0](https://learn.microsoft.com/azure/active-directory/develop/azure-ad-endpoint-comparison) supports Work, School, and Guests but does not support Personal accounts. */
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Model types must use PascalCase"
model AADToken
is OAuth2Auth<[
diff --git a/specification/cognitiveservices/Language.AnalyzeText-authoring/main.tsp b/specification/cognitiveservices/Language.AnalyzeText-authoring/main.tsp
index 41f648c390f3..546384eb73fd 100644
--- a/specification/cognitiveservices/Language.AnalyzeText-authoring/main.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeText-authoring/main.tsp
@@ -12,7 +12,7 @@ using TypeSpec.Rest;
using TypeSpec.Http;
using TypeSpec.Versioning;
/**
- * The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.
+ * The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.
*/
@useAuth(
ApiKeyAuth | OAuth2Auth<[
@@ -30,7 +30,7 @@ using TypeSpec.Versioning;
@versioned(Versions)
@server(
"{Endpoint}/language",
- "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
{
/**
* Supported Cognitive Services endpoint e.g., https://.api.cognitiveservices.azure.com.
diff --git a/specification/cognitiveservices/Language.AnalyzeText/main.tsp b/specification/cognitiveservices/Language.AnalyzeText/main.tsp
index a3686edcb5cc..f0e496421546 100644
--- a/specification/cognitiveservices/Language.AnalyzeText/main.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeText/main.tsp
@@ -18,7 +18,7 @@ using TypeSpec.Rest;
using TypeSpec.Versioning;
using Azure.Core;
using Azure.Core.Traits;
-/** The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0 */
+/** The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0 */
@useAuth(
ApiKeyAuth | OAuth2Auth<[
{
diff --git a/specification/cognitiveservices/Language.AnalyzeText/models/common.models.tsp b/specification/cognitiveservices/Language.AnalyzeText/models/common.models.tsp
index ecd42aca1e9c..d9e8df004525 100644
--- a/specification/cognitiveservices/Language.AnalyzeText/models/common.models.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeText/models/common.models.tsp
@@ -12,7 +12,7 @@ using Azure.Core.Traits;
namespace Language.Text;
-/** These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://docs.microsoft.com/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0 or v2.0](https://docs.microsoft.com/azure/active-directory/develop/azure-ad-endpoint-comparison) supports Work, School, and Guests but does not support Personal accounts. */
+/** These are the [Azure Active Directory OAuth2](https://learn.microsoft.com/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://learn.microsoft.com/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0 or v2.0](https://learn.microsoft.com/azure/active-directory/develop/azure-ad-endpoint-comparison) supports Work, School, and Guests but does not support Personal accounts. */
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Model types must use PascalCase"
model AADToken
is OAuth2Auth<[
diff --git a/specification/cognitiveservices/Language.Conversations/main.tsp b/specification/cognitiveservices/Language.Conversations/main.tsp
index f8b850ff9735..e25732165aa7 100644
--- a/specification/cognitiveservices/Language.Conversations/main.tsp
+++ b/specification/cognitiveservices/Language.Conversations/main.tsp
@@ -66,7 +66,7 @@ enum Versions {
v2024_11_15_preview: "2024-11-15-preview",
}
-/** These are the [Azure Active Directory OAuth2](https://docs.microsoft.com/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://docs.microsoft.com/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0 or v2.0](https://docs.microsoft.com/azure/active-directory/develop/azure-ad-endpoint-comparison) supports Work, School, and Guests but does not support Personal accounts. */
+/** These are the [Azure Active Directory OAuth2](https://learn.microsoft.com/azure/active-directory/develop/v1-overview) Flows. When paired with [Azure role-based access](https://learn.microsoft.com/azure/role-based-access-control/overview) control it can be used to control access to Azure Maps REST APIs. Azure role-based access controls are used to designate access to one or more Azure Maps resource account or sub-resources. Any user, group, or service principal can be granted access via a built-in role or a custom role composed of one or more permissions to Azure Maps REST APIs.\n\nTo implement scenarios, we recommend viewing [authentication concepts](https://aka.ms/amauth). In summary, this security definition provides a solution for modeling application(s) via objects capable of access control on specific APIs and scopes.\n\n#### Notes\n* This security definition **requires** the use of the `x-ms-client-id` header to indicate which Azure Maps resource the application is requesting access to. This can be acquired from the [Maps management API](https://aka.ms/amauthdetails).\n* \nThe `Authorization URL` is specific to the Azure public cloud instance. Sovereign clouds have unique Authorization URLs and Azure Active directory configurations. \n* \nThe Azure role-based access control is configured from the [Azure management plane](https://aka.ms/amrbac) via Azure portal, PowerShell, CLI, Azure SDKs, or REST APIs.\n* \nUsage of the [Azure Maps Web SDK](https://aka.ms/amaadmc) allows for configuration based setup of an application for multiple use cases.\n* Currently, Azure Active Directory [v1.0 or v2.0](https://learn.microsoft.com/azure/active-directory/develop/azure-ad-endpoint-comparison) supports Work, School, and Guests but does not support Personal accounts. */
#suppress "@azure-tools/typespec-azure-core/casing-style" "The names of Model types must use PascalCase"
model AADToken
is OAuth2Auth<[
diff --git a/specification/cognitiveservices/Language.Conversations/models/common.tsp b/specification/cognitiveservices/Language.Conversations/models/common.tsp
index 90fe89b00e35..792241b2f989 100644
--- a/specification/cognitiveservices/Language.Conversations/models/common.tsp
+++ b/specification/cognitiveservices/Language.Conversations/models/common.tsp
@@ -604,7 +604,7 @@ model RegexKey extends BaseExtraInformation {
/** The key of the regex pattern used in extracting the entity. */
key?: string;
- /** The .NET regex pattern used in extracting the entity. Please visit https://docs.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions. */
+ /** The .NET regex pattern used in extracting the entity. Please visit https://learn.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions. */
regexPattern?: string;
}
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzeconversations-authoring.json b/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzeconversations-authoring.json
index 706a30cc17d1..9c9cfc2cf9ea 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzeconversations-authoring.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzeconversations-authoring.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Analyze Conversations Authoring",
"version": "2023-04-15-preview",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzetext-authoring.json b/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzetext-authoring.json
index c4f302925fb6..6d24dcd789db 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzetext-authoring.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2023-04-15-preview/analyzetext-authoring.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Analyze Text Authoring",
"version": "2023-04-15-preview",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations-authoring.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations-authoring.json
index eab6a7f511b6..c417d5698c4c 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations-authoring.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations-authoring.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Analyze Conversations Authoring",
"version": "2024-11-15-preview",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json
index 0597e1b451c7..0c16b41b59b7 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json
@@ -3780,7 +3780,7 @@
},
"regexPattern": {
"type": "string",
- "description": "The .NET regex pattern used in extracting the entity. Please visit https://docs.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
+ "description": "The .NET regex pattern used in extracting the entity. Please visit https://learn.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
}
},
"allOf": [
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json
index c827be38a657..d93c33086797 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Document Analysis",
"version": "2024-11-15-preview",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms.\nThe API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering.\nFurther documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms.\nThe API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering.\nFurther documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext-authoring.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext-authoring.json
index 0006d0716107..8163f7f4ebd2 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext-authoring.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext-authoring.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Analyze Text Authoring",
"version": "2024-11-15-preview",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext.json
index 29e4ea8d098d..6a7946afd390 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzetext.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Text Analysis",
"version": "2024-11-15-preview",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json b/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json
index d5e9e244b00c..63085d1a2679 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2022-05-01/analyzetext.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Text Analysis",
"version": "2022-05-01",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations-authoring.json b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations-authoring.json
index b87a52b6f25c..538cd010e2e5 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations-authoring.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations-authoring.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Analyze Conversations Authoring",
"version": "2023-04-01",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json
index 0a759d6437ea..5d79e7bd16d6 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzeconversations.json
@@ -2872,7 +2872,7 @@
},
"regexPattern": {
"type": "string",
- "description": "The .NET regex pattern used in extracting the entity. Please visit https://docs.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
+ "description": "The .NET regex pattern used in extracting the entity. Please visit https://learn.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
}
},
"allOf": [
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext-authoring.json b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext-authoring.json
index 161087be19c7..9b53ee0fbc4b 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext-authoring.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext-authoring.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Analyze Text Authoring",
"version": "2023-04-01",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/en-us/azure/cognitive-services/language-service/overview.",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json
index db85a22a09e0..d0875e4e7d4b 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2023-04-01/analyzetext.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Text Analysis",
"version": "2023-04-01",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json
index cecf31c085b1..384f25ae3be5 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json
@@ -3382,7 +3382,7 @@
},
"regexPattern": {
"type": "string",
- "description": "The .NET regex pattern used in extracting the entity. Please visit https://docs.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
+ "description": "The .NET regex pattern used in extracting the entity. Please visit https://learn.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
}
},
"allOf": [
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json
index 8529e988e7f9..6860cdb8f652 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json
@@ -3382,7 +3382,7 @@
},
"regexPattern": {
"type": "string",
- "description": "The .NET regex pattern used in extracting the entity. Please visit https://docs.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
+ "description": "The .NET regex pattern used in extracting the entity. Please visit https://learn.microsoft.com/dotnet/standard/base-types/regular-expressions for more information about .NET regular expressions."
}
},
"allOf": [
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzetext.json b/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzetext.json
index c44e88ee6a87..a6391a126b17 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzetext.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzetext.json
@@ -3,7 +3,7 @@
"info": {
"title": "Microsoft Cognitive Language Service - Text Analysis",
"version": "2024-11-01",
- "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://docs.microsoft.com/azure/cognitive-services/language-service/overview.0",
+ "description": "The language service API is a suite of natural language processing (NLP) skills built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering. Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0",
"x-typespec-generated": [
{
"emitter": "@azure-tools/typespec-autorest"
diff --git a/specification/loadtestservice/LoadTestService/models.tsp b/specification/loadtestservice/LoadTestService/models.tsp
index 23b5988f0fb9..561da502ece4 100644
--- a/specification/loadtestservice/LoadTestService/models.tsp
+++ b/specification/loadtestservice/LoadTestService/models.tsp
@@ -609,7 +609,7 @@ model TestAppComponents {
}
@doc("""
- An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)
+ An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)
""")
model AppComponent {
@doc("""
@@ -647,7 +647,7 @@ model TestServerMetricConfig {
@doc("""
Azure resource metrics collection {metric id : metrics object} (Refer :
- https://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition
+ https://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition
for metric id).
""")
metrics: Record;
@@ -658,7 +658,7 @@ model TestServerMetricConfig {
@doc("""
Associated metric definition for particular metrics of the azure resource (
Refer :
- https://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).
+ https://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).
""")
model ResourceMetric {
@doc("Unique name for metric.")
@@ -1160,7 +1160,7 @@ model TestRunServerMetricConfig {
@doc("""
Azure resource metrics collection {metric id : metrics object} (Refer :
- https://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition
+ https://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition
for metric id).
""")
metrics?: Record;
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2023-04-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2023-04-01-preview/loadtestservice.json
index 913e64089223..cf282517156b 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2023-04-01-preview/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2023-04-01-preview/loadtestservice.json
@@ -1668,7 +1668,7 @@
},
"AppComponent": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceId": {
"type": "string",
@@ -1710,7 +1710,7 @@
},
"AppComponentUpdate": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceName": {
"type": "string",
@@ -2620,7 +2620,7 @@
},
"ResourceMetric": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"id": {
"type": "string",
@@ -2666,7 +2666,7 @@
},
"ResourceMetricUpdate": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"resourceId": {
"type": "string",
@@ -3575,7 +3575,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -3704,7 +3704,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -3742,7 +3742,7 @@
"properties": {
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetricUpdate"
}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-03-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-03-01-preview/loadtestservice.json
index f88f86bd0645..cb2e47773bbb 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-03-01-preview/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-03-01-preview/loadtestservice.json
@@ -1674,7 +1674,7 @@
},
"AppComponent": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceId": {
"type": "string",
@@ -1716,7 +1716,7 @@
},
"AppComponentUpdate": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceName": {
"type": "string",
@@ -2659,7 +2659,7 @@
},
"ResourceMetric": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"id": {
"type": "string",
@@ -2705,7 +2705,7 @@
},
"ResourceMetricUpdate": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"resourceId": {
"type": "string",
@@ -3628,7 +3628,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -3757,7 +3757,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -3795,7 +3795,7 @@
"properties": {
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetricUpdate"
}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json
index 38839ab8327d..f2a20a260fe1 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-05-01-preview/loadtestservice.json
@@ -2224,7 +2224,7 @@
},
"AppComponent": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceId": {
"type": "string",
@@ -2266,7 +2266,7 @@
},
"AppComponentUpdate": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceName": {
"type": "string",
@@ -3429,7 +3429,7 @@
},
"ResourceMetric": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"id": {
"type": "string",
@@ -3475,7 +3475,7 @@
},
"ResourceMetricUpdate": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"resourceId": {
"type": "string",
@@ -4807,7 +4807,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -4972,7 +4972,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -5010,7 +5010,7 @@
"properties": {
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetricUpdate"
}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-07-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-07-01-preview/loadtestservice.json
index b61c7f68bcb7..ee2bb4af824a 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-07-01-preview/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-07-01-preview/loadtestservice.json
@@ -2443,7 +2443,7 @@
},
"AppComponent": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceId": {
"type": "string",
@@ -2485,7 +2485,7 @@
},
"AppComponentUpdate": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceName": {
"type": "string",
@@ -4120,7 +4120,7 @@
},
"ResourceMetric": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"id": {
"type": "string",
@@ -4166,7 +4166,7 @@
},
"ResourceMetricUpdate": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"resourceId": {
"type": "string",
@@ -5643,7 +5643,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -5808,7 +5808,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -5846,7 +5846,7 @@
"properties": {
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetricUpdate"
}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json
index 2179a257ec46..0908e8efbbe2 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json
@@ -2443,7 +2443,7 @@
},
"AppComponent": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceId": {
"type": "string",
@@ -2485,7 +2485,7 @@
},
"AppComponentUpdate": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceName": {
"type": "string",
@@ -4120,7 +4120,7 @@
},
"ResourceMetric": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"id": {
"type": "string",
@@ -4166,7 +4166,7 @@
},
"ResourceMetricUpdate": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"resourceId": {
"type": "string",
@@ -5707,7 +5707,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -5872,7 +5872,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -5910,7 +5910,7 @@
"properties": {
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetricUpdate"
}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/stable/2022-11-01/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/stable/2022-11-01/loadtestservice.json
index 6e91cb52212a..241373cdce9d 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/stable/2022-11-01/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/stable/2022-11-01/loadtestservice.json
@@ -1656,7 +1656,7 @@
},
"AppComponent": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceId": {
"type": "string",
@@ -1698,7 +1698,7 @@
},
"AppComponentUpdate": {
"type": "object",
- "description": "An Azure resource object (Refer azure generic resource model :https://docs.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
+ "description": "An Azure resource object (Refer azure generic resource model :https://learn.microsoft.com/en-us/rest/api/resources/resources/get-by-id#genericresource)",
"properties": {
"resourceName": {
"type": "string",
@@ -2542,7 +2542,7 @@
},
"ResourceMetric": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"id": {
"type": "string",
@@ -2588,7 +2588,7 @@
},
"ResourceMetricUpdate": {
"type": "object",
- "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
+ "description": "Associated metric definition for particular metrics of the azure resource (\nRefer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition).",
"properties": {
"resourceId": {
"type": "string",
@@ -3411,7 +3411,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -3540,7 +3540,7 @@
},
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetric"
}
@@ -3578,7 +3578,7 @@
"properties": {
"metrics": {
"type": "object",
- "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://docs.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
+ "description": "Azure resource metrics collection {metric id : metrics object} (Refer :\nhttps://learn.microsoft.com/en-us/rest/api/monitor/metric-definitions/list#metricdefinition\nfor metric id).",
"additionalProperties": {
"$ref": "#/definitions/ResourceMetricUpdate"
}
diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/models.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/models.tsp
index ea75e7d14019..d4a3d21f0de1 100644
--- a/specification/workloads/Workloads.SAPVirtualInstance.Management/models.tsp
+++ b/specification/workloads/Workloads.SAPVirtualInstance.Management/models.tsp
@@ -1637,7 +1637,7 @@ model OSConfiguration {
*/
model SshPublicKey {
/**
- * 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).
+ * 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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).
*/
keyData?: string;
}
@@ -1654,7 +1654,7 @@ model SshConfiguration {
}
/**
- * 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).
+ * Specifies the Linux operating system settings on the virtual machine. For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).
*/
model LinuxConfiguration extends OSConfiguration {
/**
@@ -1679,7 +1679,7 @@ model LinuxConfiguration extends OSConfiguration {
}
/**
- * The SSH Key-pair used to authenticate with the VM. 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).
+ * The SSH Key-pair used to authenticate with the VM. 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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).
*/
model SshKeyPair {
/**
@@ -1705,7 +1705,7 @@ model OSProfile {
adminUsername?: string;
@secret
- @doc("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)")
+ @doc("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://learn.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://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)")
adminPassword?: string;
/**
diff --git a/specification/workloads/resource-manager/Microsoft.Workloads/SAPVirtualInstance/stable/2024-09-01/SAPVirtualInstance.json b/specification/workloads/resource-manager/Microsoft.Workloads/SAPVirtualInstance/stable/2024-09-01/SAPVirtualInstance.json
index 7314fcc1a729..6cd84dfca199 100644
--- a/specification/workloads/resource-manager/Microsoft.Workloads/SAPVirtualInstance/stable/2024-09-01/SAPVirtualInstance.json
+++ b/specification/workloads/resource-manager/Microsoft.Workloads/SAPVirtualInstance/stable/2024-09-01/SAPVirtualInstance.json
@@ -3208,7 +3208,7 @@
},
"LinuxConfiguration": {
"type": "object",
- "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://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros).",
"properties": {
"disablePasswordAuthentication": {
"type": "boolean",
@@ -3439,7 +3439,7 @@
"adminPassword": {
"type": "string",
"format": "password",
- "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://learn.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://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection)",
"x-ms-secret": true
},
"osConfiguration": {
@@ -4909,7 +4909,7 @@
},
"SshKeyPair": {
"type": "object",
- "description": "The SSH Key-pair used to authenticate with the VM. 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": "The SSH Key-pair used to authenticate with the VM. 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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed).",
"properties": {
"publicKey": {
"type": "string",
@@ -4929,7 +4929,7 @@
"properties": {
"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://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)."
}
}
},
From f4acc746a68ef6503be5a95d24d208d4cb822f83 Mon Sep 17 00:00:00 2001
From: wangbwn <69622111+wangbwn@users.noreply.github.com>
Date: Wed, 18 Dec 2024 11:41:43 +0800
Subject: [PATCH 027/128] Modified the property sncMode of SAPTable (#31750)
* Modified the property sncMode of SAPTable
* Update sncMode description
* Fix commensts
* Update sncModel properties
---------
Co-authored-by: Bo Wang
---
.../stable/2018-06-01/entityTypes/LinkedService.json | 8 ++++----
.../stable/2020-12-01/entityTypes/LinkedService.json | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json
index 23f9130b0170..780acb420522 100644
--- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json
+++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/LinkedService.json
@@ -3679,8 +3679,8 @@
},
"sncMode": {
"type": "object",
- "x-ms-format": "dfe-string",
- "description": "SNC activation indicator to access the SAP server where the table is located. Must be either 0 (off) or 1 (on). Type: string (or Expression with resultType string)."
+ "x-ms-format": "dfe-bool",
+ "description": "SNC activation flag (Boolean) to access the SAP server where the table is located. Type: boolean (or Expression with resultType boolean)."
},
"sncMyName": {
"type": "object",
@@ -7871,8 +7871,8 @@
},
"sncMode": {
"type": "object",
- "x-ms-format": "dfe-string",
- "description": "SNC activation indicator to access the SAP server where the table is located. Must be either 0 (off) or 1 (on). Type: string (or Expression with resultType string)."
+ "x-ms-format": "dfe-bool",
+ "description": "SNC activation flag (Boolean) to access the SAP server where the table is located. Type: boolean (or Expression with resultType boolean)."
},
"sncMyName": {
"type": "object",
diff --git a/specification/synapse/data-plane/Microsoft.Synapse/stable/2020-12-01/entityTypes/LinkedService.json b/specification/synapse/data-plane/Microsoft.Synapse/stable/2020-12-01/entityTypes/LinkedService.json
index 5cd0f7e5a32f..4532f411238f 100644
--- a/specification/synapse/data-plane/Microsoft.Synapse/stable/2020-12-01/entityTypes/LinkedService.json
+++ b/specification/synapse/data-plane/Microsoft.Synapse/stable/2020-12-01/entityTypes/LinkedService.json
@@ -3291,7 +3291,7 @@
},
"sncMode": {
"type": "object",
- "description": "SNC activation indicator to access the SAP server where the table is located. Must be either 0 (off) or 1 (on). Type: string (or Expression with resultType string)."
+ "description": "SNC activation flag (Boolean) to access the SAP server where the table is located. Type: boolean (or Expression with resultType boolean)."
},
"sncMyName": {
"type": "object",
@@ -7190,7 +7190,7 @@
},
"sncMode": {
"type": "object",
- "description": "SNC activation indicator to access the SAP server where the table is located. Must be either 0 (off) or 1 (on). Type: string (or Expression with resultType string)."
+ "description": "SNC activation flag (Boolean) to access the SAP server where the table is located. Type: boolean (or Expression with resultType boolean)."
},
"sncMyName": {
"type": "object",
From a3b0112e50bee0fee2b609afef9e3bd6287d8bdb Mon Sep 17 00:00:00 2001
From: vikotha <81368129+vikotha@users.noreply.github.com>
Date: Wed, 18 Dec 2024 10:46:45 +0530
Subject: [PATCH 028/128] Add new versions for Microsoft.Datadog RP (#31548)
* Base commit to add new versions
* Add two new versions
* Fix failures
* Fix package tag
* Add back readonly flag
* Create sdk-suppressions.yaml
* fix lint erros
* Fix validations
* lint errors
---------
Co-authored-by: Yuchao Yan
---
custom-words.txt | 1 +
.../stable/2023-01-01/datadog.json | 35 +-
.../examples/CreationSupported_List.json | 3 +-
.../examples/MonitoredSubscriptions_List.json | 3 +-
.../2023-01-01/examples/Monitors_Create.json | 2 -
.../stable/2023-07-07/datadog.json | 2544 ++++++++++++++++
.../examples/ApiKeys_GetDefaultKey.json | 18 +
.../2023-07-07/examples/ApiKeys_List.json | 29 +
.../examples/ApiKeys_SetDefaultKey.json | 14 +
.../examples/CreationSupported_Get.json | 17 +
.../examples/CreationSupported_List.json | 22 +
.../2023-07-07/examples/Hosts_List.json | 61 +
.../examples/LinkedResources_List.json | 19 +
.../MarketplaceAgreements_Create.json | 30 +
.../examples/MarketplaceAgreements_List.json | 45 +
.../examples/MonitoredResources_List.json | 23 +
...MonitoredSubscriptions_CreateorUpdate.json | 207 ++
.../MonitoredSubscriptions_Delete.json | 18 +
.../examples/MonitoredSubscriptions_Get.json | 76 +
.../examples/MonitoredSubscriptions_List.json | 80 +
.../MonitoredSubscriptions_Update.json | 142 +
.../2023-07-07/examples/Monitors_Create.json | 86 +
.../2023-07-07/examples/Monitors_Delete.json | 17 +
.../2023-07-07/examples/Monitors_Get.json | 35 +
.../2023-07-07/examples/Monitors_List.json | 38 +
.../Monitors_ListByResourceGroup.json | 37 +
.../2023-07-07/examples/Monitors_Update.json | 69 +
.../2023-07-07/examples/Operations_List.json | 23 +
.../examples/RefreshSetPassword_Get.json | 15 +
...leSignOnConfigurations_CreateOrUpdate.json | 39 +
.../SingleSignOnConfigurations_Get.json | 22 +
.../SingleSignOnConfigurations_List.json | 25 +
.../examples/TagRules_CreateOrUpdate.json | 66 +
.../2023-07-07/examples/TagRules_Get.json | 41 +
.../2023-07-07/examples/TagRules_List.json | 44 +
.../stable/2023-10-20/datadog.json | 2651 +++++++++++++++++
.../examples/ApiKeys_GetDefaultKey.json | 18 +
.../2023-10-20/examples/ApiKeys_List.json | 29 +
.../examples/ApiKeys_SetDefaultKey.json | 14 +
.../2023-10-20/examples/BillingInfo_Get.json | 26 +
.../examples/CreationSupported_Get.json | 17 +
.../examples/CreationSupported_List.json | 22 +
.../2023-10-20/examples/Hosts_List.json | 61 +
.../examples/LinkedResources_List.json | 19 +
.../MarketplaceAgreements_Create.json | 30 +
.../examples/MarketplaceAgreements_List.json | 45 +
.../examples/MonitoredResources_List.json | 23 +
...MonitoredSubscriptions_CreateorUpdate.json | 207 ++
.../MonitoredSubscriptions_Delete.json | 18 +
.../examples/MonitoredSubscriptions_Get.json | 76 +
.../examples/MonitoredSubscriptions_List.json | 79 +
.../MonitoredSubscriptions_Update.json | 142 +
.../2023-10-20/examples/Monitors_Create.json | 86 +
.../2023-10-20/examples/Monitors_Delete.json | 17 +
.../2023-10-20/examples/Monitors_Get.json | 35 +
.../2023-10-20/examples/Monitors_List.json | 38 +
.../Monitors_ListByResourceGroup.json | 37 +
.../2023-10-20/examples/Monitors_Update.json | 69 +
.../2023-10-20/examples/Operations_List.json | 23 +
.../examples/RefreshSetPassword_Get.json | 15 +
...leSignOnConfigurations_CreateOrUpdate.json | 39 +
.../SingleSignOnConfigurations_Get.json | 22 +
.../SingleSignOnConfigurations_List.json | 25 +
.../examples/TagRules_CreateOrUpdate.json | 66 +
.../2023-10-20/examples/TagRules_Get.json | 41 +
.../2023-10-20/examples/TagRules_List.json | 44 +
.../datadog/resource-manager/readme.md | 18 +-
.../resource-manager/sdk-suppressions.yaml | 8 +
68 files changed, 7984 insertions(+), 22 deletions(-)
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/datadog.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_GetDefaultKey.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_SetDefaultKey.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Hosts_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/LinkedResources_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_Create.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredResources_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_CreateorUpdate.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Delete.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Update.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Create.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Delete.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_ListByResourceGroup.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Update.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Operations_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/RefreshSetPassword_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_CreateOrUpdate.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_CreateOrUpdate.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/datadog.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_GetDefaultKey.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_SetDefaultKey.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/BillingInfo_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Hosts_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/LinkedResources_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_Create.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredResources_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_CreateorUpdate.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Delete.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Update.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Create.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Delete.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_ListByResourceGroup.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Update.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Operations_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/RefreshSetPassword_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_CreateOrUpdate.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_List.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_CreateOrUpdate.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_Get.json
create mode 100644 specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_List.json
create mode 100644 specification/datadog/resource-manager/sdk-suppressions.yaml
diff --git a/custom-words.txt b/custom-words.txt
index 5ee2bd97bf10..63bb0c01dde7 100644
--- a/custom-words.txt
+++ b/custom-words.txt
@@ -182,6 +182,7 @@ appendpos
appfigures
appid
appinsights
+Applicationkey
applynetworkconfigurationupdates
approveRollingUpgrade
appservice
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/datadog.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/datadog.json
index f03cbd8475fd..406614770d23 100644
--- a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/datadog.json
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/datadog.json
@@ -153,7 +153,7 @@
}
},
"x-ms-pageable": {
- "nextLinkName": null
+ "nextLinkName": "nextLink"
},
"x-ms-examples": {
"CreationSupported_List": {
@@ -1248,7 +1248,7 @@
}
},
"x-ms-pageable": {
- "nextLinkName": null
+ "nextLinkName": "nextLink"
},
"x-ms-examples": {
"Monitors_GetMonitoredSubscriptions": {
@@ -1573,8 +1573,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/DatadogAgreementResource"
- },
- "x-ms-identifiers": []
+ }
},
"nextLink": {
"description": "Link to the next set of results, if any.",
@@ -1617,6 +1616,10 @@
"$ref": "#/definitions/CreateResourceSupportedResponse"
},
"x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
}
}
},
@@ -1653,8 +1656,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/DatadogApiKey"
- },
- "x-ms-identifiers": []
+ }
},
"nextLink": {
"description": "Link to the next set of results, if any.",
@@ -1738,8 +1740,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/DatadogHost"
- },
- "x-ms-identifiers": []
+ }
},
"nextLink": {
"description": "Link to the next set of results, if any.",
@@ -1879,8 +1880,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/MonitoredSubscription"
- },
- "x-ms-identifiers": []
+ }
}
}
},
@@ -1916,6 +1916,10 @@
"items": {
"$ref": "#/definitions/MonitoredSubscriptionProperties"
}
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
}
}
},
@@ -1967,8 +1971,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/OperationResult"
- },
- "x-ms-identifiers": []
+ }
},
"nextLink": {
"description": "URL to get the next set of operation list results if there are any.",
@@ -1983,7 +1986,7 @@
"type": "object",
"properties": {
"name": {
- "description": "Name of the SKU in {PlanId} format. For Terraform, the only allowed value is 'linking'.",
+ "description": "Name of the SKU in {PlanId} format. For Terraform, the only allowed value is 'Linked'.",
"type": "string"
}
}
@@ -2354,8 +2357,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/FilteringTag"
- },
- "x-ms-identifiers": []
+ }
}
}
},
@@ -2368,8 +2370,7 @@
"type": "array",
"items": {
"$ref": "#/definitions/FilteringTag"
- },
- "x-ms-identifiers": []
+ }
}
}
},
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/CreationSupported_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/CreationSupported_List.json
index 9149878ad9dd..b60b94536341 100644
--- a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/CreationSupported_List.json
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/CreationSupported_List.json
@@ -14,7 +14,8 @@
"creationSupported": true
}
}
- ]
+ ],
+ "nextLink": null
}
}
}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/MonitoredSubscriptions_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/MonitoredSubscriptions_List.json
index 7c9416927655..2649eac0f4eb 100644
--- a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/MonitoredSubscriptions_List.json
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/MonitoredSubscriptions_List.json
@@ -72,7 +72,8 @@
]
}
}
- ]
+ ],
+ "nextLink": null
}
}
}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/Monitors_Create.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/Monitors_Create.json
index 62a1b1fd0016..e41b95591b9d 100644
--- a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/Monitors_Create.json
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-01-01/examples/Monitors_Create.json
@@ -5,7 +5,6 @@
"resourceGroupName": "myResourceGroup",
"monitorName": "myMonitor",
"body": {
- "name": "myMonitor",
"sku": {
"name": "free_Monthly"
},
@@ -14,7 +13,6 @@
"datadogOrganizationProperties": {
"name": "myOrg",
"id": "myOrg123",
- "subscription": "pro",
"linkingAuthCode": "someAuthCode",
"linkingClientId": "00000000-0000-0000-0000-000000000000",
"enterpriseAppId": "00000000-0000-0000-0000-000000000000",
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/datadog.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/datadog.json
new file mode 100644
index 000000000000..dde7518ef109
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/datadog.json
@@ -0,0 +1,2544 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft.Datadog",
+ "version": "2023-07-07"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Microsoft Entra ID OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/agreements": {
+ "get": {
+ "tags": [
+ "Agreements"
+ ],
+ "summary": "List Datadog marketplace agreements in the subscription.",
+ "operationId": "MarketplaceAgreements_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogAgreementResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "MarketplaceAgreements_List": {
+ "$ref": "./examples/MarketplaceAgreements_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/agreements/default": {
+ "put": {
+ "tags": [
+ "Agreements"
+ ],
+ "summary": "Create Datadog marketplace agreement in the subscription.",
+ "operationId": "MarketplaceAgreements_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogAgreementResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogAgreementResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "MarketplaceAgreements_CreateOrUpdate": {
+ "$ref": "./examples/MarketplaceAgreements_Create.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/subscriptionStatuses": {
+ "get": {
+ "tags": [
+ "CreateResource"
+ ],
+ "summary": "Informs if the current subscription is being already monitored for selected Datadog organization.",
+ "operationId": "CreationSupported_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/DatadogOrganizationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CreateResourceSupportedResponseList"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "CreationSupported_List": {
+ "$ref": "./examples/CreationSupported_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/subscriptionStatuses/default": {
+ "get": {
+ "tags": [
+ "CreateResource"
+ ],
+ "summary": "Informs if the current subscription is being already monitored for selected Datadog organization.",
+ "operationId": "CreationSupported_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/DatadogOrganizationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CreateResourceSupportedResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CreationSupported_Get": {
+ "$ref": "./examples/CreationSupported_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listApiKeys": {
+ "post": {
+ "tags": [
+ "ApiKey"
+ ],
+ "summary": "List the api keys for a given monitor resource.",
+ "operationId": "Monitors_ListApiKeys",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogApiKeyListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListApiKeys": {
+ "$ref": "./examples/ApiKeys_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/getDefaultKey": {
+ "post": {
+ "tags": [
+ "ApiKey"
+ ],
+ "summary": "Get the default api key.",
+ "operationId": "Monitors_GetDefaultKey",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogApiKey"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_GetDefaultKey": {
+ "$ref": "./examples/ApiKeys_GetDefaultKey.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/setDefaultKey": {
+ "post": {
+ "tags": [
+ "ApiKey"
+ ],
+ "summary": "Set the default api key.",
+ "operationId": "Monitors_SetDefaultKey",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogApiKey"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_SetDefaultKey": {
+ "$ref": "./examples/ApiKeys_SetDefaultKey.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listHosts": {
+ "post": {
+ "tags": [
+ "Hosts"
+ ],
+ "summary": "List the hosts for a given monitor resource.",
+ "operationId": "Monitors_ListHosts",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogHostListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListHosts": {
+ "$ref": "./examples/Hosts_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listLinkedResources": {
+ "post": {
+ "tags": [
+ "LinkedResources"
+ ],
+ "summary": "List all Azure resources associated to the same Datadog organization as the target resource.",
+ "operationId": "Monitors_ListLinkedResources",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/LinkedResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListLinkedResources": {
+ "$ref": "./examples/LinkedResources_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listMonitoredResources": {
+ "post": {
+ "tags": [
+ "MonitoredResources"
+ ],
+ "summary": "List the resources currently being monitored by the Datadog monitor resource.",
+ "operationId": "Monitors_ListMonitoredResources",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListMonitoredResources": {
+ "$ref": "./examples/MonitoredResources_List.json"
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Datadog/operations": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "List all operations provided by Microsoft.Datadog for the 2023-07-07 api version.",
+ "operationId": "Operations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Operations_List": {
+ "$ref": "./examples/Operations_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/monitors": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "List all monitors under the specified subscription.",
+ "operationId": "Monitors_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_List": {
+ "$ref": "./examples/Monitors_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "List all monitors under the specified resource group.",
+ "operationId": "Monitors_ListByResourceGroup",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListByResourceGroup": {
+ "$ref": "./examples/Monitors_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Get the properties of a specific monitor resource.",
+ "operationId": "Monitors_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_Get": {
+ "$ref": "./examples/Monitors_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Create a monitor resource.",
+ "operationId": "Monitors_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "Monitors_Create": {
+ "$ref": "./examples/Monitors_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Update a monitor resource.",
+ "operationId": "Monitors_Update",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResourceUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_Update": {
+ "$ref": "./examples/Monitors_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Delete a monitor resource.",
+ "operationId": "Monitors_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_Delete": {
+ "$ref": "./examples/Monitors_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/refreshSetPasswordLink": {
+ "post": {
+ "tags": [
+ "RefreshSetPasswordLink"
+ ],
+ "summary": "Refresh the set password link and return a latest one.",
+ "operationId": "Monitors_RefreshSetPasswordLink",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSetPasswordLink"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_RefreshSetPasswordLink": {
+ "$ref": "./examples/RefreshSetPassword_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/tagRules": {
+ "get": {
+ "tags": [
+ "Rules"
+ ],
+ "summary": "List the tag rules for a given monitor resource.",
+ "operationId": "TagRules_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRulesListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "TagRules_List": {
+ "$ref": "./examples/TagRules_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/tagRules/{ruleSetName}": {
+ "put": {
+ "tags": [
+ "Rules"
+ ],
+ "summary": "Create or update a tag rule set for a given monitor resource.",
+ "operationId": "TagRules_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Rule set name",
+ "in": "path",
+ "name": "ruleSetName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TagRules_CreateOrUpdate": {
+ "$ref": "./examples/TagRules_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Rules"
+ ],
+ "summary": "Get a tag rule set for a given monitor resource.",
+ "operationId": "TagRules_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Rule set name",
+ "in": "path",
+ "name": "ruleSetName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TagRules_Get": {
+ "$ref": "./examples/TagRules_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/singleSignOnConfigurations": {
+ "get": {
+ "tags": [
+ "SingleSignOn"
+ ],
+ "summary": "List the single sign-on configurations for a given monitor resource.",
+ "operationId": "SingleSignOnConfigurations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SingleSignOnConfigurations_List": {
+ "$ref": "./examples/SingleSignOnConfigurations_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/singleSignOnConfigurations/{configurationName}": {
+ "put": {
+ "tags": [
+ "SingleSignOn"
+ ],
+ "summary": "Configures single-sign-on for this resource.",
+ "operationId": "SingleSignOnConfigurations_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Configuration name",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "SingleSignOnConfigurations_CreateOrUpdate": {
+ "$ref": "./examples/SingleSignOnConfigurations_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SingleSignOn"
+ ],
+ "summary": "Gets the datadog single sign-on resource for the given Monitor.",
+ "operationId": "SingleSignOnConfigurations_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Configuration name",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SingleSignOnConfigurations_Get": {
+ "$ref": "./examples/SingleSignOnConfigurations_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/monitoredSubscriptions": {
+ "get": {
+ "tags": [
+ "monitoredSubscriptions"
+ ],
+ "summary": "List the subscriptions currently being monitored by the Datadog monitor resource.",
+ "operationId": "MonitoredSubscriptions_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionPropertiesList"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_GetMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/monitoredSubscriptions/{configurationName}": {
+ "get": {
+ "tags": [
+ "monitoredSubscriptions"
+ ],
+ "summary": "List the subscriptions currently being monitored by the Datadog monitor resource.",
+ "operationId": "MonitoredSubscriptions_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "The configuration name. Only 'default' value is supported.",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_GetMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "monitoredSubscriptions"
+ ],
+ "summary": "Add the subscriptions that should be monitored by the Datadog monitor resource.",
+ "operationId": "MonitoredSubscriptions_CreateorUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "The configuration name. Only 'default' value is supported.",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "202": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_AddMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_CreateorUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "MonitoredSubscriptions"
+ ],
+ "summary": "Updates the subscriptions that are being monitored by the Datadog monitor resource",
+ "operationId": "MonitoredSubscriptions_Update",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "The configuration name. Only 'default' value is supported.",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "202": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_UpdateMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MonitoredSubscriptions"
+ ],
+ "summary": "Updates the subscriptions that are being monitored by the Datadog monitor resource",
+ "operationId": "MonitoredSubscriptions_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Configuration name",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_DeleteMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DatadogAgreementProperties": {
+ "description": "Terms properties.",
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "description": "Publisher identifier string.",
+ "type": "string"
+ },
+ "product": {
+ "description": "Product identifier string.",
+ "type": "string"
+ },
+ "plan": {
+ "description": "Plan identifier string.",
+ "type": "string"
+ },
+ "licenseTextLink": {
+ "description": "Link to HTML with Microsoft and Publisher terms.",
+ "type": "string"
+ },
+ "privacyPolicyLink": {
+ "description": "Link to the privacy policy of the publisher.",
+ "type": "string"
+ },
+ "retrieveDatetime": {
+ "format": "date-time",
+ "description": "Date and time in UTC of when the terms were accepted. This is empty if Accepted is false.",
+ "type": "string"
+ },
+ "signature": {
+ "description": "Terms signature.",
+ "type": "string"
+ },
+ "accepted": {
+ "description": "If any version of the terms have been accepted, otherwise false.",
+ "type": "boolean"
+ }
+ }
+ },
+ "DatadogAgreementResource": {
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "ARM id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the agreement.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/DatadogAgreementProperties",
+ "description": "Represents the properties of the resource."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogAgreementResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogAgreementResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "CreateResourceSupportedProperties": {
+ "description": "Datadog resource can be created or not properties.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The ARM id of the subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "creationSupported": {
+ "description": "Indicates if selected subscription supports Datadog resource creation, if not it is already being monitored for the selected organization via multi subscription feature. ",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "CreateResourceSupportedResponse": {
+ "description": "Datadog resource can be created or not.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CreateResourceSupportedProperties",
+ "description": "Represents the properties of the resource."
+ }
+ }
+ },
+ "CreateResourceSupportedResponseList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CreateResourceSupportedResponse"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogApiKey": {
+ "required": [
+ "key"
+ ],
+ "type": "object",
+ "properties": {
+ "createdBy": {
+ "description": "The user that created the API key.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the API key.",
+ "type": "string"
+ },
+ "key": {
+ "description": "The value of the API key.",
+ "type": "string"
+ },
+ "created": {
+ "description": "The time of creation of the API key.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogApiKeyListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogApiKey"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogInstallMethod": {
+ "type": "object",
+ "properties": {
+ "tool": {
+ "description": "The tool.",
+ "type": "string"
+ },
+ "toolVersion": {
+ "description": "The tool version.",
+ "type": "string"
+ },
+ "installerVersion": {
+ "description": "The installer version.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogLogsAgent": {
+ "type": "object",
+ "properties": {
+ "transport": {
+ "description": "The transport.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogHostMetadata": {
+ "type": "object",
+ "properties": {
+ "agentVersion": {
+ "description": "The agent version.",
+ "type": "string"
+ },
+ "installMethod": {
+ "$ref": "#/definitions/DatadogInstallMethod"
+ },
+ "logsAgent": {
+ "$ref": "#/definitions/DatadogLogsAgent"
+ }
+ }
+ },
+ "DatadogHost": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the host.",
+ "type": "string"
+ },
+ "aliases": {
+ "description": "The aliases for the host installed via the Datadog agent.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "apps": {
+ "description": "The Datadog integrations reporting metrics for the host.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "meta": {
+ "$ref": "#/definitions/DatadogHostMetadata"
+ }
+ }
+ },
+ "DatadogHostListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogHost"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "LinkedResource": {
+ "description": "The definition of a linked resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ARM id of the linked resource.",
+ "type": "string"
+ }
+ }
+ },
+ "LinkedResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LinkedResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "MonitoredResource": {
+ "description": "The properties of a resource currently being monitored by the Datadog monitor resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ARM id of the resource.",
+ "type": "string"
+ },
+ "sendingMetrics": {
+ "description": "Flag indicating if resource is sending metrics to Datadog.",
+ "type": "boolean"
+ },
+ "reasonForMetricsStatus": {
+ "description": "Reason for why the resource is sending metrics (or why it is not sending).",
+ "type": "string"
+ },
+ "sendingLogs": {
+ "description": "Flag indicating if resource is sending logs to Datadog.",
+ "type": "boolean"
+ },
+ "reasonForLogsStatus": {
+ "description": "Reason for why the resource is sending logs (or why it is not sending).",
+ "type": "string"
+ }
+ }
+ },
+ "MonitoredResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoredResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "MonitoredSubscription": {
+ "description": "The list of subscriptions and it's monitoring status by current Datadog monitor.",
+ "type": "object",
+ "properties": {
+ "subscriptionId": {
+ "description": "The subscriptionId to be monitored.",
+ "required": [
+ "subscriptionId"
+ ],
+ "type": "string"
+ },
+ "status": {
+ "description": "The state of monitoring.",
+ "enum": [
+ "InProgress",
+ "Active",
+ "Failed",
+ "Deleting"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Status"
+ },
+ "type": "string"
+ },
+ "error": {
+ "description": "The reason of not monitoring the subscription.",
+ "type": "string"
+ },
+ "tagRules": {
+ "$ref": "#/definitions/MonitoringTagRulesProperties"
+ }
+ }
+ },
+ "SubscriptionList": {
+ "description": "The request to update subscriptions needed to be monitored by the Datadog monitor resource.",
+ "type": "object",
+ "properties": {
+ "operation": {
+ "description": "The operation for the patch on the resource.",
+ "enum": [
+ "AddBegin",
+ "AddComplete",
+ "DeleteBegin",
+ "DeleteComplete",
+ "Active"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Operation"
+ },
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "monitoredSubscriptionList": {
+ "description": "List of subscriptions and the state of the monitoring.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoredSubscription"
+ }
+ }
+ }
+ },
+ "MonitoredSubscriptionProperties": {
+ "description": "The request to update subscriptions needed to be monitored by the Datadog monitor resource.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the monitored subscription resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The id of the monitored subscription resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the monitored subscription resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/SubscriptionList"
+ }
+ }
+ },
+ "MonitoredSubscriptionPropertiesList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDisplay": {
+ "description": "The object that represents the operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Service provider, i.e., Microsoft.Datadog.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Type on which the operation is performed, e.g., 'monitors'.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Operation type, e.g., read, write, delete, etc.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the operation, e.g., 'Write monitors'.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationResult": {
+ "description": "A Microsoft.Datadog REST API operation.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Operation name, i.e., {provider}/{resource}/{operation}.",
+ "type": "string"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplay"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is a data action",
+ "type": "boolean"
+ }
+ }
+ },
+ "OperationListResult": {
+ "description": "Result of GET request to list the Microsoft.Datadog operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of operations supported by the Microsoft.Datadog provider.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationResult"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of operation list results if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceSku": {
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the SKU in {PlanId} format. For Terraform, the only allowed value is 'Linked'.",
+ "type": "string"
+ }
+ }
+ },
+ "ProvisioningState": {
+ "enum": [
+ "Accepted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleted",
+ "NotSpecified"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ProvisioningState"
+ },
+ "readOnly": true
+ },
+ "MonitoringStatus": {
+ "description": "Flag specifying if the resource monitoring is enabled or disabled.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "default": "Enabled",
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MonitoringStatus"
+ }
+ },
+ "MarketplaceSubscriptionStatus": {
+ "description": "Flag specifying the Marketplace Subscription Status of the resource. If payment is not made in time, the resource will go in Suspended state.",
+ "enum": [
+ "Provisioning",
+ "Active",
+ "Suspended",
+ "Unsubscribed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MarketplaceSubscriptionStatus"
+ },
+ "readOnly": true
+ },
+ "DatadogOrganizationProperties": {
+ "description": "Specify the Datadog organization name. In the case of linking to existing organizations, Id, ApiKey, and Applicationkey is required as well.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "id": {
+ "description": "Id of the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "linkingAuthCode": {
+ "description": "The auth code used to linking to an existing Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "linkingClientId": {
+ "description": "The client_id from an existing in exchange for an auth token to link organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "redirectUri": {
+ "description": "The redirect URI for linking.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ]
+ },
+ "apiKey": {
+ "description": "Api key associated to the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "applicationKey": {
+ "description": "Application key associated to the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "enterpriseAppId": {
+ "description": "The Id of the Enterprise App used for Single sign on.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ]
+ },
+ "cspm": {
+ "description": "The configuration which describes the state of cloud security posture management. This collects configuration information for all resources in a subscription and track conformance to industry benchmarks.",
+ "type": "boolean"
+ }
+ }
+ },
+ "UserInfo": {
+ "description": "Includes name, email and optionally, phone number. User Information can't be null.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the user",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "emailAddress": {
+ "description": "Email of the user used by Datadog for contacting them if needed",
+ "pattern": "^[A-Za-z0-9._%+-]+@(?:[A-Za-z0-9-]+\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "phoneNumber": {
+ "description": "Phone number of the user used by Datadog for contacting them if needed",
+ "maxLength": 40,
+ "type": "string"
+ }
+ },
+ "x-ms-secret": true
+ },
+ "LiftrResourceCategories": {
+ "enum": [
+ "Unknown",
+ "MonitorLogs"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "LiftrResourceCategories"
+ },
+ "readOnly": true
+ },
+ "MonitorProperties": {
+ "description": "Properties specific to the monitor resource.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "monitoringStatus": {
+ "$ref": "#/definitions/MonitoringStatus"
+ },
+ "marketplaceSubscriptionStatus": {
+ "$ref": "#/definitions/MarketplaceSubscriptionStatus"
+ },
+ "datadogOrganizationProperties": {
+ "$ref": "#/definitions/DatadogOrganizationProperties"
+ },
+ "userInfo": {
+ "$ref": "#/definitions/UserInfo"
+ },
+ "liftrResourceCategory": {
+ "$ref": "#/definitions/LiftrResourceCategories"
+ },
+ "liftrResourcePreference": {
+ "description": "The priority of the resource.",
+ "format": "int32",
+ "type": "integer",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedIdentityTypes": {
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned"
+ ],
+ "type": "string",
+ "description": "Specifies the identity type of the Datadog Monitor. At this time the only allowed value is 'SystemAssigned'.",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ManagedIdentityTypes"
+ }
+ },
+ "IdentityProperties": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "description": "The identity ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tenantId": {
+ "description": "The tenant ID of resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "$ref": "#/definitions/ManagedIdentityTypes"
+ }
+ }
+ },
+ "DatadogMonitorResource": {
+ "required": [
+ "location"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "ARM id of the monitor resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the monitor resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the monitor resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "sku": {
+ "$ref": "#/definitions/ResourceSku"
+ },
+ "properties": {
+ "$ref": "#/definitions/MonitorProperties"
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "location": {
+ "type": "string"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogMonitorResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "MonitorUpdateProperties": {
+ "description": "The set of properties that can be update in a PATCH request to a monitor resource.",
+ "type": "object",
+ "properties": {
+ "monitoringStatus": {
+ "$ref": "#/definitions/MonitoringStatus"
+ },
+ "cspm": {
+ "description": "The new cloud security posture management value of the monitor resource. This collects configuration information for all resources in a subscription and track conformance to industry benchmarks.",
+ "type": "boolean"
+ }
+ }
+ },
+ "DatadogMonitorResourceUpdateParameters": {
+ "description": "The parameters for a PATCH request to a monitor resource.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MonitorUpdateProperties"
+ },
+ "tags": {
+ "description": "The new tags of the monitor resource.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "sku": {
+ "$ref": "#/definitions/ResourceSku"
+ }
+ }
+ },
+ "DatadogSetPasswordLink": {
+ "type": "object",
+ "properties": {
+ "setPasswordLink": {
+ "type": "string"
+ }
+ }
+ },
+ "TagAction": {
+ "description": "Valid actions for a filtering tag. Exclusion takes priority over inclusion.",
+ "enum": [
+ "Include",
+ "Exclude"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TagAction"
+ }
+ },
+ "FilteringTag": {
+ "description": "The definition of a filtering tag. Filtering tags are used for capturing resources and include/exclude them from being monitored.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name (also known as the key) of the tag.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The value of the tag.",
+ "type": "string"
+ },
+ "action": {
+ "$ref": "#/definitions/TagAction"
+ }
+ }
+ },
+ "LogRules": {
+ "description": "Set of rules for sending logs for the Monitor resource.",
+ "type": "object",
+ "properties": {
+ "sendAadLogs": {
+ "description": "Flag specifying if AAD logs should be sent for the Monitor resource.",
+ "type": "boolean"
+ },
+ "sendSubscriptionLogs": {
+ "description": "Flag specifying if Azure subscription logs should be sent for the Monitor resource.",
+ "type": "boolean"
+ },
+ "sendResourceLogs": {
+ "description": "Flag specifying if Azure resource logs should be sent for the Monitor resource.",
+ "type": "boolean"
+ },
+ "filteringTags": {
+ "description": "List of filtering tags to be used for capturing logs. This only takes effect if SendResourceLogs flag is enabled. If empty, all resources will be captured. If only Exclude action is specified, the rules will apply to the list of all available resources. If Include actions are specified, the rules will only include resources with the associated tags.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilteringTag"
+ }
+ }
+ }
+ },
+ "MetricRules": {
+ "description": "Set of rules for sending metrics for the Monitor resource.",
+ "type": "object",
+ "properties": {
+ "filteringTags": {
+ "description": "List of filtering tags to be used for capturing metrics. If empty, all resources will be captured. If only Exclude action is specified, the rules will apply to the list of all available resources. If Include actions are specified, the rules will only include resources with the associated tags.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilteringTag"
+ }
+ }
+ }
+ },
+ "MonitoringTagRulesProperties": {
+ "description": "Definition of the properties for a TagRules resource.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "logRules": {
+ "$ref": "#/definitions/LogRules"
+ },
+ "metricRules": {
+ "$ref": "#/definitions/MetricRules"
+ },
+ "automuting": {
+ "description": "Configuration to enable/disable auto-muting flag",
+ "type": "boolean"
+ },
+ "customMetrics": {
+ "description": "Configuration to enable/disable custom metrics. If enabled, custom metrics from app insights will be sent.",
+ "type": "boolean"
+ }
+ }
+ },
+ "MonitoringTagRules": {
+ "description": "Capture logs and metrics of Azure resources based on ARM tags.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "name": {
+ "description": "Name of the rule set.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The id of the rule set.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the rule set.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/MonitoringTagRulesProperties"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "MonitoringTagRulesListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "SingleSignOnStates": {
+ "description": "Various states of the SSO resource",
+ "enum": [
+ "Initial",
+ "Enable",
+ "Disable",
+ "Existing"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SingleSignOnStates"
+ }
+ },
+ "DatadogSingleSignOnProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "singleSignOnState": {
+ "$ref": "#/definitions/SingleSignOnStates"
+ },
+ "enterpriseAppId": {
+ "description": "The Id of the Enterprise App used for Single sign-on.",
+ "type": "string"
+ },
+ "singleSignOnUrl": {
+ "description": "The login URL specific to this Datadog Organization.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogSingleSignOnResource": {
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "ARM id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the configuration.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/DatadogSingleSignOnProperties"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogSingleSignOnResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "MonitorNameParameter": {
+ "in": "path",
+ "name": "monitorName",
+ "description": "Monitor resource name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "DatadogOrganizationId": {
+ "in": "query",
+ "name": "datadogOrganizationId",
+ "description": "Datadog Organization Id",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_GetDefaultKey.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_GetDefaultKey.json
new file mode 100644
index 000000000000..c36f2167c56f
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_GetDefaultKey.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "createdBy": "john@example.com",
+ "name": "",
+ "key": "1111111111111111aaaaaaaaaaaaaaaa",
+ "created": "2019-04-05 09:20:30"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_List.json
new file mode 100644
index 000000000000..d8bfac39da03
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_List.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "createdBy": "john@example.com",
+ "name": "",
+ "key": "1111111111111111aaaaaaaaaaaaaaaa",
+ "created": "2019-04-05 09:20:30"
+ },
+ {
+ "createdBy": "jane@example.com",
+ "name": "",
+ "key": "2111111111111111aaaaaaaaaaaaaaaa",
+ "created": "2019-04-05 09:19:53"
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_SetDefaultKey.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_SetDefaultKey.json
new file mode 100644
index 000000000000..2f23c110ffa8
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/ApiKeys_SetDefaultKey.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "body": {
+ "key": "1111111111111111aaaaaaaaaaaaaaaa"
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_Get.json
new file mode 100644
index 000000000000..db761c78104a
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_Get.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "datadogOrganizationId": "00000000-0000-0000-0000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "name": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "creationSupported": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_List.json
new file mode 100644
index 000000000000..e00f08847507
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/CreationSupported_List.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "datadogOrganizationId": "00000000-0000-0000-0000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "name": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "creationSupported": true
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Hosts_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Hosts_List.json
new file mode 100644
index 000000000000..a9ec5afee843
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Hosts_List.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "vm1",
+ "aliases": [
+ "vm1",
+ "65f2dd83-95ae-4f56-b6aa-a5dafc05f4cd"
+ ],
+ "apps": [
+ "ntp",
+ "agent"
+ ],
+ "meta": {
+ "agentVersion": "7.19.2",
+ "installMethod": {
+ "tool": "install_script",
+ "toolVersion": "install_script",
+ "installerVersion": "install_script-1.0.0"
+ },
+ "logsAgent": {
+ "transport": ""
+ }
+ }
+ },
+ {
+ "name": "vm2",
+ "aliases": [
+ "vm2",
+ "df631d9a-8178-4580-bf60-c697a5e8df4d"
+ ],
+ "apps": [
+ "infra",
+ "agent"
+ ],
+ "meta": {
+ "agentVersion": "7.18.1",
+ "installMethod": {
+ "tool": "install_script",
+ "toolVersion": "install_script",
+ "installerVersion": "install_script-1.0.0"
+ },
+ "logsAgent": {
+ "transport": "HTTP"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/LinkedResources_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/LinkedResources_List.json
new file mode 100644
index 000000000000..053517a4459b
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/LinkedResources_List.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_Create.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_Create.json
new file mode 100644
index 000000000000..e3f7b8b13b15
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_Create.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "body": {
+ "properties": {
+ "accepted": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/default",
+ "name": "default",
+ "type": "Microsoft.Datadog/agreements",
+ "properties": {
+ "publisher": "pubid1",
+ "product": "offid1",
+ "plan": "planid1",
+ "licenseTextLink": "test.licenseLink1",
+ "privacyPolicyLink": "test.privacyPolicyLink1",
+ "retrieveDatetime": "2017-08-15T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_List.json
new file mode 100644
index 000000000000..e8d020d74a1b
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MarketplaceAgreements_List.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/id1",
+ "name": "planid1",
+ "type": "Microsoft.Datadog/agreements",
+ "properties": {
+ "publisher": "pubid1",
+ "product": "offid1",
+ "plan": "planid1",
+ "licenseTextLink": "test.licenseLink1",
+ "privacyPolicyLink": "test.privacyPolicyLink1",
+ "retrieveDatetime": "2017-08-15T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": false
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/id2",
+ "name": "planid2",
+ "type": "Microsoft.Datadog/agreements",
+ "properties": {
+ "publisher": "pubid2",
+ "product": "offid2",
+ "plan": "planid2",
+ "licenseTextLink": "test.licenseLin2k",
+ "privacyPolicyLink": "test.privacyPolicyLink2",
+ "retrieveDatetime": "2017-08-14T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": false
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredResources_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredResources_List.json
new file mode 100644
index 000000000000..0a3bacc58c9d
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredResources_List.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVault",
+ "sendingMetrics": true,
+ "reasonForMetricsStatus": "CapturedByRules",
+ "sendingLogs": true,
+ "reasonForLogsStatus": "CapturedByRules"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_CreateorUpdate.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_CreateorUpdate.json
new file mode 100644
index 000000000000..cd6415948db6
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_CreateorUpdate.json
@@ -0,0 +1,207 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default",
+ "body": {
+ "properties": {
+ "operation": "AddBegin",
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Delete.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Delete.json
new file mode 100644
index 000000000000..1b9b10f698ee
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Get.json
new file mode 100644
index 000000000000..f1c9c13e0561
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Get.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_List.json
new file mode 100644
index 000000000000..623f946e8016
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_List.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Update.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Update.json
new file mode 100644
index 000000000000..d8626fb1c4fb
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/MonitoredSubscriptions_Update.json
@@ -0,0 +1,142 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default",
+ "body": {
+ "properties": {
+ "operation": "AddComplete",
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Create.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Create.json
new file mode 100644
index 000000000000..799ea23522f7
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Create.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "body": {
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": "someAuthCode",
+ "linkingClientId": "00000000-0000-0000-0000-000000000000",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "cspm": false
+ },
+ "userInfo": {
+ "name": "Alice",
+ "emailAddress": "alice@microsoft.com",
+ "phoneNumber": "123-456-7890"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123"
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Delete.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Delete.json
new file mode 100644
index 000000000000..715c771d06aa
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Get.json
new file mode 100644
index 000000000000..27e11c0a0b52
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Get.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null,
+ "cspm": false
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_List.json
new file mode 100644
index 000000000000..5b7a1d3a9b99
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null,
+ "cspm": false
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_ListByResourceGroup.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_ListByResourceGroup.json
new file mode 100644
index 000000000000..6f379bced8c8
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_ListByResourceGroup.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Update.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Update.json
new file mode 100644
index 000000000000..649d28fc28cb
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Monitors_Update.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "body": {
+ "properties": {
+ "monitoringStatus": "Enabled"
+ },
+ "tags": {
+ "Environment": "Dev"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123"
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Operations_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Operations_List.json
new file mode 100644
index 000000000000..79469a5bed06
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/Operations_List.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.Datadog/monitors/write",
+ "display": {
+ "provider": "Microsoft.Datadog",
+ "resource": "monitors",
+ "operation": "write",
+ "description": "Write monitors resource"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/RefreshSetPassword_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/RefreshSetPassword_Get.json
new file mode 100644
index 000000000000..063c123a71fa
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/RefreshSetPassword_Get.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "setPasswordLink": "https://datadoghq.com/reset_password/tokenvalue123"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_CreateOrUpdate.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_CreateOrUpdate.json
new file mode 100644
index 000000000000..b2a663c338a3
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_CreateOrUpdate.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default",
+ "body": {
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": null
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": null
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_Get.json
new file mode 100644
index 000000000000..755f70d42ed0
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_Get.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": "https://www.datadoghq.com/IAmSomeHash"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_List.json
new file mode 100644
index 000000000000..36fccbe9a92d
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/SingleSignOnConfigurations_List.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": "https://www.datadoghq.com/IAmSomeHash"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_CreateOrUpdate.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_CreateOrUpdate.json
new file mode 100644
index 000000000000..f586f9b31b3a
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_CreateOrUpdate.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "ruleSetName": "default",
+ "body": {
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/tagRules/default",
+ "type": "Microsoft.Datadog/monitors/tagRules",
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_Get.json
new file mode 100644
index 000000000000..c37a247f9fd3
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_Get.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "ruleSetName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/tagRules/default",
+ "type": "Microsoft.Datadog/monitors/tagRules",
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_List.json
new file mode 100644
index 000000000000..eeabc668d958
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-07-07/examples/TagRules_List.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2023-07-07",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/tagRules/default",
+ "type": "Microsoft.Datadog/monitors/tagRules",
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/datadog.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/datadog.json
new file mode 100644
index 000000000000..5e8f85aa38b8
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/datadog.json
@@ -0,0 +1,2651 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft.Datadog",
+ "version": "2023-10-20"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Microsoft Entra ID OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/agreements": {
+ "get": {
+ "tags": [
+ "Agreements"
+ ],
+ "summary": "List Datadog marketplace agreements in the subscription.",
+ "operationId": "MarketplaceAgreements_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogAgreementResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "MarketplaceAgreements_List": {
+ "$ref": "./examples/MarketplaceAgreements_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/agreements/default": {
+ "put": {
+ "tags": [
+ "Agreements"
+ ],
+ "summary": "Create Datadog marketplace agreement in the subscription.",
+ "operationId": "MarketplaceAgreements_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogAgreementResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogAgreementResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "MarketplaceAgreements_CreateOrUpdate": {
+ "$ref": "./examples/MarketplaceAgreements_Create.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/subscriptionStatuses": {
+ "get": {
+ "tags": [
+ "CreateResource"
+ ],
+ "summary": "Informs if the current subscription is being already monitored for selected Datadog organization.",
+ "operationId": "CreationSupported_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/DatadogOrganizationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CreateResourceSupportedResponseList"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "CreationSupported_List": {
+ "$ref": "./examples/CreationSupported_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/subscriptionStatuses/default": {
+ "get": {
+ "tags": [
+ "CreateResource"
+ ],
+ "summary": "Informs if the current subscription is being already monitored for selected Datadog organization.",
+ "operationId": "CreationSupported_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/DatadogOrganizationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/CreateResourceSupportedResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CreationSupported_Get": {
+ "$ref": "./examples/CreationSupported_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listApiKeys": {
+ "post": {
+ "tags": [
+ "ApiKey"
+ ],
+ "summary": "List the api keys for a given monitor resource.",
+ "operationId": "Monitors_ListApiKeys",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogApiKeyListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListApiKeys": {
+ "$ref": "./examples/ApiKeys_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/getDefaultKey": {
+ "post": {
+ "tags": [
+ "ApiKey"
+ ],
+ "summary": "Get the default api key.",
+ "operationId": "Monitors_GetDefaultKey",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogApiKey"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_GetDefaultKey": {
+ "$ref": "./examples/ApiKeys_GetDefaultKey.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/setDefaultKey": {
+ "post": {
+ "tags": [
+ "ApiKey"
+ ],
+ "summary": "Set the default api key.",
+ "operationId": "Monitors_SetDefaultKey",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogApiKey"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_SetDefaultKey": {
+ "$ref": "./examples/ApiKeys_SetDefaultKey.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listHosts": {
+ "post": {
+ "tags": [
+ "Hosts"
+ ],
+ "summary": "List the hosts for a given monitor resource.",
+ "operationId": "Monitors_ListHosts",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogHostListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListHosts": {
+ "$ref": "./examples/Hosts_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listLinkedResources": {
+ "post": {
+ "tags": [
+ "LinkedResources"
+ ],
+ "summary": "List all Azure resources associated to the same Datadog organization as the target resource.",
+ "operationId": "Monitors_ListLinkedResources",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/LinkedResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListLinkedResources": {
+ "$ref": "./examples/LinkedResources_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/listMonitoredResources": {
+ "post": {
+ "tags": [
+ "MonitoredResources"
+ ],
+ "summary": "List the resources currently being monitored by the Datadog monitor resource.",
+ "operationId": "Monitors_ListMonitoredResources",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListMonitoredResources": {
+ "$ref": "./examples/MonitoredResources_List.json"
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Datadog/operations": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "List all operations provided by Microsoft.Datadog for the 2023-10-20 api version.",
+ "operationId": "Operations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Operations_List": {
+ "$ref": "./examples/Operations_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Datadog/monitors": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "List all monitors under the specified subscription.",
+ "operationId": "Monitors_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_List": {
+ "$ref": "./examples/Monitors_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "List all monitors under the specified resource group.",
+ "operationId": "Monitors_ListByResourceGroup",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_ListByResourceGroup": {
+ "$ref": "./examples/Monitors_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}": {
+ "get": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Get the properties of a specific monitor resource.",
+ "operationId": "Monitors_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_Get": {
+ "$ref": "./examples/Monitors_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Create a monitor resource.",
+ "operationId": "Monitors_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "Monitors_Create": {
+ "$ref": "./examples/Monitors_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Update a monitor resource.",
+ "operationId": "Monitors_Update",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResourceUpdateParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_Update": {
+ "$ref": "./examples/Monitors_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MonitorsResource"
+ ],
+ "summary": "Delete a monitor resource.",
+ "operationId": "Monitors_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_Delete": {
+ "$ref": "./examples/Monitors_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/getBillingInfo": {
+ "post": {
+ "tags": [
+ "ConnectedResources"
+ ],
+ "summary": "Get marketplace and organization info mapped to the given monitor.",
+ "operationId": "BillingInfo_Get",
+ "produces": [
+ "application/json"
+ ],
+ "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/MonitorNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/BillingInfoResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "BillingInfo_Get": {
+ "$ref": "./examples/BillingInfo_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/refreshSetPasswordLink": {
+ "post": {
+ "tags": [
+ "RefreshSetPasswordLink"
+ ],
+ "summary": "Refresh the set password link and return a latest one.",
+ "operationId": "Monitors_RefreshSetPasswordLink",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSetPasswordLink"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_RefreshSetPasswordLink": {
+ "$ref": "./examples/RefreshSetPassword_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/tagRules": {
+ "get": {
+ "tags": [
+ "Rules"
+ ],
+ "summary": "List the tag rules for a given monitor resource.",
+ "operationId": "TagRules_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRulesListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "TagRules_List": {
+ "$ref": "./examples/TagRules_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/tagRules/{ruleSetName}": {
+ "put": {
+ "tags": [
+ "Rules"
+ ],
+ "summary": "Create or update a tag rule set for a given monitor resource.",
+ "operationId": "TagRules_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Rule set name",
+ "in": "path",
+ "name": "ruleSetName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TagRules_CreateOrUpdate": {
+ "$ref": "./examples/TagRules_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Rules"
+ ],
+ "summary": "Get a tag rule set for a given monitor resource.",
+ "operationId": "TagRules_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Rule set name",
+ "in": "path",
+ "name": "ruleSetName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "TagRules_Get": {
+ "$ref": "./examples/TagRules_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/singleSignOnConfigurations": {
+ "get": {
+ "tags": [
+ "SingleSignOn"
+ ],
+ "summary": "List the single sign-on configurations for a given monitor resource.",
+ "operationId": "SingleSignOnConfigurations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "SingleSignOnConfigurations_List": {
+ "$ref": "./examples/SingleSignOnConfigurations_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/singleSignOnConfigurations/{configurationName}": {
+ "put": {
+ "tags": [
+ "SingleSignOn"
+ ],
+ "summary": "Configures single-sign-on for this resource.",
+ "operationId": "SingleSignOnConfigurations_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Configuration name",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "SingleSignOnConfigurations_CreateOrUpdate": {
+ "$ref": "./examples/SingleSignOnConfigurations_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SingleSignOn"
+ ],
+ "summary": "Gets the datadog single sign-on resource for the given Monitor.",
+ "operationId": "SingleSignOnConfigurations_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Configuration name",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SingleSignOnConfigurations_Get": {
+ "$ref": "./examples/SingleSignOnConfigurations_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/monitoredSubscriptions": {
+ "get": {
+ "tags": [
+ "monitoredSubscriptions"
+ ],
+ "summary": "List the subscriptions currently being monitored by the Datadog monitor resource.",
+ "operationId": "MonitoredSubscriptions_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionPropertiesList"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Monitors_GetMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/monitoredSubscriptions/{configurationName}": {
+ "get": {
+ "tags": [
+ "monitoredSubscriptions"
+ ],
+ "summary": "List the subscriptions currently being monitored by the Datadog monitor resource.",
+ "operationId": "MonitoredSubscriptions_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "The configuration name. Only 'default' value is supported.",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Monitors_GetMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "monitoredSubscriptions"
+ ],
+ "summary": "Add the subscriptions that should be monitored by the Datadog monitor resource.",
+ "operationId": "MonitoredSubscriptions_CreateorUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "The configuration name. Only 'default' value is supported.",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "201": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "202": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_AddMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_CreateorUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "MonitoredSubscriptions"
+ ],
+ "summary": "Updates the subscriptions that are being monitored by the Datadog monitor resource",
+ "operationId": "MonitoredSubscriptions_Update",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "The configuration name. Only 'default' value is supported.",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "202": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_UpdateMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MonitoredSubscriptions"
+ ],
+ "summary": "Updates the subscriptions that are being monitored by the Datadog monitor resource",
+ "operationId": "MonitoredSubscriptions_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MonitorNameParameter"
+ },
+ {
+ "description": "Configuration name",
+ "in": "path",
+ "name": "configurationName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Monitors_DeleteMonitoredSubscriptions": {
+ "$ref": "./examples/MonitoredSubscriptions_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DatadogAgreementProperties": {
+ "description": "Terms properties.",
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "description": "Publisher identifier string.",
+ "type": "string"
+ },
+ "product": {
+ "description": "Product identifier string.",
+ "type": "string"
+ },
+ "plan": {
+ "description": "Plan identifier string.",
+ "type": "string"
+ },
+ "licenseTextLink": {
+ "description": "Link to HTML with Microsoft and Publisher terms.",
+ "type": "string"
+ },
+ "privacyPolicyLink": {
+ "description": "Link to the privacy policy of the publisher.",
+ "type": "string"
+ },
+ "retrieveDatetime": {
+ "format": "date-time",
+ "description": "Date and time in UTC of when the terms were accepted. This is empty if Accepted is false.",
+ "type": "string"
+ },
+ "signature": {
+ "description": "Terms signature.",
+ "type": "string"
+ },
+ "accepted": {
+ "description": "If any version of the terms have been accepted, otherwise false.",
+ "type": "boolean"
+ }
+ }
+ },
+ "DatadogAgreementResource": {
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "ARM id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the agreement.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/DatadogAgreementProperties",
+ "description": "Represents the properties of the resource."
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogAgreementResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogAgreementResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "CreateResourceSupportedProperties": {
+ "description": "Datadog resource can be created or not properties.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The ARM id of the subscription.",
+ "type": "string",
+ "readOnly": true
+ },
+ "creationSupported": {
+ "description": "Indicates if selected subscription supports Datadog resource creation, if not it is already being monitored for the selected organization via multi subscription feature. ",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "CreateResourceSupportedResponse": {
+ "description": "Datadog resource can be created or not.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CreateResourceSupportedProperties",
+ "description": "Represents the properties of the resource."
+ }
+ }
+ },
+ "CreateResourceSupportedResponseList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CreateResourceSupportedResponse"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogApiKey": {
+ "required": [
+ "key"
+ ],
+ "type": "object",
+ "properties": {
+ "createdBy": {
+ "description": "The user that created the API key.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the API key.",
+ "type": "string"
+ },
+ "key": {
+ "description": "The value of the API key.",
+ "type": "string"
+ },
+ "created": {
+ "description": "The time of creation of the API key.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogApiKeyListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogApiKey"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogInstallMethod": {
+ "type": "object",
+ "properties": {
+ "tool": {
+ "description": "The tool.",
+ "type": "string"
+ },
+ "toolVersion": {
+ "description": "The tool version.",
+ "type": "string"
+ },
+ "installerVersion": {
+ "description": "The installer version.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogLogsAgent": {
+ "type": "object",
+ "properties": {
+ "transport": {
+ "description": "The transport.",
+ "type": "string"
+ }
+ }
+ },
+ "DatadogHostMetadata": {
+ "type": "object",
+ "properties": {
+ "agentVersion": {
+ "description": "The agent version.",
+ "type": "string"
+ },
+ "installMethod": {
+ "$ref": "#/definitions/DatadogInstallMethod"
+ },
+ "logsAgent": {
+ "$ref": "#/definitions/DatadogLogsAgent"
+ }
+ }
+ },
+ "DatadogHost": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the host.",
+ "type": "string"
+ },
+ "aliases": {
+ "description": "The aliases for the host installed via the Datadog agent.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "apps": {
+ "description": "The Datadog integrations reporting metrics for the host.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "meta": {
+ "$ref": "#/definitions/DatadogHostMetadata"
+ }
+ }
+ },
+ "DatadogHostListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogHost"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "LinkedResource": {
+ "description": "The definition of a linked resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ARM id of the linked resource.",
+ "type": "string"
+ },
+ "location": {
+ "description": "The location of the linked resource.",
+ "type": "string"
+ }
+ }
+ },
+ "LinkedResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LinkedResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "MonitoredResource": {
+ "description": "The properties of a resource currently being monitored by the Datadog monitor resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ARM id of the resource.",
+ "type": "string"
+ },
+ "sendingMetrics": {
+ "description": "Flag indicating if resource is sending metrics to Datadog.",
+ "type": "boolean"
+ },
+ "reasonForMetricsStatus": {
+ "description": "Reason for why the resource is sending metrics (or why it is not sending).",
+ "type": "string"
+ },
+ "sendingLogs": {
+ "description": "Flag indicating if resource is sending logs to Datadog.",
+ "type": "boolean"
+ },
+ "reasonForLogsStatus": {
+ "description": "Reason for why the resource is sending logs (or why it is not sending).",
+ "type": "string"
+ }
+ }
+ },
+ "MonitoredResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoredResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "BillingInfoResponse": {
+ "description": "Marketplace Subscription and Organization details to which resource gets billed into.",
+ "type": "object",
+ "properties": {
+ "marketplaceSaasInfo": {
+ "description": "Marketplace Subscription details",
+ "$ref": "#/definitions/MarketplaceSaaSInfo"
+ },
+ "partnerBillingEntity": {
+ "description": "Partner Billing Entity details: Organization Info",
+ "$ref": "#/definitions/PartnerBillingEntity"
+ }
+ }
+ },
+ "MarketplaceSaaSInfo": {
+ "description": "Marketplace SAAS Info of the resource.",
+ "type": "object",
+ "properties": {
+ "marketplaceSubscriptionId": {
+ "description": "Marketplace Subscription Id. This is a GUID-formatted string.",
+ "type": "string"
+ },
+ "marketplaceName": {
+ "description": "Marketplace Subscription Details: SAAS Name",
+ "type": "string"
+ },
+ "marketplaceStatus": {
+ "description": "Marketplace Subscription Details: SaaS Subscription Status",
+ "type": "string"
+ },
+ "billedAzureSubscriptionId": {
+ "description": "The Azure Subscription ID to which the Marketplace Subscription belongs and gets billed into.",
+ "type": "string"
+ },
+ "subscribed": {
+ "description": "Flag specifying if the Marketplace status is subscribed or not.",
+ "type": "boolean"
+ }
+ }
+ },
+ "PartnerBillingEntity": {
+ "description": "Partner Billing details associated with the resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The Datadog Organization Id.",
+ "type": "string"
+ },
+ "name": {
+ "description": "The Datadog Organization Name.",
+ "type": "string"
+ },
+ "partnerEntityUri": {
+ "description": "Link to the datadog organization page",
+ "type": "string"
+ }
+ }
+ },
+ "MonitoredSubscription": {
+ "description": "The list of subscriptions and it's monitoring status by current Datadog monitor.",
+ "type": "object",
+ "properties": {
+ "subscriptionId": {
+ "description": "The subscriptionId to be monitored.",
+ "required": [
+ "subscriptionId"
+ ],
+ "type": "string"
+ },
+ "status": {
+ "description": "The state of monitoring.",
+ "enum": [
+ "InProgress",
+ "Active",
+ "Failed",
+ "Deleting"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Status"
+ },
+ "type": "string"
+ },
+ "error": {
+ "description": "The reason of not monitoring the subscription.",
+ "type": "string"
+ },
+ "tagRules": {
+ "$ref": "#/definitions/MonitoringTagRulesProperties"
+ }
+ }
+ },
+ "SubscriptionList": {
+ "description": "The request to update subscriptions needed to be monitored by the Datadog monitor resource.",
+ "type": "object",
+ "properties": {
+ "operation": {
+ "description": "The operation for the patch on the resource.",
+ "enum": [
+ "AddBegin",
+ "AddComplete",
+ "DeleteBegin",
+ "DeleteComplete",
+ "Active"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Operation"
+ },
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "monitoredSubscriptionList": {
+ "description": "List of subscriptions and the state of the monitoring.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoredSubscription"
+ }
+ }
+ }
+ },
+ "MonitoredSubscriptionProperties": {
+ "description": "The request to update subscriptions needed to be monitored by the Datadog monitor resource.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the monitored subscription resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The id of the monitored subscription resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the monitored subscription resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/SubscriptionList"
+ }
+ }
+ },
+ "MonitoredSubscriptionPropertiesList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoredSubscriptionProperties"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDisplay": {
+ "description": "The object that represents the operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Service provider, i.e., Microsoft.Datadog.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Type on which the operation is performed, e.g., 'monitors'.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Operation type, e.g., read, write, delete, etc.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the operation, e.g., 'Write monitors'.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationResult": {
+ "description": "A Microsoft.Datadog REST API operation.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Operation name, i.e., {provider}/{resource}/{operation}.",
+ "type": "string"
+ },
+ "display": {
+ "$ref": "#/definitions/OperationDisplay"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is a data action",
+ "type": "boolean"
+ }
+ }
+ },
+ "OperationListResult": {
+ "description": "Result of GET request to list the Microsoft.Datadog operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of operations supported by the Microsoft.Datadog provider.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationResult"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of operation list results if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceSku": {
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the SKU in {PlanId} format. For Terraform, the only allowed value is 'Linked'.",
+ "type": "string"
+ }
+ }
+ },
+ "ProvisioningState": {
+ "enum": [
+ "Accepted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleted",
+ "NotSpecified"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ProvisioningState"
+ },
+ "readOnly": true
+ },
+ "MonitoringStatus": {
+ "description": "Flag specifying if the resource monitoring is enabled or disabled.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "default": "Enabled",
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MonitoringStatus"
+ }
+ },
+ "MarketplaceSubscriptionStatus": {
+ "description": "Flag specifying the Marketplace Subscription Status of the resource. If payment is not made in time, the resource will go in Suspended state.",
+ "enum": [
+ "Provisioning",
+ "Active",
+ "Suspended",
+ "Unsubscribed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MarketplaceSubscriptionStatus"
+ },
+ "readOnly": true
+ },
+ "DatadogOrganizationProperties": {
+ "description": "Specify the Datadog organization name. In the case of linking to existing organizations, Id, ApiKey, and Applicationkey is required as well.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "id": {
+ "description": "Id of the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "linkingAuthCode": {
+ "description": "The auth code used to linking to an existing Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "linkingClientId": {
+ "description": "The client_id from an existing in exchange for an auth token to link organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "redirectUri": {
+ "description": "The redirect URI for linking.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ]
+ },
+ "apiKey": {
+ "description": "Api key associated to the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "applicationKey": {
+ "description": "Application key associated to the Datadog organization.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "enterpriseAppId": {
+ "description": "The Id of the Enterprise App used for Single sign on.",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ]
+ },
+ "cspm": {
+ "description": "The configuration which describes the state of cloud security posture management. This collects configuration information for all resources in a subscription and track conformance to industry benchmarks.",
+ "type": "boolean"
+ }
+ }
+ },
+ "UserInfo": {
+ "description": "Includes name, email and optionally, phone number. User Information can't be null.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the user",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "emailAddress": {
+ "description": "Email of the user used by Datadog for contacting them if needed",
+ "pattern": "^[A-Za-z0-9._%+-]+@(?:[A-Za-z0-9-]+\\.)+[A-Za-z]{2,}$",
+ "type": "string"
+ },
+ "phoneNumber": {
+ "description": "Phone number of the user used by Datadog for contacting them if needed",
+ "maxLength": 40,
+ "type": "string"
+ }
+ },
+ "x-ms-secret": true
+ },
+ "LiftrResourceCategories": {
+ "enum": [
+ "Unknown",
+ "MonitorLogs"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "LiftrResourceCategories"
+ },
+ "readOnly": true
+ },
+ "MonitorProperties": {
+ "description": "Properties specific to the monitor resource.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "monitoringStatus": {
+ "$ref": "#/definitions/MonitoringStatus"
+ },
+ "marketplaceSubscriptionStatus": {
+ "$ref": "#/definitions/MarketplaceSubscriptionStatus"
+ },
+ "datadogOrganizationProperties": {
+ "$ref": "#/definitions/DatadogOrganizationProperties"
+ },
+ "userInfo": {
+ "$ref": "#/definitions/UserInfo"
+ },
+ "liftrResourceCategory": {
+ "$ref": "#/definitions/LiftrResourceCategories"
+ },
+ "liftrResourcePreference": {
+ "description": "The priority of the resource.",
+ "format": "int32",
+ "type": "integer",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedIdentityTypes": {
+ "enum": [
+ "SystemAssigned",
+ "UserAssigned"
+ ],
+ "type": "string",
+ "description": "Specifies the identity type of the Datadog Monitor. At this time the only allowed value is 'SystemAssigned'.",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ManagedIdentityTypes"
+ }
+ },
+ "IdentityProperties": {
+ "type": "object",
+ "properties": {
+ "principalId": {
+ "description": "The identity ID.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tenantId": {
+ "description": "The tenant ID of resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "$ref": "#/definitions/ManagedIdentityTypes"
+ }
+ }
+ },
+ "DatadogMonitorResource": {
+ "required": [
+ "location"
+ ],
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "ARM id of the monitor resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the monitor resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the monitor resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "sku": {
+ "$ref": "#/definitions/ResourceSku"
+ },
+ "properties": {
+ "$ref": "#/definitions/MonitorProperties"
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityProperties"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "location": {
+ "type": "string"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogMonitorResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogMonitorResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "MonitorUpdateProperties": {
+ "description": "The set of properties that can be update in a PATCH request to a monitor resource.",
+ "type": "object",
+ "properties": {
+ "monitoringStatus": {
+ "$ref": "#/definitions/MonitoringStatus"
+ },
+ "cspm": {
+ "description": "The new cloud security posture management value of the monitor resource. This collects configuration information for all resources in a subscription and track conformance to industry benchmarks.",
+ "type": "boolean"
+ }
+ }
+ },
+ "DatadogMonitorResourceUpdateParameters": {
+ "description": "The parameters for a PATCH request to a monitor resource.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MonitorUpdateProperties"
+ },
+ "tags": {
+ "description": "The new tags of the monitor resource.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "sku": {
+ "$ref": "#/definitions/ResourceSku"
+ }
+ }
+ },
+ "DatadogSetPasswordLink": {
+ "type": "object",
+ "properties": {
+ "setPasswordLink": {
+ "type": "string"
+ }
+ }
+ },
+ "TagAction": {
+ "description": "Valid actions for a filtering tag. Exclusion takes priority over inclusion.",
+ "enum": [
+ "Include",
+ "Exclude"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TagAction"
+ }
+ },
+ "FilteringTag": {
+ "description": "The definition of a filtering tag. Filtering tags are used for capturing resources and include/exclude them from being monitored.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name (also known as the key) of the tag.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The value of the tag.",
+ "type": "string"
+ },
+ "action": {
+ "$ref": "#/definitions/TagAction"
+ }
+ }
+ },
+ "LogRules": {
+ "description": "Set of rules for sending logs for the Monitor resource.",
+ "type": "object",
+ "properties": {
+ "sendAadLogs": {
+ "description": "Flag specifying if AAD logs should be sent for the Monitor resource.",
+ "type": "boolean"
+ },
+ "sendSubscriptionLogs": {
+ "description": "Flag specifying if Azure subscription logs should be sent for the Monitor resource.",
+ "type": "boolean"
+ },
+ "sendResourceLogs": {
+ "description": "Flag specifying if Azure resource logs should be sent for the Monitor resource.",
+ "type": "boolean"
+ },
+ "filteringTags": {
+ "description": "List of filtering tags to be used for capturing logs. This only takes effect if SendResourceLogs flag is enabled. If empty, all resources will be captured. If only Exclude action is specified, the rules will apply to the list of all available resources. If Include actions are specified, the rules will only include resources with the associated tags.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilteringTag"
+ }
+ }
+ }
+ },
+ "MetricRules": {
+ "description": "Set of rules for sending metrics for the Monitor resource.",
+ "type": "object",
+ "properties": {
+ "filteringTags": {
+ "description": "List of filtering tags to be used for capturing metrics. If empty, all resources will be captured. If only Exclude action is specified, the rules will apply to the list of all available resources. If Include actions are specified, the rules will only include resources with the associated tags.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilteringTag"
+ }
+ }
+ }
+ },
+ "MonitoringTagRulesProperties": {
+ "description": "Definition of the properties for a TagRules resource.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "logRules": {
+ "$ref": "#/definitions/LogRules"
+ },
+ "metricRules": {
+ "$ref": "#/definitions/MetricRules"
+ },
+ "automuting": {
+ "description": "Configuration to enable/disable auto-muting flag",
+ "type": "boolean"
+ },
+ "customMetrics": {
+ "description": "Configuration to enable/disable custom metrics. If enabled, custom metrics from app insights will be sent.",
+ "type": "boolean"
+ }
+ }
+ },
+ "MonitoringTagRules": {
+ "description": "Capture logs and metrics of Azure resources based on ARM tags.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "name": {
+ "description": "Name of the rule set.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The id of the rule set.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the rule set.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/MonitoringTagRulesProperties"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "MonitoringTagRulesListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MonitoringTagRules"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "SingleSignOnStates": {
+ "description": "Various states of the SSO resource",
+ "enum": [
+ "Initial",
+ "Enable",
+ "Disable",
+ "Existing"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SingleSignOnStates"
+ }
+ },
+ "DatadogSingleSignOnProperties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "singleSignOnState": {
+ "$ref": "#/definitions/SingleSignOnStates"
+ },
+ "enterpriseAppId": {
+ "description": "The Id of the Enterprise App used for Single sign-on.",
+ "type": "string"
+ },
+ "singleSignOnUrl": {
+ "description": "The login URL specific to this Datadog Organization.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogSingleSignOnResource": {
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "ARM id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the configuration.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/DatadogSingleSignOnProperties"
+ },
+ "systemData": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ }
+ }
+ },
+ "DatadogSingleSignOnResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DatadogSingleSignOnResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "MonitorNameParameter": {
+ "in": "path",
+ "name": "monitorName",
+ "description": "Monitor resource name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "DatadogOrganizationId": {
+ "in": "query",
+ "name": "datadogOrganizationId",
+ "description": "Datadog Organization Id",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_GetDefaultKey.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_GetDefaultKey.json
new file mode 100644
index 000000000000..31ffe3fd95b1
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_GetDefaultKey.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "createdBy": "john@example.com",
+ "name": "",
+ "key": "1111111111111111aaaaaaaaaaaaaaaa",
+ "created": "2019-04-05 09:20:30"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_List.json
new file mode 100644
index 000000000000..b1abdec3623a
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_List.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "createdBy": "john@example.com",
+ "name": "",
+ "key": "1111111111111111aaaaaaaaaaaaaaaa",
+ "created": "2019-04-05 09:20:30"
+ },
+ {
+ "createdBy": "jane@example.com",
+ "name": "",
+ "key": "2111111111111111aaaaaaaaaaaaaaaa",
+ "created": "2019-04-05 09:19:53"
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_SetDefaultKey.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_SetDefaultKey.json
new file mode 100644
index 000000000000..10de586d7ea2
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/ApiKeys_SetDefaultKey.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "body": {
+ "key": "1111111111111111aaaaaaaaaaaaaaaa"
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/BillingInfo_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/BillingInfo_Get.json
new file mode 100644
index 000000000000..d93a0e44dae7
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/BillingInfo_Get.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "marketplaceSaasInfo": {
+ "marketplaceSubscriptionId": "12345678-1234-1234-1234-123456789012",
+ "marketplaceName": "MP_RESOURCE",
+ "marketplaceStatus": "Status",
+ "billedAzureSubscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscribed": true
+ },
+ "partnerBillingEntity": {
+ "id": "1234567890",
+ "name": "datadogOrganizationName",
+ "partnerEntityUri": "https://example.com"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_Get.json
new file mode 100644
index 000000000000..9d34c4551ec1
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_Get.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "datadogOrganizationId": "00000000-0000-0000-0000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "name": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "creationSupported": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_List.json
new file mode 100644
index 000000000000..1f39298cfd22
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/CreationSupported_List.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "datadogOrganizationId": "00000000-0000-0000-0000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "name": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "creationSupported": true
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Hosts_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Hosts_List.json
new file mode 100644
index 000000000000..dbffd1b67e31
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Hosts_List.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "vm1",
+ "aliases": [
+ "vm1",
+ "65f2dd83-95ae-4f56-b6aa-a5dafc05f4cd"
+ ],
+ "apps": [
+ "ntp",
+ "agent"
+ ],
+ "meta": {
+ "agentVersion": "7.19.2",
+ "installMethod": {
+ "tool": "install_script",
+ "toolVersion": "install_script",
+ "installerVersion": "install_script-1.0.0"
+ },
+ "logsAgent": {
+ "transport": ""
+ }
+ }
+ },
+ {
+ "name": "vm2",
+ "aliases": [
+ "vm2",
+ "df631d9a-8178-4580-bf60-c697a5e8df4d"
+ ],
+ "apps": [
+ "infra",
+ "agent"
+ ],
+ "meta": {
+ "agentVersion": "7.18.1",
+ "installMethod": {
+ "tool": "install_script",
+ "toolVersion": "install_script",
+ "installerVersion": "install_script-1.0.0"
+ },
+ "logsAgent": {
+ "transport": "HTTP"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/LinkedResources_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/LinkedResources_List.json
new file mode 100644
index 000000000000..396ed0d52571
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/LinkedResources_List.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_Create.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_Create.json
new file mode 100644
index 000000000000..5de8c551fde6
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_Create.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "body": {
+ "properties": {
+ "accepted": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/default",
+ "name": "default",
+ "type": "Microsoft.Datadog/agreements",
+ "properties": {
+ "publisher": "pubid1",
+ "product": "offid1",
+ "plan": "planid1",
+ "licenseTextLink": "test.licenseLink1",
+ "privacyPolicyLink": "test.privacyPolicyLink1",
+ "retrieveDatetime": "2017-08-15T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_List.json
new file mode 100644
index 000000000000..33b6e0059857
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MarketplaceAgreements_List.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/id1",
+ "name": "planid1",
+ "type": "Microsoft.Datadog/agreements",
+ "properties": {
+ "publisher": "pubid1",
+ "product": "offid1",
+ "plan": "planid1",
+ "licenseTextLink": "test.licenseLink1",
+ "privacyPolicyLink": "test.privacyPolicyLink1",
+ "retrieveDatetime": "2017-08-15T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": false
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/id2",
+ "name": "planid2",
+ "type": "Microsoft.Datadog/agreements",
+ "properties": {
+ "publisher": "pubid2",
+ "product": "offid2",
+ "plan": "planid2",
+ "licenseTextLink": "test.licenseLin2k",
+ "privacyPolicyLink": "test.privacyPolicyLink2",
+ "retrieveDatetime": "2017-08-14T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": false
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredResources_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredResources_List.json
new file mode 100644
index 000000000000..5ea2daf0f691
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredResources_List.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVault",
+ "sendingMetrics": true,
+ "reasonForMetricsStatus": "CapturedByRules",
+ "sendingLogs": true,
+ "reasonForLogsStatus": "CapturedByRules"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_CreateorUpdate.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_CreateorUpdate.json
new file mode 100644
index 000000000000..d916c76d79aa
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_CreateorUpdate.json
@@ -0,0 +1,207 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default",
+ "body": {
+ "properties": {
+ "operation": "AddBegin",
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Delete.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Delete.json
new file mode 100644
index 000000000000..5544af4b4279
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Get.json
new file mode 100644
index 000000000000..81f77fff65d8
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Get.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_List.json
new file mode 100644
index 000000000000..b2938a92cb20
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_List.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Update.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Update.json
new file mode 100644
index 000000000000..d1f3dbc99903
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/MonitoredSubscriptions_Update.json
@@ -0,0 +1,142 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default",
+ "body": {
+ "properties": {
+ "operation": "AddComplete",
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/monitoredSubscriptions/default",
+ "type": "Microsoft.Datadog/monitors/monitoredSubscriptions",
+ "properties": {
+ "monitoredSubscriptionList": [
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000000",
+ "status": "Active",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ },
+ {
+ "subscriptionId": "/subscriptions/00000000-0000-0000-0000-000000000001",
+ "status": "Failed",
+ "tagRules": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Create.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Create.json
new file mode 100644
index 000000000000..856d235af48d
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Create.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "body": {
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": "someAuthCode",
+ "linkingClientId": "00000000-0000-0000-0000-000000000000",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "cspm": false
+ },
+ "userInfo": {
+ "name": "Alice",
+ "emailAddress": "alice@microsoft.com",
+ "phoneNumber": "123-456-7890"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123"
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Delete.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Delete.json
new file mode 100644
index 000000000000..4ededbbaf3da
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Datadog/monitors/test?api-version=2022-09-01"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Get.json
new file mode 100644
index 000000000000..a4ebdca2dc26
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Get.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null,
+ "cspm": false
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_List.json
new file mode 100644
index 000000000000..ef502196ea76
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null,
+ "cspm": false
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_ListByResourceGroup.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_ListByResourceGroup.json
new file mode 100644
index 000000000000..8a2c5f9faa74
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_ListByResourceGroup.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Update.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Update.json
new file mode 100644
index 000000000000..141b34324a73
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Monitors_Update.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "body": {
+ "properties": {
+ "monitoringStatus": "Enabled"
+ },
+ "tags": {
+ "Environment": "Dev"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123",
+ "linkingAuthCode": null,
+ "linkingClientId": null,
+ "enterpriseAppId": null
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/monitors/myMonitor",
+ "name": "myMonitor",
+ "type": "Microsoft.Datadog/monitors",
+ "sku": {
+ "name": "free_Monthly"
+ },
+ "properties": {
+ "provisioningState": "Accepted",
+ "monitoringStatus": "Enabled",
+ "datadogOrganizationProperties": {
+ "name": "myOrg",
+ "id": "myOrg123"
+ },
+ "liftrResourceCategory": "MonitorLogs",
+ "liftrResourcePreference": 1
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Operations_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Operations_List.json
new file mode 100644
index 000000000000..2e990c81387c
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/Operations_List.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.Datadog/monitors/write",
+ "display": {
+ "provider": "Microsoft.Datadog",
+ "resource": "monitors",
+ "operation": "write",
+ "description": "Write monitors resource"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/RefreshSetPassword_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/RefreshSetPassword_Get.json
new file mode 100644
index 000000000000..fa608320066a
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/RefreshSetPassword_Get.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "setPasswordLink": "https://datadoghq.com/reset_password/tokenvalue123"
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_CreateOrUpdate.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_CreateOrUpdate.json
new file mode 100644
index 000000000000..1c20a0ee7c14
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_CreateOrUpdate.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default",
+ "body": {
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": null
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": null
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_Get.json
new file mode 100644
index 000000000000..2a8756907749
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_Get.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "configurationName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": "https://www.datadoghq.com/IAmSomeHash"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_List.json
new file mode 100644
index 000000000000..502b4f521872
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/SingleSignOnConfigurations_List.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/singleSignOnConfigurations/default",
+ "properties": {
+ "singleSignOnState": "Enable",
+ "enterpriseAppId": "00000000-0000-0000-0000-000000000000",
+ "singleSignOnUrl": "https://www.datadoghq.com/IAmSomeHash"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_CreateOrUpdate.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_CreateOrUpdate.json
new file mode 100644
index 000000000000..814016d40a74
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_CreateOrUpdate.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "ruleSetName": "default",
+ "body": {
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/tagRules/default",
+ "type": "Microsoft.Datadog/monitors/tagRules",
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_Get.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_Get.json
new file mode 100644
index 000000000000..ede2f9fd56c0
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_Get.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor",
+ "ruleSetName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/tagRules/default",
+ "type": "Microsoft.Datadog/monitors/tagRules",
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_List.json b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_List.json
new file mode 100644
index 000000000000..0b2b359807cb
--- /dev/null
+++ b/specification/datadog/resource-manager/Microsoft.Datadog/stable/2023-10-20/examples/TagRules_List.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2023-10-20",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "monitorName": "myMonitor"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "default",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Datadog/monitors/myMonitor/tagRules/default",
+ "type": "Microsoft.Datadog/monitors/tagRules",
+ "properties": {
+ "logRules": {
+ "sendAadLogs": false,
+ "sendSubscriptionLogs": true,
+ "sendResourceLogs": true,
+ "filteringTags": [
+ {
+ "name": "Environment",
+ "value": "Prod",
+ "action": "Include"
+ },
+ {
+ "name": "Environment",
+ "value": "Dev",
+ "action": "Exclude"
+ }
+ ]
+ },
+ "metricRules": {
+ "filteringTags": []
+ },
+ "automuting": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/datadog/resource-manager/readme.md b/specification/datadog/resource-manager/readme.md
index 47bf7a71db69..e8d70147b664 100644
--- a/specification/datadog/resource-manager/readme.md
+++ b/specification/datadog/resource-manager/readme.md
@@ -26,7 +26,23 @@ These are the global settings for the Datadog API.
title: Microsoft Datadog Client
openapi-type: arm
openapi-subtype: rpaas
-tag: package-2023-01
+tag: package-2023-10
+```
+### Tag: package-2023-10
+
+These settings apply only when `--tag=package-2023-10` is specified on the command line.
+
+``` yaml $(tag) == 'package-2023-10'
+input-file:
+- Microsoft.Datadog/stable/2023-10-20/datadog.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.Datadog/stable/2023-07-07/datadog.json
```
### Tag: package-2023-01
diff --git a/specification/datadog/resource-manager/sdk-suppressions.yaml b/specification/datadog/resource-manager/sdk-suppressions.yaml
new file mode 100644
index 000000000000..26ee5a0a0444
--- /dev/null
+++ b/specification/datadog/resource-manager/sdk-suppressions.yaml
@@ -0,0 +1,8 @@
+suppressions:
+ azure-sdk-for-python:
+ - package: azure-mgmt-datadog
+ breaking-changes:
+ - Deleted or renamed model `CreateResourceSupportedResponseList`
+ - Deleted or renamed model `MonitoredSubscriptionPropertiesList`
+ - Method `CreationSupportedOperations.list` changed from `synchronous` to `asynchronous`
+ - Method `MonitoredSubscriptionsOperations.list` changed from `synchronous` to `asynchronous`
From 416353cabfea1fc7a1c7c46ba3340408a2618de1 Mon Sep 17 00:00:00 2001
From: Mitesh Shah <58204159+mitsha-microsoft@users.noreply.github.com>
Date: Wed, 18 Dec 2024 12:07:27 +0530
Subject: [PATCH 029/128] [Azure Load Testing] Fix Client Generation for
Consolidated Admin/Run Clients (#31920)
* Fixes to cllient.tsp for SDK Generation
* Another try
* Another try 2
* Re-merge interfaces and use recommended decorator
---
.../LoadTestService/client.tsp | 31 ++++++-------------
1 file changed, 9 insertions(+), 22 deletions(-)
diff --git a/specification/loadtestservice/LoadTestService/client.tsp b/specification/loadtestservice/LoadTestService/client.tsp
index 1cd5e117e1be..1578013d2255 100644
--- a/specification/loadtestservice/LoadTestService/client.tsp
+++ b/specification/loadtestservice/LoadTestService/client.tsp
@@ -2,6 +2,7 @@ import "./main.tsp";
import "@azure-tools/typespec-client-generator-core";
using TypeSpec.Versioning;
+using TypeSpec.Rest;
using Azure.ClientGenerator.Core;
using Microsoft.LoadTestService;
@@ -34,6 +35,11 @@ interface AdministrationOperations {
uploadTestFile is LoadTestAdministration.uploadTestFile;
deleteTestFile is LoadTestAdministration.deleteTestFile;
deleteTest is LoadTestAdministration.deleteTest;
+
+ createOrUpdateTestProfile is TestProfileAdministration.createOrUpdateTestProfile;
+ deleteTestProfile is TestProfileAdministration.deleteTestProfile;
+ getTestProfile is TestProfileAdministration.getTestProfile;
+ listTestProfiles is TestProfileAdministration.listTestProfiles;
}
#suppress "@azure-tools/typespec-azure-core/use-standard-operations"
@@ -63,32 +69,13 @@ interface TestRunOperations {
listTestRuns is LoadTestRun.listTestRuns;
@clientName("stopTestRun", "javascript,python,java,csharp,go")
stop is LoadTestRun.stop;
-}
-
-// NOTE: `LoadTestAdministrationClient` will contain all administration operations and `LoadTestRunClient` will contain all run based operations
-// A separate interface is made to just segregate the operations by resource type
-#suppress "@azure-tools/typespec-azure-core/use-standard-names" "Existing name"
-@client({
- name: "LoadTestAdministrationClient",
- service: Microsoft.LoadTestService,
-})
-interface TestProfileAdministrationOperations {
- createOrUpdateTestProfile is TestProfileAdministration.createOrUpdateTestProfile;
- deleteTestProfile is TestProfileAdministration.deleteTestProfile;
- getTestProfile is TestProfileAdministration.getTestProfile;
- listTestProfiles is TestProfileAdministration.listTestProfiles;
-}
-#suppress "@azure-tools/typespec-azure-core/use-standard-names" "Existing name"
-@client({
- name: "LoadTestRunClient",
- service: Microsoft.LoadTestService,
-})
-interface TestProfileRunOperations {
+ @clientName("BeginTestProfileRun", "python")
createOrUpdateTestProfileRun is TestProfileRunAdministration.createOrUpdateTestProfileRun;
deleteTestProfileRun is TestProfileRunAdministration.deleteTestProfileRun;
getTestProfileRun is TestProfileRunAdministration.getTestProfileRun;
listTestProfileRuns is TestProfileRunAdministration.listTestProfileRuns;
@clientName("stopTestProfileRun", "javascript,python,java,csharp,go")
- stop is TestProfileRunAdministration.stop;
+ @action("stop")
+ stopTestProfileRun is TestProfileRunAdministration.stop;
}
From c9a4dc04527f7fdb4a944e2c392f2de280ef7cae Mon Sep 17 00:00:00 2001
From: Bidisha Chakraborty <29803402+bidisha-c@users.noreply.github.com>
Date: Wed, 18 Dec 2024 10:27:28 -0800
Subject: [PATCH 030/128] [Bugfix]Update swagger for Conversations to match API
docs (#31914)
* [Bugfix]Update swagger for Conversations to match API docs
* missed
* one more missed
---------
Co-authored-by: Bidisha Chakraborty
---
.../Language.AnalyzeDocuments/main.tsp | 12 +-
.../models/summarization.tsp | 2 +-
.../Language.Conversations/models/pii.tsp | 19 +-
.../analyzeconversations.json | 38 +-
.../2024-11-15-preview/analyzedocuments.json | 551 +-----------------
.../2024-05-01/analyzeconversations.json | 38 +-
.../2024-11-01/analyzeconversations.json | 38 +-
7 files changed, 80 insertions(+), 618 deletions(-)
diff --git a/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp b/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp
index 818725dac06b..b364e636eb8c 100644
--- a/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeDocuments/main.tsp
@@ -18,10 +18,14 @@ using Azure.Core.Traits;
* The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction, language detection and question answering.
* Further documentation can be found in https://learn.microsoft.com/azure/cognitive-services/language-service/overview.0 */
@useAuth(
- TypeSpec.Http.ApiKeyAuth<
- TypeSpec.Http.ApiKeyLocation.header,
- "Ocp-Apim-Subscription-Key"
- >
+ ApiKeyAuth | OAuth2Auth<[
+ {
+ type: OAuth2FlowType.authorizationCode,
+ authorizationUrl: "https://login.microsoftonline.com/common/oauth2/authorize",
+ tokenUrl: "https://login.microsoftonline.com/common/oauth2/token",
+ scopes: ["https://cognitiveservices.azure.com/.default"],
+ }
+ ]>
)
@service({
title: "Microsoft Cognitive Language Service - Document Analysis",
diff --git a/specification/cognitiveservices/Language.AnalyzeDocuments/models/summarization.tsp b/specification/cognitiveservices/Language.AnalyzeDocuments/models/summarization.tsp
index 02e3eff5a47b..6f1f4aa9faeb 100644
--- a/specification/cognitiveservices/Language.AnalyzeDocuments/models/summarization.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeDocuments/models/summarization.tsp
@@ -131,7 +131,7 @@ model AbstractiveSummarizationLROResult extends AnalyzeDocumentsLROResult {
kind: AnalyzeDocumentsLROResultsKind.AbstractiveSummarizationLROResults;
/** Results of the task. */
- results: AbstractiveSummarizationResult;
+ results: AnalyzeDocumentsResult;
}
/** An object representing the summarization results of each document. */
diff --git a/specification/cognitiveservices/Language.Conversations/models/pii.tsp b/specification/cognitiveservices/Language.Conversations/models/pii.tsp
index ab7f04160bf4..b1e93516796b 100644
--- a/specification/cognitiveservices/Language.Conversations/models/pii.tsp
+++ b/specification/cognitiveservices/Language.Conversations/models/pii.tsp
@@ -184,8 +184,8 @@ union ConversationPiiCategories {
/** Address category */
Address: "Address",
- /** Credit card number category */
- CreditCardNumber: "CreditCardNumber",
+ /** Credit card category */
+ CreditCard: "CreditCard",
/** Email category */
Email: "Email",
@@ -196,15 +196,12 @@ union ConversationPiiCategories {
/** Numeric identifier category */
NumericIdentifier: "NumericIdentifier",
- /** Phone number category */
- PhoneNumber: "PhoneNumber",
+ /** Phone category */
+ Phone: "Phone",
/** US social security number category */
USSocialSecurityNumber: "USSocialSecurityNumber",
- /** Miscellaneous category */
- Miscellaneous: "Miscellaneous",
-
/** All categories */
All: "All",
@@ -220,8 +217,8 @@ union ConversationPiiCategoriesExclude {
/** Address category */
Address: "Address",
- /** Credit card number category */
- CreditCardNumber: "CreditCardNumber",
+ /** Credit card category */
+ CreditCard: "CreditCard",
/** Email category */
Email: "Email",
@@ -232,8 +229,8 @@ union ConversationPiiCategoriesExclude {
/** Numeric identifier category */
NumericIdentifier: "NumericIdentifier",
- /** Phone number category */
- PhoneNumber: "PhoneNumber",
+ /** Phone category */
+ Phone: "Phone",
/** US social security number category */
USSocialSecurityNumber: "USSocialSecurityNumber",
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json
index 0c16b41b59b7..8060af2f4943 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzeconversations.json
@@ -1432,13 +1432,12 @@
"description": "Describes the PII categories to return for detection. If not provided, 'default' categories will be returned which will vary with the language.",
"enum": [
"Address",
- "CreditCardNumber",
+ "CreditCard",
"Email",
"Person",
"NumericIdentifier",
- "PhoneNumber",
+ "Phone",
"USSocialSecurityNumber",
- "Miscellaneous",
"All",
"Default"
],
@@ -1452,9 +1451,9 @@
"description": "Address category"
},
{
- "name": "CreditCardNumber",
- "value": "CreditCardNumber",
- "description": "Credit card number category"
+ "name": "CreditCard",
+ "value": "CreditCard",
+ "description": "Credit card category"
},
{
"name": "Email",
@@ -1472,20 +1471,15 @@
"description": "Numeric identifier category"
},
{
- "name": "PhoneNumber",
- "value": "PhoneNumber",
- "description": "Phone number category"
+ "name": "Phone",
+ "value": "Phone",
+ "description": "Phone category"
},
{
"name": "USSocialSecurityNumber",
"value": "USSocialSecurityNumber",
"description": "US social security number category"
},
- {
- "name": "Miscellaneous",
- "value": "Miscellaneous",
- "description": "Miscellaneous category"
- },
{
"name": "All",
"value": "All",
@@ -1504,11 +1498,11 @@
"description": "Describes the PII categories to exclude for detection. If not provided, 'default' categories will be returned which will vary with the language.",
"enum": [
"Address",
- "CreditCardNumber",
+ "CreditCard",
"Email",
"Person",
"NumericIdentifier",
- "PhoneNumber",
+ "Phone",
"USSocialSecurityNumber"
],
"x-ms-enum": {
@@ -1521,9 +1515,9 @@
"description": "Address category"
},
{
- "name": "CreditCardNumber",
- "value": "CreditCardNumber",
- "description": "Credit card number category"
+ "name": "CreditCard",
+ "value": "CreditCard",
+ "description": "Credit card category"
},
{
"name": "Email",
@@ -1541,9 +1535,9 @@
"description": "Numeric identifier category"
},
{
- "name": "PhoneNumber",
- "value": "PhoneNumber",
- "description": "Phone number category"
+ "name": "Phone",
+ "value": "Phone",
+ "description": "Phone category"
},
{
"name": "USSocialSecurityNumber",
diff --git a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json
index d93c33086797..d18d686c0c56 100644
--- a/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json
+++ b/specification/cognitiveservices/data-plane/Language/preview/2024-11-15-preview/analyzedocuments.json
@@ -35,6 +35,11 @@
"security": [
{
"ApiKeyAuth": []
+ },
+ {
+ "OAuth2Auth": [
+ "https://cognitiveservices.azure.com/.default"
+ ]
}
],
"securityDefinitions": {
@@ -42,6 +47,15 @@
"type": "apiKey",
"name": "Ocp-Apim-Subscription-Key",
"in": "header"
+ },
+ "OAuth2Auth": {
+ "type": "oauth2",
+ "flow": "accessCode",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "https://cognitiveservices.azure.com/.default": ""
+ },
+ "tokenUrl": "https://login.microsoftonline.com/common/oauth2/token"
}
},
"tags": [],
@@ -221,7 +235,7 @@
"description": "An object representing the results for an Abstractive Summarization task.",
"properties": {
"results": {
- "$ref": "#/definitions/AbstractiveSummarizationResult",
+ "$ref": "#/definitions/AnalyzeDocumentsResult",
"description": "Results of the task."
}
},
@@ -254,39 +268,6 @@
],
"x-ms-discriminator-value": "AbstractiveSummarization"
},
- "AbstractiveSummarizationResult": {
- "type": "object",
- "description": "An object representing the pre-built Abstractive Summarization results of each document.",
- "properties": {
- "errors": {
- "type": "array",
- "description": "Errors by document id.",
- "items": {
- "$ref": "#/definitions/DocumentError"
- }
- },
- "statistics": {
- "$ref": "#/definitions/RequestStatistics",
- "description": "if showStats=true was specified in the request this field will contain information about the request payload."
- },
- "modelVersion": {
- "type": "string",
- "description": "This field indicates which model is used for scoring."
- },
- "documents": {
- "type": "array",
- "description": "Response by document",
- "items": {
- "$ref": "#/definitions/AbstractiveSummaryDocumentResultWithDetectedLanguage"
- }
- }
- },
- "required": [
- "errors",
- "modelVersion",
- "documents"
- ]
- },
"AbstractiveSummarizationTaskParameters": {
"type": "object",
"description": "Supported parameters for the pre-built Abstractive Summarization task.",
@@ -347,66 +328,6 @@
}
}
},
- "AbstractiveSummary": {
- "type": "object",
- "description": "An object representing a single summary with context for given document.",
- "properties": {
- "text": {
- "type": "string",
- "description": "The text of the summary."
- },
- "contexts": {
- "type": "array",
- "description": "The context list of the summary.",
- "items": {
- "$ref": "#/definitions/SummaryContext"
- },
- "x-ms-identifiers": []
- }
- },
- "required": [
- "text"
- ]
- },
- "AbstractiveSummaryDocumentResultWithDetectedLanguage": {
- "type": "object",
- "description": "An object representing the Abstractive Summarization result of a single document with detected language.",
- "properties": {
- "id": {
- "type": "string",
- "description": "Unique, non-empty document identifier."
- },
- "warnings": {
- "type": "array",
- "description": "Warnings encountered while processing document.",
- "items": {
- "$ref": "#/definitions/DocumentWarning"
- },
- "x-ms-identifiers": []
- },
- "statistics": {
- "$ref": "#/definitions/DocumentStatistics",
- "description": "if showStats=true was specified in the request this field will contain information about the document payload."
- },
- "summaries": {
- "type": "array",
- "description": "A list of abstractive summaries.",
- "items": {
- "$ref": "#/definitions/AbstractiveSummary"
- },
- "x-ms-identifiers": []
- },
- "detectedLanguage": {
- "$ref": "#/definitions/DetectedLanguage",
- "description": "If 'language' is set to 'auto' for the document in the request this field will contain a 2 letter ISO 639-1 representation of the language detected for this document."
- }
- },
- "required": [
- "id",
- "warnings",
- "summaries"
- ]
- },
"AnalyzeDocumentJobsInput": {
"type": "object",
"description": "The input object for the analyze documents LRO.",
@@ -807,38 +728,6 @@
],
"x-ms-discriminator-value": "characterMask"
},
- "DetectedLanguage": {
- "type": "object",
- "description": "Contains the details of the detected language for the text.",
- "properties": {
- "name": {
- "type": "string",
- "description": "Long name of a detected language (e.g. English, French)."
- },
- "iso6391Name": {
- "type": "string",
- "description": "A two letter representation of the detected language according to the ISO 639-1 standard (e.g. en, fr)."
- },
- "confidenceScore": {
- "type": "number",
- "format": "double",
- "description": "A confidence score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true."
- },
- "script": {
- "$ref": "#/definitions/ScriptKind",
- "description": "Identifies the script of the input document."
- },
- "scriptCode": {
- "$ref": "#/definitions/ScriptCode",
- "description": "Identifies the script of the input document."
- }
- },
- "required": [
- "name",
- "iso6391Name",
- "confidenceScore"
- ]
- },
"DocumentAnalysisDocumentResult": {
"type": "object",
"description": "Contains the result object for the processed document.",
@@ -879,24 +768,6 @@
"target"
]
},
- "DocumentError": {
- "type": "object",
- "description": "Contains details of errors encountered during a job execution.",
- "properties": {
- "id": {
- "type": "string",
- "description": "The ID of the input document."
- },
- "error": {
- "$ref": "#/definitions/Error",
- "description": "Error encountered."
- }
- },
- "required": [
- "id",
- "error"
- ]
- },
"DocumentLocation": {
"type": "object",
"description": "Contains the location of the document.",
@@ -3723,378 +3594,6 @@
"transactionsCount"
]
},
- "ScriptCode": {
- "type": "string",
- "description": "Identifies the script of the input document. Maps to the ISO 15924 standard script code.",
- "enum": [
- "Arab",
- "Armn",
- "Beng",
- "Cans",
- "Cyrl",
- "Deva",
- "Ethi",
- "Geor",
- "Grek",
- "Gujr",
- "Guru",
- "Hang",
- "Hans",
- "Hant",
- "Hebr",
- "Jpan",
- "Khmr",
- "Knda",
- "Laoo",
- "Latn",
- "Mlym",
- "Mymr",
- "Orya",
- "Sinh",
- "Taml",
- "Telu",
- "Thaa",
- "Thai",
- "Tibt"
- ],
- "x-ms-enum": {
- "name": "ScriptCode",
- "modelAsString": true,
- "values": [
- {
- "name": "Arab",
- "value": "Arab",
- "description": "Script code for the Arabic script."
- },
- {
- "name": "Armn",
- "value": "Armn",
- "description": "Script code for the Armenian script."
- },
- {
- "name": "Beng",
- "value": "Beng",
- "description": "Script code for the Bangla script."
- },
- {
- "name": "Cans",
- "value": "Cans",
- "description": "Script code for the UnifiedCanadianAboriginalSyllabics script."
- },
- {
- "name": "Cyrl",
- "value": "Cyrl",
- "description": "Script code for the Cyrillic script."
- },
- {
- "name": "Deva",
- "value": "Deva",
- "description": "Script code for the Devanagari script."
- },
- {
- "name": "Ethi",
- "value": "Ethi",
- "description": "Script code for the Ethiopic script."
- },
- {
- "name": "Geor",
- "value": "Geor",
- "description": "Script code for the Georgian script."
- },
- {
- "name": "Grek",
- "value": "Grek",
- "description": "Script code for the Greek script."
- },
- {
- "name": "Gujr",
- "value": "Gujr",
- "description": "Script code for the Gujarati script."
- },
- {
- "name": "Guru",
- "value": "Guru",
- "description": "Script code for the Gurmukhi script."
- },
- {
- "name": "Hang",
- "value": "Hang",
- "description": "Script code for the Hangul script."
- },
- {
- "name": "Hans",
- "value": "Hans",
- "description": "Script code for the HanSimplified script."
- },
- {
- "name": "Hant",
- "value": "Hant",
- "description": "Script code for the HanTraditional script."
- },
- {
- "name": "Hebr",
- "value": "Hebr",
- "description": "Script code for the Hebrew script."
- },
- {
- "name": "Jpan",
- "value": "Jpan",
- "description": "Script code for the Japanese script."
- },
- {
- "name": "Khmr",
- "value": "Khmr",
- "description": "Script code for the Khmer script."
- },
- {
- "name": "Knda",
- "value": "Knda",
- "description": "Script code for the Kannada script."
- },
- {
- "name": "Laoo",
- "value": "Laoo",
- "description": "Script code for the Lao script."
- },
- {
- "name": "Latn",
- "value": "Latn",
- "description": "Script code for the Latin script."
- },
- {
- "name": "Mlym",
- "value": "Mlym",
- "description": "Script code for the Malayalam script."
- },
- {
- "name": "Mymr",
- "value": "Mymr",
- "description": "Script code for the Myanmar script."
- },
- {
- "name": "Orya",
- "value": "Orya",
- "description": "Script code for the Odia script."
- },
- {
- "name": "Sinh",
- "value": "Sinh",
- "description": "Script code for the Sinhala script."
- },
- {
- "name": "Taml",
- "value": "Taml",
- "description": "Script code for the Tamil script."
- },
- {
- "name": "Telu",
- "value": "Telu",
- "description": "Script code for the Telugu script."
- },
- {
- "name": "Thaa",
- "value": "Thaa",
- "description": "Script code for the Thaana script."
- },
- {
- "name": "Thai",
- "value": "Thai",
- "description": "Script code for the Thai script."
- },
- {
- "name": "Tibt",
- "value": "Tibt",
- "description": "Script code for the Tibetan script."
- }
- ]
- }
- },
- "ScriptKind": {
- "type": "string",
- "description": "The script of the text.",
- "enum": [
- "Arabic",
- "Armenian",
- "Bangla",
- "UnifiedCanadianAboriginalSyllabics",
- "Cyrillic",
- "Devanagari",
- "Ethiopic",
- "Georgian",
- "Greek",
- "Gujarati",
- "Gurmukhi",
- "Hangul",
- "HanSimplified",
- "HanTraditional",
- "Hebrew",
- "Japanese",
- "Khmer",
- "Kannada",
- "Lao",
- "Latin",
- "Malayalam",
- "Myanmar",
- "Odia",
- "Sinhala",
- "Tamil",
- "Telugu",
- "Thaana",
- "Thai",
- "Tibetan"
- ],
- "x-ms-enum": {
- "name": "ScriptKind",
- "modelAsString": true,
- "values": [
- {
- "name": "Arabic",
- "value": "Arabic",
- "description": "Script name for the Arabic script."
- },
- {
- "name": "Armenian",
- "value": "Armenian",
- "description": "Script name for the Armenian script."
- },
- {
- "name": "Bangla",
- "value": "Bangla",
- "description": "Script name for the Bangla script."
- },
- {
- "name": "UnifiedCanadianAboriginalSyllabics",
- "value": "UnifiedCanadianAboriginalSyllabics",
- "description": "Script name for the UnifiedCanadianAboriginalSyllabics script."
- },
- {
- "name": "Cyrillic",
- "value": "Cyrillic",
- "description": "Script name for the Cyrillic script."
- },
- {
- "name": "Devanagari",
- "value": "Devanagari",
- "description": "Script name for the Devanagari script."
- },
- {
- "name": "Ethiopic",
- "value": "Ethiopic",
- "description": "Script name for the Ethiopic script."
- },
- {
- "name": "Georgian",
- "value": "Georgian",
- "description": "Script name for the Georgian script."
- },
- {
- "name": "Greek",
- "value": "Greek",
- "description": "Script name for the Greek script."
- },
- {
- "name": "Gujarati",
- "value": "Gujarati",
- "description": "Script name for the Gujarati script."
- },
- {
- "name": "Gurmukhi",
- "value": "Gurmukhi",
- "description": "Script name for the Gurmukhi script."
- },
- {
- "name": "Hangul",
- "value": "Hangul",
- "description": "Script name for the Hangul script."
- },
- {
- "name": "HanSimplified",
- "value": "HanSimplified",
- "description": "Script name for the HanSimplified script."
- },
- {
- "name": "HanTraditional",
- "value": "HanTraditional",
- "description": "Script name for the HanTraditional script."
- },
- {
- "name": "Hebrew",
- "value": "Hebrew",
- "description": "Script name for the Hebrew script."
- },
- {
- "name": "Japanese",
- "value": "Japanese",
- "description": "Script name for the Japanese script."
- },
- {
- "name": "Khmer",
- "value": "Khmer",
- "description": "Script name for the Khmer script."
- },
- {
- "name": "Kannada",
- "value": "Kannada",
- "description": "Script name for the Kannada script."
- },
- {
- "name": "Lao",
- "value": "Lao",
- "description": "Script name for the Lao script."
- },
- {
- "name": "Latin",
- "value": "Latin",
- "description": "Script name for the Latin script."
- },
- {
- "name": "Malayalam",
- "value": "Malayalam",
- "description": "Script name for the Malayalam script."
- },
- {
- "name": "Myanmar",
- "value": "Myanmar",
- "description": "Script name for the Myanmar script."
- },
- {
- "name": "Odia",
- "value": "Odia",
- "description": "Script name for the Odia script."
- },
- {
- "name": "Sinhala",
- "value": "Sinhala",
- "description": "Script name for the Sinhala script."
- },
- {
- "name": "Tamil",
- "value": "Tamil",
- "description": "Script name for the Tamil script."
- },
- {
- "name": "Telugu",
- "value": "Telugu",
- "description": "Script name for the Telugu script."
- },
- {
- "name": "Thaana",
- "value": "Thaana",
- "description": "Script name for the Thaana script."
- },
- {
- "name": "Thai",
- "value": "Thai",
- "description": "Script name for the Thai script."
- },
- {
- "name": "Tibetan",
- "value": "Tibetan",
- "description": "Script name for the Tibetan script."
- }
- ]
- }
- },
"State": {
"type": "string",
"description": "The status of the task at the mentioned last update time.",
@@ -4149,26 +3648,6 @@
]
}
},
- "SummaryContext": {
- "type": "object",
- "description": "The context of the summary.",
- "properties": {
- "offset": {
- "type": "integer",
- "format": "int32",
- "description": "Start position for the context. Use of different 'stringIndexType' values can affect the offset returned."
- },
- "length": {
- "type": "integer",
- "format": "int32",
- "description": "The length of the context. Use of different 'stringIndexType' values can affect the length returned."
- }
- },
- "required": [
- "offset",
- "length"
- ]
- },
"SummaryLengthBucket": {
"type": "string",
"description": "Enum that defines the length of the output summaries.",
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json
index 384f25ae3be5..fa2c4709ea2a 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2024-05-01/analyzeconversations.json
@@ -1211,13 +1211,12 @@
"description": "Describes the PII categories to return for detection. If not provided, 'default' categories will be returned which will vary with the language.",
"enum": [
"Address",
- "CreditCardNumber",
+ "CreditCard",
"Email",
"Person",
"NumericIdentifier",
- "PhoneNumber",
+ "Phone",
"USSocialSecurityNumber",
- "Miscellaneous",
"All",
"Default"
],
@@ -1231,9 +1230,9 @@
"description": "Address category"
},
{
- "name": "CreditCardNumber",
- "value": "CreditCardNumber",
- "description": "Credit card number category"
+ "name": "CreditCard",
+ "value": "CreditCard",
+ "description": "Credit card category"
},
{
"name": "Email",
@@ -1251,20 +1250,15 @@
"description": "Numeric identifier category"
},
{
- "name": "PhoneNumber",
- "value": "PhoneNumber",
- "description": "Phone number category"
+ "name": "Phone",
+ "value": "Phone",
+ "description": "Phone category"
},
{
"name": "USSocialSecurityNumber",
"value": "USSocialSecurityNumber",
"description": "US social security number category"
},
- {
- "name": "Miscellaneous",
- "value": "Miscellaneous",
- "description": "Miscellaneous category"
- },
{
"name": "All",
"value": "All",
@@ -1283,11 +1277,11 @@
"description": "Describes the PII categories to exclude for detection. If not provided, 'default' categories will be returned which will vary with the language.",
"enum": [
"Address",
- "CreditCardNumber",
+ "CreditCard",
"Email",
"Person",
"NumericIdentifier",
- "PhoneNumber",
+ "Phone",
"USSocialSecurityNumber"
],
"x-ms-enum": {
@@ -1300,9 +1294,9 @@
"description": "Address category"
},
{
- "name": "CreditCardNumber",
- "value": "CreditCardNumber",
- "description": "Credit card number category"
+ "name": "CreditCard",
+ "value": "CreditCard",
+ "description": "Credit card category"
},
{
"name": "Email",
@@ -1320,9 +1314,9 @@
"description": "Numeric identifier category"
},
{
- "name": "PhoneNumber",
- "value": "PhoneNumber",
- "description": "Phone number category"
+ "name": "Phone",
+ "value": "Phone",
+ "description": "Phone category"
},
{
"name": "USSocialSecurityNumber",
diff --git a/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json b/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json
index 6860cdb8f652..8ce8a6460e62 100644
--- a/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json
+++ b/specification/cognitiveservices/data-plane/Language/stable/2024-11-01/analyzeconversations.json
@@ -1211,13 +1211,12 @@
"description": "Describes the PII categories to return for detection. If not provided, 'default' categories will be returned which will vary with the language.",
"enum": [
"Address",
- "CreditCardNumber",
+ "CreditCard",
"Email",
"Person",
"NumericIdentifier",
- "PhoneNumber",
+ "Phone",
"USSocialSecurityNumber",
- "Miscellaneous",
"All",
"Default"
],
@@ -1231,9 +1230,9 @@
"description": "Address category"
},
{
- "name": "CreditCardNumber",
- "value": "CreditCardNumber",
- "description": "Credit card number category"
+ "name": "CreditCard",
+ "value": "CreditCard",
+ "description": "Credit card category"
},
{
"name": "Email",
@@ -1251,20 +1250,15 @@
"description": "Numeric identifier category"
},
{
- "name": "PhoneNumber",
- "value": "PhoneNumber",
- "description": "Phone number category"
+ "name": "Phone",
+ "value": "Phone",
+ "description": "Phone category"
},
{
"name": "USSocialSecurityNumber",
"value": "USSocialSecurityNumber",
"description": "US social security number category"
},
- {
- "name": "Miscellaneous",
- "value": "Miscellaneous",
- "description": "Miscellaneous category"
- },
{
"name": "All",
"value": "All",
@@ -1283,11 +1277,11 @@
"description": "Describes the PII categories to exclude for detection. If not provided, 'default' categories will be returned which will vary with the language.",
"enum": [
"Address",
- "CreditCardNumber",
+ "CreditCard",
"Email",
"Person",
"NumericIdentifier",
- "PhoneNumber",
+ "Phone",
"USSocialSecurityNumber"
],
"x-ms-enum": {
@@ -1300,9 +1294,9 @@
"description": "Address category"
},
{
- "name": "CreditCardNumber",
- "value": "CreditCardNumber",
- "description": "Credit card number category"
+ "name": "CreditCard",
+ "value": "CreditCard",
+ "description": "Credit card category"
},
{
"name": "Email",
@@ -1320,9 +1314,9 @@
"description": "Numeric identifier category"
},
{
- "name": "PhoneNumber",
- "value": "PhoneNumber",
- "description": "Phone number category"
+ "name": "Phone",
+ "value": "Phone",
+ "description": "Phone category"
},
{
"name": "USSocialSecurityNumber",
From 96c44f99e15d99f1ae43a793f1845f912f664964 Mon Sep 17 00:00:00 2001
From: ZiWei Chen <98569699+kazrael2119@users.noreply.github.com>
Date: Thu, 19 Dec 2024 11:24:47 +0800
Subject: [PATCH 031/128] Update tsp config for Dec release (#31874)
* Update tsp config for Dec release
* update
* Update tspconfig.yaml
---
.../deviceregistry/DeviceRegistry.Management/client.tsp | 4 ++++
.../deviceregistry/DeviceRegistry.Management/tspconfig.yaml | 1 +
.../durabletask/DurableTask.Management/tspconfig.yaml | 1 +
.../iotoperations/IoTOperations.Management/tspconfig.yaml | 1 +
.../PlaywrightTesting.Management/tspconfig.yaml | 1 +
5 files changed, 8 insertions(+)
diff --git a/specification/deviceregistry/DeviceRegistry.Management/client.tsp b/specification/deviceregistry/DeviceRegistry.Management/client.tsp
index 7eca65bd94e7..4517400f008f 100644
--- a/specification/deviceregistry/DeviceRegistry.Management/client.tsp
+++ b/specification/deviceregistry/DeviceRegistry.Management/client.tsp
@@ -12,3 +12,7 @@ using Azure.ClientGenerator.Core;
"DeviceRegistryManagementClient",
"java"
);
+@@clientName(Microsoft.DeviceRegistry,
+ "DeviceRegistryManagementClient",
+ "javascript"
+);
diff --git a/specification/deviceregistry/DeviceRegistry.Management/tspconfig.yaml b/specification/deviceregistry/DeviceRegistry.Management/tspconfig.yaml
index 7801cdcb63a8..c009ec4498ea 100644
--- a/specification/deviceregistry/DeviceRegistry.Management/tspconfig.yaml
+++ b/specification/deviceregistry/DeviceRegistry.Management/tspconfig.yaml
@@ -25,6 +25,7 @@ options:
hierarchyClient: false
experimentalExtensibleEnums: true
enableOperationGroup: true
+ generateSample: true
package-dir: "arm-deviceregistry"
flavor: "azure"
packageDetails:
diff --git a/specification/durabletask/DurableTask.Management/tspconfig.yaml b/specification/durabletask/DurableTask.Management/tspconfig.yaml
index 595151f8e601..6f70b711e1bf 100644
--- a/specification/durabletask/DurableTask.Management/tspconfig.yaml
+++ b/specification/durabletask/DurableTask.Management/tspconfig.yaml
@@ -42,6 +42,7 @@ options:
hierarchyClient: false
experimentalExtensibleEnums: true
enableOperationGroup: true
+ generateSample: true
package-dir: "arm-durabletask"
flavor: "azure"
packageDetails:
diff --git a/specification/iotoperations/IoTOperations.Management/tspconfig.yaml b/specification/iotoperations/IoTOperations.Management/tspconfig.yaml
index 6d48d9c63993..5981988e6647 100644
--- a/specification/iotoperations/IoTOperations.Management/tspconfig.yaml
+++ b/specification/iotoperations/IoTOperations.Management/tspconfig.yaml
@@ -33,6 +33,7 @@ options:
hierarchyClient: false
experimentalExtensibleEnums: true
enableOperationGroup: true
+ generateSample: true
package-dir: "arm-iotoperations"
flavor: "azure"
packageDetails:
diff --git a/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml b/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml
index e48aa3ed79e7..1ed66506307c 100644
--- a/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml
+++ b/specification/playwrighttesting/PlaywrightTesting.Management/tspconfig.yaml
@@ -32,6 +32,7 @@ options:
hierarchyClient: false
experimentalExtensibleEnums: true
enableOperationGroup: true
+ generateSample: true
package-dir: "arm-playwrighttesting"
flavor: "azure"
packageDetails:
From f8ece47e1ce7bb262b470c15fcee32059e658532 Mon Sep 17 00:00:00 2001
From: will
Date: Thu, 19 Dec 2024 15:40:53 +0800
Subject: [PATCH 032/128] update (#31928)
Co-authored-by: Will Huang
---
.../data-plane/Route/preview/2024-07-01-preview/route.json | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json b/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json
index f876a56480d3..f092fb1dc557 100644
--- a/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json
+++ b/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json
@@ -144,8 +144,8 @@
},
"/route/directions:batch": {
"post": {
- "summary": "Use to send a batch of queries to the [Route Directions](/rest/api/maps/route/post-directions?view=rest-maps-2023-10-01-preview) API in a single synchronous request.",
- "description": "\n\n\nThe `Route Directions Batch` API is an HTTP `POST` request that sends batches of up to **100** queries in a single call to the [Route Directions](/rest/api/maps/route/post-directions?view=rest-maps-2023-10-01-preview) API.\n>[!Important]\n>By using this feature, you agree to the preview legal terms. See the [Preview Supplemental Terms](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) for additional details.\n\n### Submit Synchronous Batch Request\nThe Synchronous API is recommended for lightweight batch requests. When the service receives a request, it will respond as soon as the batch items are calculated and there will be no possibility to retrieve the results later. The Synchronous API will return a timeout error (a 408 response) if the request takes longer than 60 seconds. The number of batch items is limited to **100** for this API.\n```\nPOST https://atlas.microsoft.com/route/directions:batch?api-version=2023-10-01-preview\n```\n### POST Body for Batch Request\nTo send the _directions_ queries you will use a `POST` request where the request body will contain the `batchItems` array in `json` format and the `Content-Type` header will be set to `application/json`. Here's a sample request body containing 2 _directions_ queries:\n\n\n```\n{\n \"batchItems\": [\n {\n \"optionalId\": \"bbc9c0f6-ab52-49d8-a788-a658fa654c94\",\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.3368,\n 47.614988\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 0,\n \"pointType\": \"waypoint\"\n }\n },\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.316067,\n 47.606356\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 1,\n \"pointType\": \"waypoint\"\n }\n }\n ],\n \"optimizeRoute\": \"fastestWithoutTraffic\",\n \"routeOutputOptions\": [\n \"routeSummary\"\n ],\n \"maxRouteCount\": 3,\n \"travelMode\": \"driving\"\n },\n {\n \"optionalId\": \"a191de3c-1268-4986-98f0-03f0a5d9302a\",\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.3368,\n 47.614988\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 0,\n \"pointType\": \"waypoint\"\n }\n },\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.316067,\n 47.606356\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 1,\n \"pointType\": \"waypoint\"\n }\n }\n ],\n \"optimizeRoute\": \"shortest\",\n \"routeOutputOptions\": [\n \"routeSummary\"\n ],\n \"maxRouteCount\": 2,\n \"travelMode\": \"driving\"\n }\n ]\n}\n ```\n\nA _directions_ batchItem object can accept any of the supported _directions_ [Request body](/rest/api/maps/route/post-directions?view=rest-maps-2023-10-01-preview#request-body) \n\n\nThe batch should contain at least **1** query.\n\n\n### Batch Response Model\nThe batch response contains a `summary` component that indicates the `totalRequests` that were part of the original batch request and `successfulRequests` i.e. queries which were executed successfully. The batch response also includes a `batchItems` array which contains a response for each and every query in the batch request. The `batchItems` will contain the results in the exact same order the original queries were sent in the batch request. Each item is of one of the following types:\n\n - [`DirectionsResponse`](/rest/api/maps/route/post-directions#response) - If the query completed successfully.\n\n - `Error` - If the query failed. The response will contain a `code` and a `message` in this case.\n\n\n",
+ "summary": "Use to send a batch of queries to the [Route Directions](/rest/api/maps/route/post-route-directions?view=rest-maps-2024-07-01-preview) API in a single synchronous request.",
+ "description": "\n\n\nThe `Route Directions Batch` API is an HTTP `POST` request that sends batches of up to **100** queries in a single call to the [Route Directions](/rest/api/maps/route/post-route-directions?view=rest-maps-2024-07-01-preview) API.\n>[!Important]\n>By using this feature, you agree to the preview legal terms. See the [Preview Supplemental Terms](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) for additional details.\n\n### Submit Synchronous Batch Request\nThe Synchronous API is recommended for lightweight batch requests. When the service receives a request, it will respond as soon as the batch items are calculated and there will be no possibility to retrieve the results later. The Synchronous API will return a timeout error (a 408 response) if the request takes longer than 60 seconds. The number of batch items is limited to **100** for this API.\n```\nPOST https://atlas.microsoft.com/route/directions:batch?api-version=2024-07-01-preview\n```\n### POST Body for Batch Request\nTo send the _directions_ queries you will use a `POST` request where the request body will contain the `batchItems` array in `json` format and the `Content-Type` header will be set to `application/json`. Here's a sample request body containing 2 _directions_ queries:\n\n\n```\n{\n \"batchItems\": [\n {\n \"optionalId\": \"bbc9c0f6-ab52-49d8-a788-a658fa654c94\",\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.3368,\n 47.614988\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 0,\n \"pointType\": \"waypoint\"\n }\n },\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.316067,\n 47.606356\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 1,\n \"pointType\": \"waypoint\"\n }\n }\n ],\n \"optimizeRoute\": \"fastestWithoutTraffic\",\n \"routeOutputOptions\": [\n \"routeSummary\"\n ],\n \"maxRouteCount\": 3,\n \"travelMode\": \"driving\"\n },\n {\n \"optionalId\": \"a191de3c-1268-4986-98f0-03f0a5d9302a\",\n \"type\": \"FeatureCollection\",\n \"features\": [\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.3368,\n 47.614988\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 0,\n \"pointType\": \"waypoint\"\n }\n },\n {\n \"type\": \"Feature\",\n \"geometry\": {\n \"coordinates\": [\n -122.316067,\n 47.606356\n ],\n \"type\": \"Point\"\n },\n \"properties\": {\n \"pointIndex\": 1,\n \"pointType\": \"waypoint\"\n }\n }\n ],\n \"optimizeRoute\": \"shortest\",\n \"routeOutputOptions\": [\n \"routeSummary\"\n ],\n \"maxRouteCount\": 2,\n \"travelMode\": \"driving\"\n }\n ]\n}\n ```\n\nA _directions_ batchItem object can accept any of the supported _directions_ [Request body](/rest/api/maps/route/post-route-directions?view=rest-maps-2024-07-01-preview#request-body) \n\n\nThe batch should contain at least **1** query.\n\n\n### Batch Response Model\nThe batch response contains a `summary` component that indicates the `totalRequests` that were part of the original batch request and `successfulRequests` i.e. queries which were executed successfully. The batch response also includes a `batchItems` array which contains a response for each and every query in the batch request. The `batchItems` will contain the results in the exact same order the original queries were sent in the batch request. Each item is of one of the following types:\n\n - [`DirectionsResponse`](/rest/api/maps/route/post-directions#response) - If the query completed successfully.\n\n - `Error` - If the query failed. The response will contain a `code` and a `message` in this case.\n\n\n",
"operationId": "Route_PostRouteDirectionsBatch",
"consumes": [
"application/json"
From 7b50550385b9469889c528155a076d995146fdd0 Mon Sep 17 00:00:00 2001
From: Ajay verma
Date: Thu, 19 Dec 2024 14:53:32 +0530
Subject: [PATCH 033/128] Added missing csharp options in tspconfig.yaml for
Qumulo (#31921)
* Added missing csharp options in tspconfig.yaml for Qumulo
* Fixed the service directory config
* Fixed the service directory config
* refactor
---------
Co-authored-by: Ajay Verma
---
.../liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml b/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml
index 55afadaca3a5..523721dd803e 100644
--- a/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml
+++ b/specification/liftrqumulo/Qumulo.Storage.Management/tspconfig.yaml
@@ -24,6 +24,12 @@ options:
flavor: "azure"
packageDetails:
name: "@azure/arm-qumulo"
+ "@azure-tools/typespec-csharp":
+ package-dir: "Azure.ResourceManager.Qumulo"
+ service-dir: "sdk/qumulo"
+ flavor: azure
+ clear-output-folder: true
+ namespace: "{package-dir}"
"@azure-tools/typespec-python":
package-dir: "azure-mgmt-qumulo"
package-name: "{package-dir}"
From c335551e028d88eccf20a474944392438136bebc Mon Sep 17 00:00:00 2001
From: Mike Harder
Date: Thu, 19 Dec 2024 01:44:31 -0800
Subject: [PATCH 034/128] [Actions] Upgrade to Node 22 (#31930)
---
.github/actions/setup-node-npm-ci/action.yaml | 2 +-
.github/workflows/_reusable-eng-tools-test.yaml | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/actions/setup-node-npm-ci/action.yaml b/.github/actions/setup-node-npm-ci/action.yaml
index 816f66466838..9287062190cf 100644
--- a/.github/actions/setup-node-npm-ci/action.yaml
+++ b/.github/actions/setup-node-npm-ci/action.yaml
@@ -4,7 +4,7 @@ description: Uses specified Node version and runs npm commands to set up the env
inputs:
node-version:
description: 'Node version to use'
- default: 20.x
+ default: 22.x
runs:
using: "composite"
diff --git a/.github/workflows/_reusable-eng-tools-test.yaml b/.github/workflows/_reusable-eng-tools-test.yaml
index 71125c4724bb..45344c1b00f3 100644
--- a/.github/workflows/_reusable-eng-tools-test.yaml
+++ b/.github/workflows/_reusable-eng-tools-test.yaml
@@ -25,10 +25,10 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
- node-version: [18, 20]
+ node-version: [18, 22]
exclude:
- os: ubuntu-latest
- node-version: 20
+ node-version: 22
- os: windows-latest
node-version: 18
From d7d8b18fbf5ca2335decea897117c7b837467c9b Mon Sep 17 00:00:00 2001
From: tejasm-microsoft <137446850+tejasm-microsoft@users.noreply.github.com>
Date: Thu, 19 Dec 2024 10:43:17 -0500
Subject: [PATCH 035/128] Group quota public preview 12 18 preview (#31924)
* Copy files from preview/2024-10-15-preview
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to preview/2024-12-18-preview
Updated the API version from preview/2024-10-15-preview to preview/2024-12-18-preview.
* Added tag for 2024-12-18-preview in readme file
* removes the billing and service tree Id and removes enforcement functionality
* addresses Model issue and prettier issue
* runs prettier write on other files
* modifies readme to have correct preview tag
* missed one tag
---
.../examples/GetOperations.json | 157 ++
.../ListGroupQuotaLimits-Compute.json | 70 +
.../GroupQuotaLimitsRequests_Get.json | 34 +
.../GroupQuotaLimitsRequests_List.json | 62 +
...PatchGroupQuotaLimitsRequests-Compute.json | 97 +
.../GroupQuotas/DeleteGroupQuotas.json | 19 +
.../examples/GroupQuotas/GetGroupQuotas.json | 21 +
.../GroupQuotas/GetGroupQuotasList.json | 25 +
.../GroupQuotas/PatchGroupQuotas.json | 34 +
.../examples/GroupQuotas/PutGroupQuotas.json | 42 +
.../DeleteGroupQuotaSubscriptions.json | 20 +
.../GetGroupQuotaSubscriptions.json | 22 +
.../ListGroupQuotaSubscriptions.json | 35 +
.../PatchGroupQuotasSubscription.json | 33 +
.../PutGroupQuotasSubscription.json | 38 +
...scriptionQuotaAllocation_List-Compute.json | 49 +
...riptionQuotaAllocationRequest-Compute.json | 74 +
...onQuotaAllocationRequests_Get-Compute.json | 36 +
...nQuotaAllocationRequests_List-Compute.json | 40 +
.../SubscriptionRequests_Get.json | 23 +
.../SubscriptionRequests_List.json | 27 +
.../examples/getComputeOneSkuQuotaLimit.json | 29 +
.../examples/getComputeOneSkuUsages.json | 28 +
.../examples/getComputeQuotaLimits.json | 219 ++
.../examples/getComputeUsages.json | 207 ++
...getMachineLearningServicesQuotaLimits.json | 48 +
.../getMachineLearningServicesUsages.json | 46 +
.../examples/getNetworkOneSkuQuotaLimit.json | 29 +
.../examples/getNetworkOneSkuUsages.json | 28 +
.../examples/getNetworkQuotaLimits.json | 699 ++++++
.../examples/getNetworkUsages.json | 372 ++++
.../examples/getQuotaRequestStatusById.json | 36 +
.../examples/getQuotaRequestStatusFailed.json | 40 +
.../getQuotaRequestStatusInProgress.json | 49 +
.../examples/getQuotaRequestsHistory.json | 94 +
.../examples/patchComputeQuotaRequest.json | 46 +
.../patchNetworkOneSkuQuotaRequest.json | 47 +
.../putComputeOneSkuQuotaRequest.json | 45 +
...arningServicesQuotaRequestLowPriority.json | 47 +
.../putNetworkOneSkuQuotaRequest.json | 47 +
...taRequestStandardSkuPublicIpAddresses.json | 47 +
.../2024-12-18-preview/groupquota.json | 1962 +++++++++++++++++
.../preview/2024-12-18-preview/quota.json | 1299 +++++++++++
.../quota/resource-manager/readme.md | 12 +-
44 files changed, 6433 insertions(+), 1 deletion(-)
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GetOperations.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimits/ListGroupQuotaLimits-Compute.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_Get.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_List.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/PatchGroupQuotaLimitsRequests-Compute.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/DeleteGroupQuotas.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotas.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotasList.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PatchGroupQuotas.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PutGroupQuotas.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/DeleteGroupQuotaSubscriptions.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/GetGroupQuotaSubscriptions.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/ListGroupQuotaSubscriptions.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PatchGroupQuotasSubscription.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PutGroupQuotasSubscription.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocation/SubscriptionQuotaAllocation_List-Compute.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/PatchSubscriptionQuotaAllocationRequest-Compute.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_Get-Compute.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_List-Compute.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_Get.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_List.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuQuotaLimit.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuUsages.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeQuotaLimits.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeUsages.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesQuotaLimits.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesUsages.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuQuotaLimit.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuUsages.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkQuotaLimits.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkUsages.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusById.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusFailed.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusInProgress.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestsHistory.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchComputeQuotaRequest.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchNetworkOneSkuQuotaRequest.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putComputeOneSkuQuotaRequest.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putMachineLearningServicesQuotaRequestLowPriority.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequest.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequestStandardSkuPublicIpAddresses.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/groupquota.json
create mode 100644 specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/quota.json
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GetOperations.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GetOperations.json
new file mode 100644
index 000000000000..1b6cc379b499
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GetOperations.json
@@ -0,0 +1,157 @@
+{
+ "parameters": {
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.Quota/quotas/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "Resource Quota limit",
+ "operation": "Get resource Quota limit",
+ "description": "Get the current Service limit or quota of the specified resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/quotas/write",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "Resource Quota limit",
+ "operation": "Creates resource Quota limit request",
+ "description": "Creates the service limit or quota request for the specified resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/quotaRequests/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "Resource Quota limit request",
+ "operation": "Get Quota limit request",
+ "description": "Get any service limit request for the specified resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/usages/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "usages information",
+ "operation": "Get the usages for providers",
+ "description": "Get the usages for resource providers"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/operations/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "Read Operation",
+ "operation": "Get the Operations supported by Microsoft.Quota",
+ "description": "Get the Operations supported by Microsoft.Quota"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/register/action",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "Subscription registration with Resource provider",
+ "operation": "Register the subscription with Microsoft.Quota Resource Provider",
+ "description": "Register the subscription with Microsoft.Quota Resource Provider"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota resource",
+ "operation": "Get GroupQuota resource",
+ "description": "Get the GroupQuota"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/write",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota Resource",
+ "operation": "Creates GroupQuota resource",
+ "description": "Creates the GroupQuota resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/subscriptions/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "Subscriptions added to GroupQuota resource",
+ "operation": "Get GroupQuota subscriptions",
+ "description": "Get the GroupQuota subscriptions"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/subscriptions/write",
+ "display": {
+ "provider": "Creates request to add subscription to GroupQuota resource",
+ "resource": "Subscriptions added to GroupQuota resource",
+ "operation": "Adds subscription to GroupQuota resource",
+ "description": "Add Subscriptions to GroupQuota resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/groupQuotaLimits/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota Resource Quota limit",
+ "operation": "Get GroupQuota resource Quota limit",
+ "description": "Get the current GroupQuota of the specified resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/groupQuotaLimits/write",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota Resource Quota limit",
+ "operation": "Creates GroupQuota resource Quota limit request",
+ "description": "Creates the GroupQuota request for the specified resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/groupQuotaRequests/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota request",
+ "operation": "Get GroupQuota request status",
+ "description": "Get the GroupQuota request status for the specific request"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/quotaAllocations/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota to Subscription Quota allocation",
+ "operation": "Get GroupQuota to Subscription Quota allocation",
+ "description": "Get the current GroupQuota to Subscription Quota allocation"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/quotaAllocations/write",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota to Subscription Quota allocation",
+ "operation": "Creates GroupQuota to subscription Quota limit request",
+ "description": "Creates the GroupQuota to subscription Quota limit request for the specified resource"
+ }
+ },
+ {
+ "name": "Microsoft.Quota/groupQuotas/quotaAllocationRequests/read",
+ "display": {
+ "provider": "Microsoft.Quota",
+ "resource": "GroupQuota to Subscription Quota allocation request",
+ "operation": "Get GroupQuota to Subscription Quota allocation request status",
+ "description": "Get the GroupQuota to Subscription Quota allocation request status for the specific request"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimits/ListGroupQuotaLimits-Compute.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimits/ListGroupQuotaLimits-Compute.json
new file mode 100644
index 000000000000..e2a2b253979c
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimits/ListGroupQuotaLimits-Compute.json
@@ -0,0 +1,70 @@
+{
+ "operationId": "GroupQuotaLimits_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview",
+ "resourceProviderName": "Microsoft.Compute",
+ "location": "westus",
+ "$filter": "resourceName eq cores"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/groupQuotaLimits/westus",
+ "name": "westus",
+ "type": "Microsoft.Quota/groupQuotas/groupQuotaLimits",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "value": [
+ {
+ "properties": {
+ "limit": 100,
+ "resourceName": "standardddv4family",
+ "name": {
+ "value": "standardddv4family",
+ "localizedValue": "standard DDv4 Family vCPUs"
+ },
+ "unit": "count",
+ "availableLimit": 50,
+ "allocatedToSubscriptions": {
+ "value": [
+ {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "quotaAllocated": 20
+ },
+ {
+ "subscriptionId": "A000000-0000-0000-0000-000000000000",
+ "quotaAllocated": 30
+ }
+ ]
+ }
+ }
+ },
+ {
+ "properties": {
+ "limit": 100,
+ "resourceName": "standardav2family",
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "Standard AV2 Family vCPUs"
+ },
+ "unit": "count",
+ "availableLimit": 80,
+ "allocatedToSubscriptions": {
+ "value": [
+ {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "quotaAllocated": 20
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_Get.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_Get.json
new file mode 100644
index 000000000000..cee16dc3be08
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_Get.json
@@ -0,0 +1,34 @@
+{
+ "operationId": "GroupQuotaLimitsRequests_Get",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "requestId": "requestId",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/groupQuotaLimitsRequests/requestId",
+ "type": "Microsoft.Quota/groupQuotas/groupQuotaLimitsRequests",
+ "name": "requestId",
+ "properties": {
+ "requestedResource": {
+ "properties": {
+ "limit": 100,
+ "name": {
+ "value": "standardddv4family",
+ "localizedValue": "standard DDv4 Family vCPUs"
+ },
+ "region": "westus",
+ "comments": ""
+ }
+ },
+ "requestSubmitTime": "2024-03-20T05:29:34.144Z",
+ "provisioningState": "Failed",
+ "faultCode": "ResourceNotAvailableForOffer"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_List.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_List.json
new file mode 100644
index 000000000000..2b0606288bab
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_List.json
@@ -0,0 +1,62 @@
+{
+ "operationId": "GroupQuotaLimitsRequests_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "resourceProviderName": "Microsoft.Compute",
+ "resourceName": "standardav2family",
+ "api-version": "2024-12-18-preview",
+ "$filter": "location eq westus"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/groupQuotaLimitsRequests/requestId1",
+ "type": "Microsoft.Quota/groupQuotas/groupQuotaLimitsRequests",
+ "name": "requestId1",
+ "properties": {
+ "requestedResource": {
+ "properties": {
+ "limit": 100,
+ "name": {
+ "value": "standardddv4family",
+ "localizedValue": "standard DDv4 Family vCPUs"
+ },
+ "region": "westus",
+ "comments": "Contoso requires more quota."
+ }
+ },
+ "requestSubmitTime": "2023-11-18T00:12:34.004Z",
+ "provisioningState": "Failed",
+ "faultCode": "ResourceNotAvailableForOffer"
+ }
+ },
+ {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/groupQuotaLimitsRequests/requestId2",
+ "type": "Microsoft.Quota/groupQuotas/groupQuotaLimitsRequests",
+ "name": "requestId2",
+ "properties": {
+ "requestedResource": {
+ "properties": {
+ "region": "westus",
+ "comments": "Contoso requires more quota.",
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "standardav2family"
+ },
+ "limit": 150
+ }
+ },
+ "requestSubmitTime": "2023-11-17T00:57:43.410Z",
+ "provisioningState": "Succeeded",
+ "faultCode": ""
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/PatchGroupQuotaLimitsRequests-Compute.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/PatchGroupQuotaLimitsRequests-Compute.json
new file mode 100644
index 000000000000..b4fe61ab0086
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotaLimitsRequests/PatchGroupQuotaLimitsRequests-Compute.json
@@ -0,0 +1,97 @@
+{
+ "operationId": "GroupQuotaLimitRequests_Update",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "resourceProviderName": "Microsoft.Compute",
+ "location": "westus",
+ "api-version": "2024-12-18-preview",
+ "groupQuotaRequest": {
+ "properties": {
+ "value": [
+ {
+ "properties": {
+ "limit": 110,
+ "resourceName": "standardddv4family",
+ "comment": "Contoso requires more quota."
+ }
+ },
+ {
+ "properties": {
+ "limit": 110,
+ "resourceName": "standardav2family",
+ "comment": "Contoso requires more quota."
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/groupQuotaLimits/westus",
+ "name": "westus",
+ "type": "Microsoft.Quota/groupQuotas/groupQuotaLimits",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "value": [
+ {
+ "properties": {
+ "limit": 100,
+ "resourceName": "standardddv4family",
+ "name": {
+ "value": "standardddv4family",
+ "localizedValue": "standard DDv4 Family vCPUs"
+ },
+ "unit": "count",
+ "availableLimit": 50,
+ "allocatedToSubscriptions": {
+ "value": [
+ {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "quotaAllocated": 20
+ },
+ {
+ "subscriptionId": "A000000-0000-0000-0000-000000000000",
+ "quotaAllocated": 30
+ }
+ ]
+ }
+ }
+ },
+ {
+ "properties": {
+ "limit": 100,
+ "resourceName": "standardav2family",
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "Standard AV2 Family vCPUs"
+ },
+ "unit": "count",
+ "availableLimit": 80,
+ "allocatedToSubscriptions": {
+ "value": [
+ {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "quotaAllocated": 20
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/DeleteGroupQuotas.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/DeleteGroupQuotas.json
new file mode 100644
index 000000000000..0fab488a1509
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/DeleteGroupQuotas.json
@@ -0,0 +1,19 @@
+{
+ "operationId": "GroupQuotas_Delete",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotas.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotas.json
new file mode 100644
index 000000000000..96ae045da72b
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotas.json
@@ -0,0 +1,21 @@
+{
+ "operationId": " GroupQuotas_Get",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "displayName": "GroupQuota1",
+ "provisioningState": "Accepted"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1",
+ "type": "Microsoft.Quota/groupQuotas",
+ "name": "groupquota1"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotasList.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotasList.json
new file mode 100644
index 000000000000..04728eca46d8
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/GetGroupQuotasList.json
@@ -0,0 +1,25 @@
+{
+ "operationId": "GroupQuotas_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "displayName": "GroupQuota1",
+ "provisioningState": "Accepted"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1",
+ "type": "Microsoft.Quota/groupQuotas",
+ "name": "groupquota1"
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PatchGroupQuotas.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PatchGroupQuotas.json
new file mode 100644
index 000000000000..433f319c0b2e
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PatchGroupQuotas.json
@@ -0,0 +1,34 @@
+{
+ "operationId": "GroupQuotas_Update",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview",
+ "GroupQuotasPatchRequestBody": {
+ "properties": {
+ "displayName": "UpdatedGroupQuota1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "displayName": "UpdatedGroupQuota1",
+ "provisioningState": "Accepted"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1",
+ "type": "Microsoft.Quota/groupQuotas",
+ "name": "groupquota1"
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PutGroupQuotas.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PutGroupQuotas.json
new file mode 100644
index 000000000000..762119bec0d6
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotas/PutGroupQuotas.json
@@ -0,0 +1,42 @@
+{
+ "operationId": "GroupQuotas_CreateOrUpdate",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview",
+ "GroupQuotaPutRequestBody": {
+ "properties": {
+ "displayName": "GroupQuota1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1",
+ "type": "Microsoft.Quota/groupQuotas",
+ "name": "groupquota1",
+ "properties": {
+ "displayName": "GroupQuota1",
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ },
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1",
+ "type": "Microsoft.Quota/groupQuotas",
+ "name": "groupquota1",
+ "properties": {
+ "provisioningState": "Accepted"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/DeleteGroupQuotaSubscriptions.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/DeleteGroupQuotaSubscriptions.json
new file mode 100644
index 000000000000..28090f112d5a
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/DeleteGroupQuotaSubscriptions.json
@@ -0,0 +1,20 @@
+{
+ "operationId": "GroupQuotaSubscriptions_Delete",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "204": {},
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/GetGroupQuotaSubscriptions.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/GetGroupQuotaSubscriptions.json
new file mode 100644
index 000000000000..ab868825a22c
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/GetGroupQuotaSubscriptions.json
@@ -0,0 +1,22 @@
+{
+ "operationId": "GroupQuotaSubscription_Get",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/subscriptions/00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Quota/groupQuotas/subscriptions",
+ "name": "00000000-0000-0000-0000-000000000000"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/ListGroupQuotaSubscriptions.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/ListGroupQuotaSubscriptions.json
new file mode 100644
index 000000000000..8a87e6da0244
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/ListGroupQuotaSubscriptions.json
@@ -0,0 +1,35 @@
+{
+ "operationId": "GroupQuotaSubscription_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/subscriptions/00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Quota/groupQuotas/subscriptions",
+ "name": "00000000-0000-0000-0000-000000000000"
+ },
+ {
+ "properties": {
+ "subscriptionId": "11111111-1111-1111-1111-111111111111",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/subscriptions/11111111-1111-1111-1111-111111111111",
+ "type": "Microsoft.Quota/groupQuotas/subscriptions",
+ "name": "11111111-1111-1111-1111-111111111111"
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PatchGroupQuotasSubscription.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PatchGroupQuotasSubscription.json
new file mode 100644
index 000000000000..4229a11bcbb2
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PatchGroupQuotasSubscription.json
@@ -0,0 +1,33 @@
+{
+ "operationId": "GroupQuotaSubscriptions_Update",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "provisioningState": "Accepted"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/subscriptions/00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Quota/groupQuotas/subscriptions",
+ "name": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PutGroupQuotasSubscription.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PutGroupQuotasSubscription.json
new file mode 100644
index 000000000000..69bf8669b0ca
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/GroupQuotasSubscriptions/PutGroupQuotasSubscription.json
@@ -0,0 +1,38 @@
+{
+ "operationId": "GroupQuotaSubscriptions_CreateOrUpdate",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "provisioningState": "Accepted"
+ },
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/subscriptions/00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Quota/groupQuotas/subscriptions",
+ "name": "00000000-0000-0000-0000-000000000000"
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ },
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/providers/Microsoft.Quota/groupQuotas/groupquota1/subscriptions/00000000-0000-0000-0000-000000000000",
+ "type": "Microsoft.Quota/groupQuotas/subscriptions",
+ "name": "00000000-0000-0000-0000-000000000000",
+ "properties": {
+ "provisioningState": "Accepted"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocation/SubscriptionQuotaAllocation_List-Compute.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocation/SubscriptionQuotaAllocation_List-Compute.json
new file mode 100644
index 000000000000..bea57830a17a
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocation/SubscriptionQuotaAllocation_List-Compute.json
@@ -0,0 +1,49 @@
+{
+ "operationId": "GroupQuotaSubscriptionAllocation_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "groupQuotaName": "groupquota1",
+ "resourceProviderName": "Microsoft.Compute",
+ "location": "westus",
+ "api-version": "2024-12-18-preview",
+ "$filter": "resourceName eq cores"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/locations/westus/quotaAllocations/westus",
+ "name": "westus",
+ "type": "Microsoft.Quota/groupQuotas/quotaAllocations",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "value": [
+ {
+ "properties": {
+ "resourceName": "standardddv4family",
+ "limit": 25,
+ "shareableQuota": 15,
+ "name": {
+ "value": "standardddv4family",
+ "localizedValue": "standard DDv4 Family vCPUs"
+ }
+ }
+ },
+ {
+ "properties": {
+ "limit": 30,
+ "resourceName": "standardav2family",
+ "shareableQuota": 0,
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "standard Av2 Family vCPUs"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/PatchSubscriptionQuotaAllocationRequest-Compute.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/PatchSubscriptionQuotaAllocationRequest-Compute.json
new file mode 100644
index 000000000000..b97e317048a6
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/PatchSubscriptionQuotaAllocationRequest-Compute.json
@@ -0,0 +1,74 @@
+{
+ "operationId": "GroupQuotaSubscriptionAllocationRequest_Update",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "groupQuotaName": "groupquota1",
+ "resourceProviderName": "Microsoft.Compute",
+ "location": "westus",
+ "api-version": "2024-12-18-preview",
+ "allocateQuotaRequest": {
+ "properties": {
+ "value": [
+ {
+ "properties": {
+ "limit": 110,
+ "resourceName": "standardddv4family"
+ }
+ },
+ {
+ "properties": {
+ "limit": 110,
+ "resourceName": "standardav2family"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/locations/westus/quotaAllocations/westus",
+ "name": "westus",
+ "type": "Microsoft.Quota/groupQuotas/quotaAllocations",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "value": [
+ {
+ "properties": {
+ "resourceName": "standardddv4family",
+ "limit": 25,
+ "shareableQuota": 15,
+ "name": {
+ "value": "standardddv4family",
+ "localizedValue": "standard DDv4 Family vCPUs"
+ }
+ }
+ },
+ {
+ "properties": {
+ "limit": 30,
+ "resourceName": "standardav2family",
+ "shareableQuota": 0,
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "standard Av2 Family vCPUs"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus",
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus",
+ "Operation-Location": "https://contoso.com/operationstatus",
+ "retry-after": 30
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_Get-Compute.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_Get-Compute.json
new file mode 100644
index 000000000000..4a50b9cc054a
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_Get-Compute.json
@@ -0,0 +1,36 @@
+{
+ "operationId": "GroupQuotaSubscriptionAllocationRequests_Get",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "groupQuotaName": "groupquota1",
+ "resourceProviderName": "Microsoft.Compute",
+ "allocationId": "AE000000-0000-0000-0000-00000000000A",
+ "api-version": "2024-12-18-preview",
+ "$filter": "provider eq Microsoft.Compute & location eq westus"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Quota/groupQuotas/groupquota1/quotaAllocationRequests/AE000000-0000-0000-0000-00000000000A",
+ "type": "Microsoft.Quota/groupQuotas/quotaAllocationRequests",
+ "name": "AE000000-0000-0000-0000-00000000000A",
+ "properties": {
+ "requestedResource": {
+ "properties": {
+ "region": "westus",
+ "limit": 75,
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "standard Av2 Family vCPUs"
+ }
+ }
+ },
+ "requestSubmitTime": "2023-11-17T01:06:02.191Z",
+ "provisioningState": "Failed",
+ "faultCode": "ContactSupport"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_List-Compute.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_List-Compute.json
new file mode 100644
index 000000000000..2bbc10aee338
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_List-Compute.json
@@ -0,0 +1,40 @@
+{
+ "operationId": "GroupQuotaSubscriptionAllocationRequests_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "groupQuotaName": "groupquota1",
+ "resourceProviderName": "Microsoft.Compute",
+ "api-version": "2024-12-18-preview",
+ "$filter": "location eq westus"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/providers/Microsoft.Management/managementGroups/E7EC67B3-7657-4966-BFFC-41EFD36BAA09/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Quota/groupQuotas/groupquota1/resourceProviders/Microsoft.Compute/quotaAllocationRequests/AE000000-0000-0000-0000-00000000000A",
+ "type": "Microsoft.Quota/groupQuotas/quotaAllocationRequests",
+ "name": "AE000000-0000-0000-0000-00000000000A",
+ "properties": {
+ "requestedResource": {
+ "properties": {
+ "limit": 75,
+ "name": {
+ "value": "standardav2family",
+ "localizedValue": "standard Av2 Family vCPUs"
+ },
+ "region": "westus"
+ }
+ },
+ "requestSubmitTime": "2024-03-20T06:18:59.913Z",
+ "provisioningState": "Failed",
+ "faultCode": "ContactSupport"
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_Get.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_Get.json
new file mode 100644
index 000000000000..faaf78655fe7
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_Get.json
@@ -0,0 +1,23 @@
+{
+ "operationId": "GroupQuotaSubscriptionRequests_Get",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "requestId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111",
+ "name": "11111111-1111-1111-1111-111111111111",
+ "type": "Microsoft.Quota/groupQuotas/SubscriptionRequest",
+ "properties": {
+ "subscriptionId": "11111111-1111-1111-1111-111111111111",
+ "provisioningState": "Accepted",
+ "requestSubmitTime": "2023-11-17T00:56:45.009Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_List.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_List.json
new file mode 100644
index 000000000000..072ba194fe62
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/SubscriptionRequests/SubscriptionRequests_List.json
@@ -0,0 +1,27 @@
+{
+ "operationId": "GroupQuotaSubscriptionRequests_List",
+ "parameters": {
+ "managementGroupId": "E7EC67B3-7657-4966-BFFC-41EFD36BAA09",
+ "groupQuotaName": "groupquota1",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111",
+ "name": "11111111-1111-1111-1111-111111111111",
+ "type": "Microsoft.Quota/groupQuotas/SubscriptionRequest",
+ "properties": {
+ "subscriptionId": "11111111-1111-1111-1111-111111111111",
+ "provisioningState": "Accepted",
+ "requestSubmitTime": "2023-11-17T00:56:45.009Z"
+ }
+ }
+ ],
+ "nextLink": "https://yourLinkHere.com"
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuQuotaLimit.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuQuotaLimit.json
new file mode 100644
index 000000000000..553b8528ab8c
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuQuotaLimit.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus",
+ "resourceName": "standardNDSFamily",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardNDSFamily",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardNDSFamily",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 100,
+ "limitType": "Independent"
+ },
+ "unit": "Count",
+ "name": {
+ "value": "standardNDSFamily",
+ "localizedValue": "Standard NDS Family vCPUs"
+ },
+ "isQuotaApplicable": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuUsages.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuUsages.json
new file mode 100644
index 000000000000..bf30894ab3f3
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeOneSkuUsages.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus",
+ "resourceName": "standardNDSFamily",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardNDSFamily",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardNDSFamily",
+ "properties": {
+ "usages": {
+ "usagesType": "Individual",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "standardNDSFamily",
+ "localizedValue": "Standard NDS Family vCPUs"
+ },
+ "isQuotaApplicable": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeQuotaLimits.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeQuotaLimits.json
new file mode 100644
index 000000000000..bd40d9d55451
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeQuotaLimits.json
@@ -0,0 +1,219 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardFSv2Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardFSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardFSv2Family",
+ "localizedValue": "Standard FSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardNDSFamily",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardNDSFamily",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNDSFamily",
+ "localizedValue": "Standard NDS Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardNCSv2Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardNCSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNCSv2Family",
+ "localizedValue": "Standard NCSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardNCSv3Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardNCSv3Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNCSv3Family",
+ "localizedValue": "Standard NCSv3 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardLSv2Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardLSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardLSv2Family",
+ "localizedValue": "Standard LSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardPBSFamily",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardPBSFamily",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardPBSFamily",
+ "localizedValue": "Standard PBS Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardEIv3Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardEIv3Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardEIv3Family",
+ "localizedValue": "Standard EIv3 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardEISv3Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardEISv3Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardEISv3Family",
+ "localizedValue": "Standard EISv3 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardDCSFamily",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardDCSFamily",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardDCSFamily",
+ "localizedValue": "Standard DCS Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardNVSv2Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardNVSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNVSv2Family",
+ "localizedValue": "Standard NVSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/standardMSv2Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardMSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardMSv2Family",
+ "localizedValue": "Standard MSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Quotas/availabilitySets",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "availabilitySets",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": false,
+ "name": {
+ "value": "availabilitySets",
+ "localizedValue": "Availability Sets"
+ }
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeUsages.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeUsages.json
new file mode 100644
index 000000000000..10609b870110
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getComputeUsages.json
@@ -0,0 +1,207 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardFSv2Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardFSv2Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardFSv2Family",
+ "localizedValue": "Standard FSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardNDSFamily",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardNDSFamily",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNDSFamily",
+ "localizedValue": "Standard NDS Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardNCSv2Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardNCSv2Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNCSv2Family",
+ "localizedValue": "Standard NCSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardNCSv3Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardNCSv3Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNCSv3Family",
+ "localizedValue": "Standard NCSv3 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardLSv2Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardLSv2Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardLSv2Family",
+ "localizedValue": "Standard LSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardPBSFamily",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardPBSFamily",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardPBSFamily",
+ "localizedValue": "Standard PBS Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardEIv3Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardEIv3Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardEIv3Family",
+ "localizedValue": "Standard EIv3 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardEISv3Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardEISv3Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardEISv3Family",
+ "localizedValue": "Standard EISv3 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardDCSFamily",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardDCSFamily",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardDCSFamily",
+ "localizedValue": "Standard DCS Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardNVSv2Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardNVSv2Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardNVSv2Family",
+ "localizedValue": "Standard NVSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/standardMSv2Family",
+ "type": "Microsoft.Quota/Usages",
+ "name": "standardMSv2Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "name": {
+ "value": "standardMSv2Family",
+ "localizedValue": "Standard MSv2 Family vCPUs"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/Usages/availabilitySets",
+ "type": "Microsoft.Quota/Usages",
+ "name": "availabilitySets",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "isQuotaApplicable": false,
+ "name": {
+ "value": "availabilitySets",
+ "localizedValue": "Availability Sets"
+ }
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesQuotaLimits.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesQuotaLimits.json
new file mode 100644
index 000000000000..7b33321957fb
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesQuotaLimits.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.MachineLearningServices/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.MachineLearningServices/locations/eastus/providers/Microsoft.Quota/Quotas/standardDv2Family",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "standardDv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "standardDv2Family",
+ "localizedValue": "Standard Dv2 Family vCPUs"
+ },
+ "resourceType": "dedicated"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.MachineLearningServices/locations/eastus/providers/Microsoft.Quota/Quotas/totalLowPriorityCores",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "totalLowPriorityCores",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "totalLowPriorityCores",
+ "localizedValue": "Total Regional Low-priority vCPUs"
+ },
+ "resourceType": "lowPriority"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesUsages.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesUsages.json
new file mode 100644
index 000000000000..5f292d94780f
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getMachineLearningServicesUsages.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.MachineLearningServices/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.MachineLearningServices/locations/eastus/providers/Microsoft.Quota/usages/standardDv2Family",
+ "type": "Microsoft.Quota/usages",
+ "name": "standardDv2Family",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "standardDv2Family",
+ "localizedValue": "Standard Dv2 Family vCPUs"
+ },
+ "resourceType": "dedicated"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.MachineLearningServices/locations/eastus/providers/Microsoft.Quota/usages/totalLowPriorityCores",
+ "type": "Microsoft.Quota/usages",
+ "name": "totalLowPriorityCores",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "totalLowPriorityCores",
+ "localizedValue": "Total Regional Low-priority vCPUs"
+ },
+ "resourceType": "lowPriority"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuQuotaLimit.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuQuotaLimit.json
new file mode 100644
index 000000000000..caccf3875028
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuQuotaLimit.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus",
+ "resourceName": "MinPublicIpInterNetworkPrefixLength",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/MinPublicIpInterNetworkPrefixLength",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "MinPublicIpInterNetworkPrefixLength",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength",
+ "localizedValue": "Min Public Ip InterNetwork Prefix Length"
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuUsages.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuUsages.json
new file mode 100644
index 000000000000..52e60350abff
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkOneSkuUsages.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus",
+ "resourceName": "MinPublicIpInterNetworkPrefixLength",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/MinPublicIpInterNetworkPrefixLength",
+ "type": "Microsoft.Quota/usages",
+ "name": "MinPublicIpInterNetworkPrefixLength",
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength",
+ "localizedValue": "Min Public Ip InterNetwork Prefix Length"
+ },
+ "unit": "Count",
+ "isQuotaApplicable": true,
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkQuotaLimits.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkQuotaLimits.json
new file mode 100644
index 000000000000..d6358caba78b
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkQuotaLimits.json
@@ -0,0 +1,699 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "VirtualNetworks",
+ "localizedValue": "Virtual Networks"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "VirtualNetworks"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "StaticPublicIPAddresses",
+ "localizedValue": "Static Public IP Addresses"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "StaticPublicIPAddresses"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkSecurityGroups",
+ "localizedValue": "Network Security Groups"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "NetworkSecurityGroups"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PublicIPAddresses",
+ "localizedValue": "Public IP Addresses - Basic"
+ },
+ "properties": {},
+ "isQuotaApplicable": true
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PublicIPAddresses"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PublicIpPrefixes",
+ "localizedValue": "Public Ip Prefixes"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PublicIpPrefixes"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NatGateways",
+ "localizedValue": "Nat Gateways"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "NatGateways"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkInterfaces",
+ "localizedValue": "Network Interfaces"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "NetworkInterfaces"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PrivateEndpoints",
+ "localizedValue": "Private Endpoints"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PrivateEndpoints"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PrivateEndpointRedirectMaps",
+ "localizedValue": "Private Endpoint Redirect Maps"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PrivateEndpointRedirectMaps"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "LoadBalancers",
+ "localizedValue": "Load Balancers"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "LoadBalancers"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PrivateLinkServices",
+ "localizedValue": "Private Link Services"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PrivateLinkServices"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "ApplicationGateways",
+ "localizedValue": "Application Gateways"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "ApplicationGateways"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RouteTables",
+ "localizedValue": "Route Tables"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "RouteTables"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RouteFilters",
+ "localizedValue": "Route Filters"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "RouteFilters"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkWatchers",
+ "localizedValue": "Network Watchers"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "NetworkWatchers"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PacketCaptures",
+ "localizedValue": "Packet Captures"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PacketCaptures"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "ApplicationSecurityGroups",
+ "localizedValue": "Application Security Groups."
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "ApplicationSecurityGroups"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "DdosProtectionPlans",
+ "localizedValue": "DDoS Protection Plans."
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "DdosProtectionPlans"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "DdosCustomPolicies",
+ "localizedValue": "DDoS customized policies"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "DdosCustomPolicies"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "ServiceEndpointPolicies",
+ "localizedValue": "Service Endpoint Policies"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "ServiceEndpointPolicies"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkIntentPolicies",
+ "localizedValue": "Network Intent Policies"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "NetworkIntentPolicies"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "StandardSkuLoadBalancers",
+ "localizedValue": "Standard Sku Load Balancers"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "StandardSkuLoadBalancers"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "StandardSkuPublicIpAddresses",
+ "localizedValue": "Public IP Addresses - Standard"
+ },
+ "properties": {},
+ "isQuotaApplicable": true
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "StandardSkuPublicIpAddresses"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "DnsServersPerVirtualNetwork",
+ "localizedValue": "DNS servers per Virtual Network"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "DnsServersPerVirtualNetwork"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "CustomDnsServersPerP2SVpnGateway",
+ "localizedValue": "Custom DNS servers per P2SVpnGateway"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "CustomDnsServersPerP2SVpnGateway"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "SubnetsPerVirtualNetwork",
+ "localizedValue": "Subnets per Virtual Network"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "SubnetsPerVirtualNetwork"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "IPConfigurationsPerVirtualNetwork",
+ "localizedValue": "IP Configurations per Virtual Network"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "IPConfigurationsPerVirtualNetwork"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PeeringsPerVirtualNetwork",
+ "localizedValue": "Peerings per Virtual Network"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "PeeringsPerVirtualNetwork"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "SecurityRulesPerNetworkSecurityGroup",
+ "localizedValue": "Security rules per Network Security Group"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "SecurityRulesPerNetworkSecurityGroup"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "SecurityRulesPerNetworkIntentPolicy",
+ "localizedValue": "Security rules per Network Intent Policy"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "SecurityRulesPerNetworkIntentPolicy"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RoutesPerNetworkIntentPolicy",
+ "localizedValue": "Routes per Network Intent Policy"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "RoutesPerNetworkIntentPolicy"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup",
+ "localizedValue": "Security rules addresses or ports per Network Security Group"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "InboundRulesPerLoadBalancer",
+ "localizedValue": "Inbound Rules per Load Balancer"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "InboundRulesPerLoadBalancer"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "FrontendIPConfigurationPerLoadBalancer",
+ "localizedValue": "Frontend IP Configurations per Load Balancer"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "FrontendIPConfigurationPerLoadBalancer"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "OutboundRulesPerLoadBalancer",
+ "localizedValue": "Outbound Rules per Load Balancer"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "OutboundRulesPerLoadBalancer"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RoutesPerRouteTable",
+ "localizedValue": "Routes per Route Table"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "RoutesPerRouteTable"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RoutesWithServiceTagPerRouteTable",
+ "localizedValue": "Routes with service tag per Route Table"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "RoutesWithServiceTagPerRouteTable"
+ },
+ {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength",
+ "localizedValue": "Min Public Ip InterNetwork Prefix Length"
+ },
+ "properties": {},
+ "isQuotaApplicable": true,
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/Quotas/",
+ "type": "Microsoft.Quota/Quotas",
+ "name": "MinPublicIpInterNetworkPrefixLength"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkUsages.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkUsages.json
new file mode 100644
index 000000000000..02f54e4b1a7a
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getNetworkUsages.json
@@ -0,0 +1,372 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "VirtualNetworks",
+ "localizedValue": "Virtual Networks"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "VirtualNetworks"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "StaticPublicIPAddresses",
+ "localizedValue": "Static Public IP Addresses"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "StaticPublicIPAddresses"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkSecurityGroups",
+ "localizedValue": "Network Security Groups"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "NetworkSecurityGroups"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PublicIPAddresses",
+ "localizedValue": "Public IP Addresses - Basic"
+ },
+ "isQuotaApplicable": true,
+ "resourceType": "PublicIpAddresses",
+ "properties": {}
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "PublicIPAddresses"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PublicIpPrefixes",
+ "localizedValue": "Public Ip Prefixes"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "PublicIpPrefixes"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NatGateways",
+ "localizedValue": "Nat Gateways"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "NatGateways"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkInterfaces",
+ "localizedValue": "Network Interfaces"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "NetworkInterfaces"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PrivateEndpoints",
+ "localizedValue": "Private Endpoints"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "PrivateEndpoints"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PrivateEndpointRedirectMaps",
+ "localizedValue": "Private Endpoint Redirect Maps"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "PrivateEndpointRedirectMaps"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "LoadBalancers",
+ "localizedValue": "Load Balancers"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "LoadBalancers"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PrivateLinkServices",
+ "localizedValue": "Private Link Services"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "PrivateLinkServices"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "ApplicationGateways",
+ "localizedValue": "Application Gateways"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "ApplicationGateways"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RouteTables",
+ "localizedValue": "Route Tables"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "RouteTables"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "RouteFilters",
+ "localizedValue": "Route Filters"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "RouteFilters"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "NetworkWatchers",
+ "localizedValue": "Network Watchers"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "NetworkWatchers"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "PacketCaptures",
+ "localizedValue": "Packet Captures"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "PacketCaptures"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "ApplicationSecurityGroups",
+ "localizedValue": "Application Security Groups."
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "ApplicationSecurityGroups"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "StandardSkuLoadBalancers",
+ "localizedValue": "Standard Sku Load Balancers"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "StandardSkuLoadBalancers"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "StandardSkuPublicIpAddresses",
+ "localizedValue": "Public IP Addresses - Standard"
+ },
+ "isQuotaApplicable": true,
+ "resourceType": "PublicIpAddresses"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "StandardSkuPublicIpAddresses"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "DnsServersPerVirtualNetwork",
+ "localizedValue": "DNS servers per Virtual Network"
+ },
+ "properties": {},
+ "isQuotaApplicable": false
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "DnsServersPerVirtualNetwork"
+ },
+ {
+ "properties": {
+ "usages": {
+ "value": 10
+ },
+ "unit": "Count",
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength",
+ "localizedValue": "Min Public Ip InterNetwork Prefix Length"
+ },
+ "properties": {},
+ "isQuotaApplicable": true
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/usages/",
+ "type": "Microsoft.Quota/usages",
+ "name": "MinPublicIpInterNetworkPrefixLength"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusById.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusById.json
new file mode 100644
index 000000000000..2bcb1ba02ec5
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusById.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus",
+ "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotaRequests",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "requestSubmitTime": "2019-08-19T19:23:17.904Z",
+ "message": "Request completed",
+ "provisioningState": "Succeeded",
+ "value": [
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 50
+ },
+ "unit": "Count",
+ "name": {
+ "value": "standardNCPromoFamily",
+ "localizedValue": "Standard NC Promo Family vCPUs"
+ },
+ "message": "Request completed",
+ "provisioningState": "Succeeded"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusFailed.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusFailed.json
new file mode 100644
index 000000000000..87d07e888dc0
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusFailed.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus",
+ "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotaRequests",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "requestSubmitTime": "2019-08-19T19:23:17.904Z",
+ "message": "Request failed, please contact support.",
+ "provisioningState": "Failed",
+ "error": {
+ "code": "ContactSupport",
+ "message": "Request failed, please contact support."
+ },
+ "value": [
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 50
+ },
+ "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C",
+ "name": {
+ "value": "standardNCPromoFamily",
+ "localizedValue": "Standard NC Promo Family vCPUs"
+ },
+ "message": "Request failed, please contact support.",
+ "provisioningState": "Failed"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusInProgress.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusInProgress.json
new file mode 100644
index 000000000000..2517d19e4d3f
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestStatusInProgress.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "scope": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus",
+ "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotaRequests",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "requestSubmitTime": "2019-08-19T19:23:17.904Z",
+ "message": "Request processing",
+ "provisioningState": "InProgress",
+ "value": [
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 50
+ },
+ "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C",
+ "name": {
+ "value": "standardHCSFamily",
+ "localizedValue": "Standard HCS Family vCPUs"
+ },
+ "message": "Request completed",
+ "provisioningState": "Succeeded"
+ },
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 50
+ },
+ "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C",
+ "name": {
+ "value": "standardNCPromoFamily",
+ "localizedValue": "Standard NC Promo Family vCPUs"
+ },
+ "message": "Request processing",
+ "provisioningState": "InProgress"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestsHistory.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestsHistory.json
new file mode 100644
index 000000000000..ceb86d7031c7
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/getQuotaRequestsHistory.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus",
+ "api-version": "2024-12-18-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/microsoft.Quota/resourceProviders/Microsoft.Compute/locations/eastus/quotaRequests?api-version=2021-03-15&$top=3",
+ "value": [
+ {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotaRequests",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "requestSubmitTime": "2019-08-19T19:23:17.904Z",
+ "message": "Request completed",
+ "provisioningState": "Success",
+ "value": [
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 50
+ },
+ "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C",
+ "name": {
+ "value": "standardNCPromoFamily",
+ "localizedValue": "Standard NC Promo Family vCPUs"
+ },
+ "message": "Request completed",
+ "provisioningState": "Success"
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/7E73A85C-83BB-4DE4-903F-076F1A2B91D6",
+ "type": "Microsoft.Quota/quotaRequests",
+ "name": "7E73A85C-83BB-4DE4-903F-076F1A2B91D6",
+ "properties": {
+ "requestSubmitTime": "2019-08-18T19:23:17.904Z",
+ "message": "Request completed",
+ "provisioningState": "Succeeded",
+ "value": [
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 150
+ },
+ "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C",
+ "name": {
+ "value": "standardNVPromoFamily",
+ "localizedValue": "Standard NV Promo Family vCPUs"
+ },
+ "message": "Request completed",
+ "provisioningState": "Succeeded"
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/5E460077-AB53-4802-8997-A6940E0B7649",
+ "type": "Microsoft.Quota/quotaRequests",
+ "name": "5E460077-AB53-4802-8997-A6940E0B7649",
+ "properties": {
+ "requestSubmitTime": "2019-08-17T19:23:17.904Z",
+ "message": "The resource is currently unavailable in the location for the offer type.",
+ "provisioningState": "Failed",
+ "error": {
+ "code": "ResourceNotAvailableForOffer",
+ "message": "The resource is currently unavailable in the location for the offer type."
+ },
+ "value": [
+ {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 52
+ },
+ "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C",
+ "name": {
+ "value": "standardHBSFamily",
+ "localizedValue": "Standard HBS Family vCPUs"
+ },
+ "message": "Request failed, please contact support.",
+ "provisioningState": "Failed"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchComputeQuotaRequest.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchComputeQuotaRequest.json
new file mode 100644
index 000000000000..4ab28b502116
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchComputeQuotaRequest.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus",
+ "resourceName": "standardFSv2Family",
+ "api-version": "2024-12-18-preview",
+ "createQuotaRequest": {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "standardFSv2Family"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "30",
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/operationsStatus/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ }
+ },
+ "200": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ },
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotas/standardFSv2Family",
+ "type": "Microsoft.Quota/quotas",
+ "name": "standardFSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "standardFSv2Family",
+ "localizedValue": "Standard FSv2 Family vCPUs"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchNetworkOneSkuQuotaRequest.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchNetworkOneSkuQuotaRequest.json
new file mode 100644
index 000000000000..d79fc2a23be3
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/patchNetworkOneSkuQuotaRequest.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus",
+ "resourceName": "MinPublicIpInterNetworkPrefixLength",
+ "api-version": "2024-12-18-preview",
+ "createQuotaRequest": {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength"
+ },
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "30",
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/operationsStatus/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ }
+ },
+ "200": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ },
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotas",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength"
+ },
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putComputeOneSkuQuotaRequest.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putComputeOneSkuQuotaRequest.json
new file mode 100644
index 000000000000..d2a1bf002b32
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putComputeOneSkuQuotaRequest.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus",
+ "resourceName": "standardFSv2Family",
+ "api-version": "2024-12-18-preview",
+ "createQuotaRequest": {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "standardFSv2Family"
+ }
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "30",
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/operationsStatus/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ }
+ },
+ "200": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ },
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotas/standardFSv2Family",
+ "type": "Microsoft.Quota/quotas",
+ "name": "standardFSv2Family",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "standardFSv2Family"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putMachineLearningServicesQuotaRequestLowPriority.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putMachineLearningServicesQuotaRequestLowPriority.json
new file mode 100644
index 000000000000..7414cfa69e52
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putMachineLearningServicesQuotaRequestLowPriority.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.MachineLearningServices/locations/eastus",
+ "resourceName": "TotalLowPriorityCores",
+ "api-version": "2024-12-18-preview",
+ "createQuotaRequest": {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "TotalLowPriorityCores"
+ },
+ "resourceType": "lowPriority"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "30",
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/operationsStatus/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ }
+ },
+ "200": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Compute/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ },
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.MachineLearningServices/locations/eastus/providers/Microsoft.Quota/quotas/TotalLowPriorityCores",
+ "type": "Microsoft.Quota/quotas",
+ "name": "TotalLowPriorityCores",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "TotalLowPriorityCores"
+ },
+ "resourceType": "lowPriority"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequest.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequest.json
new file mode 100644
index 000000000000..d79fc2a23be3
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequest.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus",
+ "resourceName": "MinPublicIpInterNetworkPrefixLength",
+ "api-version": "2024-12-18-preview",
+ "createQuotaRequest": {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength"
+ },
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "30",
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/operationsStatus/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ }
+ },
+ "200": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ },
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotas",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "MinPublicIpInterNetworkPrefixLength"
+ },
+ "resourceType": "MinPublicIpInterNetworkPrefixLength"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequestStandardSkuPublicIpAddresses.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequestStandardSkuPublicIpAddresses.json
new file mode 100644
index 000000000000..2a8c2bca918d
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/examples/putNetworkOneSkuQuotaRequestStandardSkuPublicIpAddresses.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "scope": "subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus",
+ "resourceName": "StandardSkuPublicIpAddresses",
+ "api-version": "2024-12-18-preview",
+ "createQuotaRequest": {
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "StandardSkuPublicIpAddresses"
+ },
+ "resourceType": "PublicIpAddresses"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "30",
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/operationsStatus/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ }
+ },
+ "200": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequest/2B5C8515-37D8-4B6A-879B-CD641A2CF605?api-version=2023-02-01"
+ },
+ "body": {
+ "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Network/locations/eastus/providers/Microsoft.Quota/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "type": "Microsoft.Quota/quotas",
+ "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605",
+ "properties": {
+ "limit": {
+ "limitObjectType": "LimitValue",
+ "value": 10
+ },
+ "name": {
+ "value": "StandardSkuPublicIpAddresses"
+ },
+ "resourceType": "PublicIpAddresses"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/groupquota.json b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/groupquota.json
new file mode 100644
index 000000000000..437a6c639551
--- /dev/null
+++ b/specification/quota/resource-manager/Microsoft.Quota/preview/2024-12-18-preview/groupquota.json
@@ -0,0 +1,1962 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure Quota Extension API",
+ "version": "2024-12-18-preview",
+ "description": "Microsoft Azure Quota Resource Provider. This Swagger is for Azure Group Quota using GroupQuota Entity."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ },
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth 2.0 authorization"
+ }
+ },
+ "paths": {
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}": {
+ "put": {
+ "tags": [
+ "GroupQuotas"
+ ],
+ "summary": "Creates a new GroupQuota for the name passed.",
+ "description": "Creates a new GroupQuota for the name passed. A RequestId will be returned by the Service. The status can be polled periodically. The status Async polling is using standards defined at - https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations. Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to Get URI and full details can be checked.",
+ "operationId": "GroupQuotas_CreateOrUpdate",
+ "x-ms-examples": {
+ "GroupQuotas_Put_Request_ForCompute": {
+ "$ref": "./examples/GroupQuotas/PutGroupQuotas.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "GroupQuotaPutRequestBody",
+ "in": "body",
+ "description": "The GroupQuota body details for creation or update of a GroupQuota entity.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotasEntity"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Create or Update",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotasEntity"
+ }
+ },
+ "201": {
+ "description": "Request Accepted, Create or Update",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers. New guidelines - https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#131-resource-based-long-running-operations-relo",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/LROResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "GroupQuotas"
+ ],
+ "summary": "Updates a new GroupQuotas for the name passed.",
+ "description": "Updates the GroupQuotas for the name passed. A GroupQuotas RequestId will be returned by the Service. The status can be polled periodically. The status Async polling is using standards defined at - https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations. Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to Get URI and full details can be checked. \n Any change in the filters will be applicable to the future quota assignments, existing quota allocated to subscriptions from the GroupQuotas remains unchanged.",
+ "operationId": "GroupQuotas_Update",
+ "x-ms-examples": {
+ "GroupQuotas_Patch_Request_ForCompute": {
+ "$ref": "./examples/GroupQuotas/PatchGroupQuotas.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": " GroupQuotasPatchRequestBody",
+ "in": "body",
+ "description": "The GroupQuotas Patch Request.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotasEntityPatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotasEntity"
+ }
+ },
+ "202": {
+ "description": "Request Accepted",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Bad Request",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "GroupQuotas"
+ ],
+ "summary": "Gets GroupQuotas for the name passed.",
+ "description": "Gets the GroupQuotas for the name passed. It will return the GroupQuotas properties only. The details on group quota can be access from the group quota APIs.",
+ "operationId": "GroupQuotas_Get",
+ "x-ms-examples": {
+ "GroupQuotas_Get_Request_ForCompute": {
+ "$ref": "./examples/GroupQuotas/GetGroupQuotas.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotasEntity"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "GroupQuotas"
+ ],
+ "summary": "Deletes GroupQuotas for the name passed.",
+ "description": "Deletes the GroupQuotas for the name passed. All the remaining shareQuota in the GroupQuotas will be lost.",
+ "operationId": "GroupQuotas_Delete",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "GroupQuotas_Delete_Request_ForCompute": {
+ "$ref": "./examples/GroupQuotas/DeleteGroupQuotas.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request Accepted",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content."
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas": {
+ "get": {
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "tags": [
+ "GroupQuotas"
+ ],
+ "summary": "Lists GroupQuotas for the scope passed.",
+ "description": "Lists GroupQuotas for the scope passed. It will return the GroupQuotas QuotaEntity properties only.The details on group quota can be access from the group quota APIs.",
+ "operationId": "GroupQuotas_List",
+ "x-ms-examples": {
+ "GroupQuotas_List_Request_ForCompute": {
+ "$ref": "./examples/GroupQuotas/GetGroupQuotasList.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/subscriptions/{subscriptionId}": {
+ "put": {
+ "tags": [
+ "GroupQuotasSubscriptions"
+ ],
+ "summary": "Adds subscription to the GroupQuotas.",
+ "description": "Adds a subscription to GroupQuotas. The subscriptions will be validated based on the additionalAttributes defined in the GroupQuota. The additionalAttributes works as filter for the subscriptions, which can be included in the GroupQuotas. The request's TenantId is validated against the subscription's TenantId.",
+ "operationId": "GroupQuotaSubscriptions_CreateOrUpdate",
+ "x-ms-examples": {
+ "GroupQuotaSubscriptions_Put_Subscriptions": {
+ "$ref": "./examples/GroupQuotasSubscriptions/PutGroupQuotasSubscription.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Create or Update",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionId"
+ }
+ },
+ "201": {
+ "description": "Request Accepted, Create or Update",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers. New guidelines - https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#131-resource-based-long-running-operations-relo",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/LROResponse"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "GroupQuotasSubscriptions"
+ ],
+ "summary": "Updates the GroupQuotas with the subscription to add to the subscriptions list.",
+ "description": "Updates the GroupQuotas with the subscription to add to the subscriptions list. The subscriptions will be validated if additionalAttributes are defined in the GroupQuota. The request's TenantId is validated against the subscription's TenantId.",
+ "operationId": "GroupQuotaSubscriptions_Update",
+ "x-ms-examples": {
+ "GroupQuotaSubscriptions_Patch_Subscriptions": {
+ "$ref": "./examples/GroupQuotasSubscriptions/PatchGroupQuotasSubscription.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionId"
+ }
+ },
+ "202": {
+ "description": "Request Accepted",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "GroupQuotasSubscriptions"
+ ],
+ "summary": "Removes the subscription from GroupQuotas.",
+ "description": "Removes the subscription from GroupQuotas. The request's TenantId is validated against the subscription's TenantId.",
+ "operationId": "GroupQuotaSubscriptions_Delete",
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "GroupQuotaSubscriptions_Delete_Subscriptions": {
+ "$ref": "./examples/GroupQuotasSubscriptions/DeleteGroupQuotaSubscriptions.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Request Accepted",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content."
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "GroupQuotasSubscriptions"
+ ],
+ "summary": "Returns the subscriptionId along with its provisioning state for being associated with the GroupQuotas.",
+ "description": "Returns the subscriptionIds along with its provisioning state for being associated with the GroupQuota. If the subscription is not a member of GroupQuota, it will return 404, else 200.",
+ "operationId": "GroupQuotaSubscriptions_Get",
+ "x-ms-examples": {
+ "GroupQuotaSubscriptions_Get_Subscriptions": {
+ "$ref": "./examples/GroupQuotasSubscriptions/GetGroupQuotaSubscriptions.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionId"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/subscriptions": {
+ "get": {
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "tags": [
+ "GroupQuotasSubscriptions"
+ ],
+ "summary": "Returns a list of the subscriptionIds for the GroupQuotas.",
+ "description": "Returns a list of the subscriptionIds associated with the GroupQuotas.",
+ "operationId": "GroupQuotaSubscriptions_List",
+ "x-ms-examples": {
+ "GroupQuotaSubscriptions_List_Subscriptions": {
+ "$ref": "./examples/GroupQuotasSubscriptions/ListGroupQuotaSubscriptions.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionIdList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/subscriptionRequests": {
+ "get": {
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "tags": [
+ "GroupQuotaSubscriptionRequests"
+ ],
+ "summary": "List the status of all requests to add subscriptionIds to the GroupQuotasEntity.",
+ "description": "List API to check the status of a subscriptionId requests by requestId. Request history is maintained for 1 year.",
+ "operationId": "GroupQuotaSubscriptionRequests_List",
+ "x-ms-examples": {
+ "GroupQuotaSubscriptionRequests_List": {
+ "$ref": "./examples/SubscriptionRequests/SubscriptionRequests_List.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success, with the details of the subscriptionId request.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionRequestStatusList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/subscriptionRequests/{requestId}": {
+ "get": {
+ "tags": [
+ "GroupQuotaSubscriptionRequests"
+ ],
+ "summary": "Get the status of a single subscriptionId request by requestId. The Async pattern will be used, if we determine the request is taking longer, else it can return 200 response as response to the subscription add API call.",
+ "description": "Get API to check the status of a subscriptionIds request by requestId. Use the polling API - OperationsStatus URI specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate status. This API provides the finals status with the request details and status.",
+ "operationId": "GroupQuotaSubscriptionRequests_Get",
+ "x-ms-examples": {
+ "GroupQuotaSubscriptionRequests_Get": {
+ "$ref": "./examples/SubscriptionRequests/SubscriptionRequests_Get.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/RequestId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success, with the details of the subscriptionId request.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionRequestStatus"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/resourceProviders/{resourceProviderName}/groupQuotaLimits/{location}": {
+ "patch": {
+ "tags": [
+ "GroupQuotaLimits"
+ ],
+ "summary": "Create the GroupQuota requests for a specific ResourceProvider/Location/Resource.",
+ "description": "Create the GroupQuota requests for a specific ResourceProvider/Location/Resource. The resourceName properties are specified in the request body. Only 1 resource quota can be requested. Please note that patch request creates a new groupQuota request.\nUse the polling API - OperationsStatus URI specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate status. This API provides the finals status with the request details and status.",
+ "operationId": "GroupQuotaLimitsRequest_Update",
+ "x-ms-examples": {
+ "GroupQuotaLimitsRequests_Update": {
+ "$ref": "./examples/GroupQuotaLimitsRequests/PatchGroupQuotaLimitsRequests-Compute.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "groupQuotaRequest",
+ "in": "body",
+ "description": "The GroupQuotaRequest body details for specific resourceProvider/location/resources.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaLimitList"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success, with the details of the group quota request.",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaLimitList"
+ }
+ },
+ "202": {
+ "description": "Request Accepted, Create or Update",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers. New guidelines - https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#131-resource-based-long-running-operations-relo",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "GroupQuotaLimits"
+ ],
+ "summary": "Gets the GroupQuotaLimits for the specified resource provider and location for resource names passed in $filter=resourceName eq {SKU}.",
+ "description": "Gets the GroupQuotaLimits for the specified resource provider and location for resource names passed in $filter=resourceName eq {SKU}.",
+ "operationId": "GroupQuotaLimits_List",
+ "x-ms-examples": {
+ "GroupQuotaLimits_Get_Request_ForCompute": {
+ "$ref": "./examples/GroupQuotaLimits/ListGroupQuotaLimits-Compute.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/GroupQuotaLimitList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/groupQuotaRequests/{requestId}": {
+ "get": {
+ "tags": [
+ "GroupQuotaLimitRequest"
+ ],
+ "summary": "Get the status of a single GroupQuota request by requestId.",
+ "description": "Get API to check the status of a GroupQuota request by requestId.",
+ "operationId": "GroupQuotaLimitsRequest_Get",
+ "x-ms-examples": {
+ "GroupQuotaLimitsRequests_Get": {
+ "$ref": "./examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_Get.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/RequestId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success, with the details of the group quota request.",
+ "schema": {
+ "$ref": "#/definitions/SubmittedResourceRequestStatus"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/resourceProviders/{resourceProviderName}/groupQuotaRequests": {
+ "get": {
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "tags": [
+ "GroupQuotaLimitRequest"
+ ],
+ "summary": "Get the status of a single GroupQuota request by requestId.",
+ "description": "Get API to check the status of a GroupQuota request by requestId.",
+ "operationId": "GroupQuotaLimitsRequest_List",
+ "x-ms-examples": {
+ "GroupQuotaLimitsRequest_List": {
+ "$ref": "./examples/GroupQuotaLimitsRequests/GroupQuotaLimitsRequests_List.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/FilterResourceAndLocationInQuery"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success, with the details of the group quota request.",
+ "schema": {
+ "$ref": "#/definitions/SubmittedResourceRequestStatusList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/subscriptions/{subscriptionId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/resourceProviders/{resourceProviderName}/quotaAllocations/{location}": {
+ "patch": {
+ "tags": [
+ "SubscriptionQuotaAllocation"
+ ],
+ "summary": "Request to assign quota from group quota to a specific Subscription. This request will use Asynchronous pattern with 202 response and status polling API.",
+ "description": "Request to assign quota from group quota to a specific Subscription. The assign GroupQuota to subscriptions or reduce the quota allocated to subscription to give back the unused quota ( quota >= usages) to the groupQuota. So, this API can be used to assign Quota to subscriptions and assign back unused quota to group quota, which can be assigned to another subscriptions in the GroupQuota. User can collect unused quotas from multiple subscriptions within the groupQuota and assign the groupQuota to the subscription, where it's needed.",
+ "operationId": "GroupQuotaSubscriptionAllocationRequest_Update",
+ "x-ms-examples": {
+ "SubscriptionQuotaAllocation_Patch_Request_ForCompute": {
+ "$ref": "./examples/SubscriptionQuotaAllocationRequests/PatchSubscriptionQuotaAllocationRequest-Compute.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "allocateQuotaRequest",
+ "in": "body",
+ "description": "Quota requests payload.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SubscriptionQuotaAllocationsList"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SubscriptionQuotaAllocationsList"
+ }
+ },
+ "202": {
+ "description": "Request Accepted",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "Location": {
+ "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers",
+ "type": "string"
+ },
+ "Azure-AsyncOperation": {
+ "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "SubscriptionQuotaAllocation"
+ ],
+ "summary": "Gets all the quota allocated to a subscription for the specified resource provider and location for resource names passed in $filter=resourceName eq {SKU}.",
+ "description": "Gets all the quota allocated to a subscription for the specified resource provider and location for resource names passed in $filter=resourceName eq {SKU}. This will include the GroupQuota and total quota allocated to the subscription. Only the Group quota allocated to the subscription can be allocated back to the MG Group Quota.",
+ "operationId": "GroupQuotaSubscriptionAllocation_List",
+ "x-ms-examples": {
+ "SubscriptionQuotaAllocation_List_ForCompute": {
+ "$ref": "./examples/SubscriptionQuotaAllocation/SubscriptionQuotaAllocation_List-Compute.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SubscriptionQuotaAllocationsList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/subscriptions/{subscriptionId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/resourceProviders/{resourceProviderName}/quotaAllocationRequests/{allocationId}": {
+ "get": {
+ "tags": [
+ "SubscriptionQuotaAllocationRequest"
+ ],
+ "operationId": "GroupQuotaSubscriptionAllocationRequest_Get",
+ "summary": "Get the status of the quota allocation request for the subscriptionId.",
+ "description": "Get the quota allocation request status for the subscriptionId by allocationId.",
+ "x-ms-examples": {
+ "SubscriptionQuotaAllocationRequests_Get_Request_ForCompute": {
+ "$ref": "./examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_Get-Compute.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "#/parameters/AllocationId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/QuotaAllocationRequestStatus"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Management/managementGroups/{managementGroupId}/subscriptions/{subscriptionId}/providers/Microsoft.Quota/groupQuotas/{groupQuotaName}/resourceProviders/{resourceProviderName}/quotaAllocationRequests": {
+ "get": {
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "tags": [
+ "SubscriptionQuotaAllocationRequest"
+ ],
+ "summary": "Get all the quotaAllocationRequests for a resourceProvider/location.",
+ "description": "Get all the quotaAllocationRequests for a resourceProvider/location. The filter paramter for location is required.",
+ "operationId": "GroupQuotaSubscriptionAllocationRequest_List",
+ "x-ms-examples": {
+ "SubscriptionQuotaAllocation_List_Request_ForCompute": {
+ "$ref": "./examples/SubscriptionQuotaAllocationRequests/SubscriptionQuotaAllocationRequests_List-Compute.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagementGroupId"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/GroupQuotaName"
+ },
+ {
+ "$ref": "#/parameters/ResourceProviderName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/FilterLocationInQuery"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK.",
+ "schema": {
+ "$ref": "#/definitions/QuotaAllocationRequestStatusList"
+ }
+ },
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "RequestState": {
+ "description": "Request status.",
+ "enum": [
+ "Accepted",
+ "Created",
+ "Invalid",
+ "Succeeded",
+ "Failed",
+ "InProgress",
+ "Canceled"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "name": "RequestState",
+ "modelAsString": true
+ }
+ },
+ "QuotaAllocationRequestStatus": {
+ "type": "object",
+ "description": "The subscription quota allocation status.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "requestedResource": {
+ "$ref": "#/definitions/QuotaAllocationRequestBase"
+ },
+ "requestSubmitTime": {
+ "description": "The request submission time. The date conforms to the following format specified by the ISO 8601 standard: yyyy-MM-ddTHH:mm:ssZ",
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ },
+ "faultCode": {
+ "type": "string",
+ "description": "Details of the failure.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "QuotaAllocationRequestStatusList": {
+ "type": "object",
+ "description": "List of QuotaAllocation Request Status",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "List of QuotaAllocation Request Status",
+ "items": {
+ "$ref": "#/definitions/QuotaAllocationRequestStatus"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "LROResponse": {
+ "type": "object",
+ "description": "The provisioning state for the operation.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ }
+ }
+ }
+ }
+ },
+ "GroupQuotaRequestBase": {
+ "type": "object",
+ "description": "The new GroupQuota limit requested.",
+ "properties": {
+ "properties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "limit": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The new quota limit for the subscription. The incremental quota will be allocated from pre-approved group quota."
+ },
+ "name": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "description": "Name of the resource provided by the resource provider. This property is already included in the request URI, so it is a readonly property returned in the response.",
+ "properties": {
+ "value": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "localizedValue": {
+ "description": "Resource display name.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "region": {
+ "$ref": "#/definitions/RegionScope"
+ },
+ "comments": {
+ "description": "GroupQuota Request comments and details for request. This is optional paramter to provide more details related to the requested resource.",
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "QuotaAllocationRequestBase": {
+ "type": "object",
+ "description": "The new quota request allocated to subscription.",
+ "properties": {
+ "properties": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "properties": {
+ "limit": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The new quota limit for the subscription. The incremental quota will be allocated from pre-approved group quota."
+ },
+ "name": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "description": "Name of the resource provided by the resource provider. This property is already included in the request URI, so it is a readonly property returned in the response.",
+ "readOnly": true,
+ "properties": {
+ "value": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "localizedValue": {
+ "description": "Resource display name.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "region": {
+ "type": "string",
+ "description": "The location for which the subscription is allocated"
+ }
+ }
+ }
+ }
+ },
+ "AllocatedToSubscription": {
+ "type": "object",
+ "description": "SubscriptionIds and quota allocated to subscriptions from the GroupQuota.",
+ "properties": {
+ "subscriptionId": {
+ "type": "string",
+ "description": "An Azure subscriptionId."
+ },
+ "quotaAllocated": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The amount of quota allocated to this subscriptionId from the GroupQuotasEntity."
+ }
+ }
+ },
+ "AllocatedQuotaToSubscriptionList": {
+ "type": "object",
+ "description": "Quota allocated to subscriptions",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "List of Group Quota Limit allocated to subscriptions.",
+ "items": {
+ "$ref": "#/definitions/AllocatedToSubscription"
+ }
+ }
+ }
+ },
+ "GroupQuotaLimit": {
+ "type": "object",
+ "description": "Group Quota limit.",
+ "properties": {
+ "properties": {
+ "description": "Group Quota properties for the specified resource.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GroupQuotaDetails"
+ }
+ ]
+ }
+ }
+ },
+ "RegionScope": {
+ "description": "Location/Azure region for the quota requested for resource.",
+ "type": "string"
+ },
+ "GroupQuotaDetails": {
+ "type": "object",
+ "description": "Group Quota details.",
+ "properties": {
+ "resourceName": {
+ "type": "string",
+ "description": "The resource name, such as SKU name."
+ },
+ "limit": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The current Group Quota Limit at the parentId level."
+ },
+ "comment": {
+ "description": "Any comment related to quota request.",
+ "type": "string"
+ },
+ "unit": {
+ "description": " The usages units, such as Count and Bytes. When requesting quota, use the **unit** value returned in the GET response in the request body of your PUT operation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "description": "Name of the resource provided by the resource provider. This property is already included in the request URI, so it is a readonly property returned in the response.",
+ "properties": {
+ "value": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "localizedValue": {
+ "description": "Resource display name.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "availableLimit": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "The available Group Quota Limit at the MG level. This Group quota can be allocated to subscription(s)."
+ },
+ "allocatedToSubscriptions": {
+ "readOnly": true,
+ "$ref": "#/definitions/AllocatedQuotaToSubscriptionList"
+ }
+ }
+ },
+ "GroupQuotaLimitList": {
+ "type": "object",
+ "description": "List of Group Quota Limit details.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ },
+ "value": {
+ "type": "array",
+ "description": "List of Group Quota Limit details.",
+ "items": {
+ "$ref": "#/definitions/GroupQuotaLimit"
+ }
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "GroupQuotaSubscriptionRequestStatus": {
+ "type": "object",
+ "description": "The new quota limit request status.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "subscriptionId": {
+ "type": "string",
+ "description": "The subscription Id"
+ },
+ "requestSubmitTime": {
+ "description": "The request submission time. The date conforms to the following format specified by the ISO 8601 standard: yyyy-MM-ddTHH:mm:ssZ",
+ "type": "string",
+ "format": "date-time"
+ },
+ "provisioningState": {
+ "description": "Status of this subscriptionId being associated with the GroupQuotasEntity.",
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ }
+ }
+ }
+ }
+ },
+ "GroupQuotaSubscriptionRequestStatusList": {
+ "type": "object",
+ "description": "List of GroupQuotaSubscriptionRequests Status",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "List of GroupQuotaSubscriptionRequests Status",
+ "items": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionRequestStatus"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "GroupQuotaSubscriptionId": {
+ "type": "object",
+ "description": "This represents a Azure subscriptionId that is associated with a GroupQuotasEntity.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "subscriptionId": {
+ "description": "An Azure subscriptionId.",
+ "type": "string"
+ },
+ "provisioningState": {
+ "description": "Status of this subscriptionId being associated with the GroupQuotasEntity.",
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ }
+ }
+ }
+ }
+ },
+ "GroupQuotaSubscriptionIdList": {
+ "type": "object",
+ "description": "List of GroupQuotaSubscriptionIds",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "List of GroupQuotaSubscriptionIds",
+ "items": {
+ "$ref": "#/definitions/GroupQuotaSubscriptionId"
+ }
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SubscriptionQuotaAllocationRequestList": {
+ "type": "object",
+ "description": "List of Allocated Group Quota to the subscriptions.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Allocated Group Quota to subscriptions.",
+ "items": {
+ "$ref": "#/definitions/QuotaAllocationRequestStatus"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SubscriptionGroupQuotaAssignment": {
+ "type": "object",
+ "description": "MGId the source of group quota.",
+ "properties": {
+ "groupQuotaId": {
+ "type": "string",
+ "description": "The group quota id of the quota source."
+ },
+ "quotaAllocated": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The amount of quota allocated to this subscriptionId from the quota source."
+ }
+ }
+ },
+ "SubscriptionQuotaAllocations": {
+ "type": "object",
+ "description": "Quota allocated to a subscription for the specific Resource Provider, Location, ResourceName. This will include the GroupQuota and total quota allocated to the subscription. Only the Group quota allocated to the subscription can be allocated back to the MG Group Quota.",
+ "properties": {
+ "properties": {
+ "description": "Quota properties for the specified resource.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SubscriptionQuotaDetails"
+ }
+ ]
+ }
+ }
+ },
+ "SubscriptionQuotaDetails": {
+ "type": "object",
+ "description": "Subscription Quota details.",
+ "properties": {
+ "resourceName": {
+ "type": "string",
+ "description": "The resource name, such as SKU name."
+ },
+ "limit": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The total quota limit for the subscription.",
+ "readOnly": false
+ },
+ "shareableQuota": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The shareable quota for the subscription.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "readOnly": true,
+ "description": "Name of the resource provided by the resource provider. This property is already included in the request URI, so it is a readonly property returned in the response.",
+ "properties": {
+ "value": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "localizedValue": {
+ "description": "Resource display name.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "SubmittedResourceRequestStatus": {
+ "type": "object",
+ "description": "Status of a single GroupQuota request.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "requestedResource": {
+ "description": "Requested Resource.",
+ "$ref": "#/definitions/GroupQuotaRequestBase"
+ },
+ "requestSubmitTime": {
+ "description": "The request submission time. The date conforms to the following format specified by the ISO 8601 standard: yyyy-MM-ddTHH:mm:ssZ",
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ },
+ "faultCode": {
+ "type": "string",
+ "description": "Details of the failure.",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "SubmittedResourceRequestStatusList": {
+ "type": "object",
+ "description": "Share Quota Entity list.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Subscription groupQuotaRequests list.",
+ "items": {
+ "$ref": "#/definitions/SubmittedResourceRequestStatus"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SubscriptionQuotaAllocationsStatusList": {
+ "type": "object",
+ "description": "Subscription quota allocation requests status list.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Subscription quota allocation status list.",
+ "items": {
+ "$ref": "#/definitions/SubmittedResourceRequestStatus"
+ }
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SubscriptionQuotaAllocationsList": {
+ "type": "object",
+ "description": "Subscription quota list.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ },
+ "value": {
+ "type": "array",
+ "description": "Subscription quota list.",
+ "items": {
+ "$ref": "#/definitions/SubscriptionQuotaAllocations"
+ }
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ }
+ },
+ "ResourceBaseRequest": {
+ "type": "object",
+ "description": "Resource definition with the requested quota.",
+ "properties": {
+ "resourceName": {
+ "type": "string",
+ "description": "The resource name, such as SKU name.",
+ "readOnly": true
+ },
+ "limit": {
+ "type": "integer",
+ "description": "Quota requested for the resource.",
+ "format": "int64"
+ },
+ "unit": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Representing the units of the usage quota. Possible values are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond. Based on - https://armwiki.azurewebsites.net/api_contracts/UsagesAPIContract.html?q=usages . Different RPs may have different units, Count, type as int64 should work for most of the integer values."
+ }
+ }
+ },
+ "ResourceUsageList": {
+ "type": "object",
+ "description": "List of resource usages and quotas for GroupQuota.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "List of resource usages at Group Quotas.",
+ "items": {
+ "$ref": "#/definitions/ResourceUsages"
+ }
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ResourceUsages": {
+ "type": "object",
+ "description": "Resource details with usages and GroupQuota.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/GroupQuotaUsagesBase"
+ }
+ }
+ },
+ "GroupQuotaUsagesBase": {
+ "type": "object",
+ "description": "Resource details with usages and GroupQuota.",
+ "properties": {
+ "name": {
+ "type": "object",
+ "x-ms-client-flatten": true,
+ "description": "Name of the resource provided by the resource provider. This property is already included in the request URI, so it is a readonly property returned in the response.",
+ "properties": {
+ "value": {
+ "description": "Resource name.",
+ "type": "string"
+ },
+ "localizedValue": {
+ "description": "Resource display name.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "limit": {
+ "type": "integer",
+ "description": "Quota/limits for the resource.",
+ "format": "int64"
+ },
+ "usages": {
+ "type": "integer",
+ "description": "Usages for the resource.",
+ "format": "int64"
+ },
+ "unit": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Representing the units of the usage quota. Possible values are: Count, Bytes, Seconds, Percent, CountPerSecond, BytesPerSecond. Based on - https://armwiki.azurewebsites.net/api_contracts/UsagesAPIContract.html?q=usages . Different RPs may have different units, Count, type as int64 should work for most of the integer values."
+ }
+ }
+ },
+ "GroupQuotasEntityBase": {
+ "type": "object",
+ "description": "Properties and filters for ShareQuota. The request parameter is optional, if there are no filters specified.",
+ "properties": {
+ "displayName": {
+ "description": "Display name of the GroupQuota entity.",
+ "type": "string"
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the operation.",
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ }
+ }
+ },
+ "GroupQuotasEntityBasePatch": {
+ "type": "object",
+ "description": "Properties and filters for ShareQuota. The request parameter is optional, if there are no filters specified.",
+ "properties": {
+ "displayName": {
+ "description": "Display name of the GroupQuota entity.",
+ "type": "string"
+ },
+ "provisioningState": {
+ "description": "Provisioning state of the operation.",
+ "readOnly": true,
+ "$ref": "#/definitions/RequestState"
+ }
+ }
+ },
+ "GroupQuotasEntityPatch": {
+ "type": "object",
+ "description": "Properties and filters for ShareQuota. The request parameter is optional, if there are no filters specified.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "title": "Properties",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GroupQuotasEntityBasePatch"
+ }
+ ]
+ }
+ }
+ },
+ "GroupQuotasEntity": {
+ "type": "object",
+ "description": "Properties and filters for ShareQuota. The request parameter is optional, if there are no filters specified.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "title": "Properties",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GroupQuotasEntityBase"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ },
+ "GroupQuotaList": {
+ "type": "object",
+ "description": "List of Group Quotas at MG level.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "List of Group Quotas at MG level.",
+ "items": {
+ "$ref": "#/definitions/GroupQuotasEntity"
+ }
+ },
+ "nextLink": {
+ "description": "The URL to use for getting the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "RequestId": {
+ "name": "requestId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Request Id.",
+ "x-ms-parameter-location": "method"
+ },
+ "ResourceName": {
+ "name": "resourceName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z][a-z0-9]*$",
+ "minLength": 3,
+ "maxLength": 63,
+ "description": "Resource name.",
+ "x-ms-parameter-location": "method"
+ },
+ "AllocationId": {
+ "name": "allocationId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Request Id.",
+ "x-ms-parameter-location": "method"
+ },
+ "ManagementGroupId": {
+ "name": "managementGroupId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "minLength": 3,
+ "maxLength": 63,
+ "description": "Management Group Id.",
+ "x-ms-parameter-location": "method"
+ },
+ "GroupQuotaName": {
+ "name": "groupQuotaName",
+ "in": "path",
+ "required": true,
+ "pattern": "^[a-z][a-z0-9]*$",
+ "minLength": 3,
+ "maxLength": 63,
+ "type": "string",
+ "description": "The GroupQuota name. The name should be unique for the provided context tenantId/MgId.",
+ "x-ms-parameter-location": "method"
+ },
+ "ResourceProviderName": {
+ "name": "resourceProviderName",
+ "in": "path",
+ "pattern": "^((?!-)[a-zA-Z0-9-]{1,63}(?
Date: Thu, 19 Dec 2024 13:55:36 -0600
Subject: [PATCH 036/128] [Language Text] Renaming for 2024-11-15 .NET Beta SDK
release (#31898)
client renames for 2024-11-15 .NET Beta SDK
---
.../cognitiveservices/Language.AnalyzeText/client.tsp | 11 ++++++++++-
.../Language.AnalyzeText/models/custom.text.tsp | 7 +++++++
.../models/entity.recognition.tsp | 7 -------
3 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/specification/cognitiveservices/Language.AnalyzeText/client.tsp b/specification/cognitiveservices/Language.AnalyzeText/client.tsp
index 6f1a63fb1bc3..0472cf96bc37 100644
--- a/specification/cognitiveservices/Language.AnalyzeText/client.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeText/client.tsp
@@ -899,10 +899,14 @@ namespace Language.AnalyzeTextClientCustomizations;
@@clientName(analyzeTextJobStatus, "AnalyzeTextOperationStatus", "csharp");
@@clientName(analyzeTextCancelJob, "AnalyzeTextCancelOperation", "csharp");
-@@clientName(EntitiesDocumentResultWithDetectedLanguage,
+@@clientName(EntitiesDocumentResultWithMetadataDetectedLanguage,
"EntityActionResult",
"csharp"
);
+@@clientName(EntitiesDocumentResultWithMetadata,
+ "EntityActionResultWithMetadata",
+ "csharp"
+);
@@clientName(ClassificationDocumentResultWithDetectedLanguage,
"ClassificationActionResult",
"csharp"
@@ -932,3 +936,8 @@ namespace Language.AnalyzeTextClientCustomizations;
"HealthcareActionResult",
"csharp"
);
+@@clientName(EntitiesDocumentResultWithDetectedLanguage,
+ "CustomEntityActionResult",
+ "csharp"
+);
+@@clientName(PiiEntityWithTags, "PiiEntity", "csharp");
diff --git a/specification/cognitiveservices/Language.AnalyzeText/models/custom.text.tsp b/specification/cognitiveservices/Language.AnalyzeText/models/custom.text.tsp
index 1a8944054a08..79a7c511f278 100644
--- a/specification/cognitiveservices/Language.AnalyzeText/models/custom.text.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeText/models/custom.text.tsp
@@ -33,6 +33,13 @@ model CustomEntitiesResult is CustomResult {
documents: Array;
}
+/** Contains the entity recognition task result for the document with detected language. */
+@added(Versions.v2024_11_15_preview)
+model EntitiesDocumentResultWithDetectedLanguage {
+ ...EntitiesDocumentResult;
+ ...DocumentDetectedLanguage;
+}
+
/** Supported parameters for a Custom Single Classification task. */
model CustomSingleLabelClassificationTaskParameters is CustomTaskParameters;
diff --git a/specification/cognitiveservices/Language.AnalyzeText/models/entity.recognition.tsp b/specification/cognitiveservices/Language.AnalyzeText/models/entity.recognition.tsp
index 97620855e7bc..9d7d1f76468e 100644
--- a/specification/cognitiveservices/Language.AnalyzeText/models/entity.recognition.tsp
+++ b/specification/cognitiveservices/Language.AnalyzeText/models/entity.recognition.tsp
@@ -80,13 +80,6 @@ model EntitiesDocumentResult is DocumentResult {
entities: Array;
}
-/** Contains the entity recognition task result for the document with detected language. */
-@added(Versions.v2024_11_15_preview)
-model EntitiesDocumentResultWithDetectedLanguage {
- ...EntitiesDocumentResult;
- ...DocumentDetectedLanguage;
-}
-
/** Contains the entity recognition task result for the document with metadata and detected language. */
@added(Versions.v2024_11_15_preview)
model EntitiesDocumentResultWithMetadataDetectedLanguage
From 07871a54ffd6c2fc56823d0c808e9e0ec6ca6200 Mon Sep 17 00:00:00 2001
From: Xiaofei Cao <92354331+XiaofeiCao@users.noreply.github.com>
Date: Fri, 20 Dec 2024 09:32:11 +0800
Subject: [PATCH 037/128] java mgmt, migrate storagemover to azure-json
(#31931)
---
specification/storagemover/resource-manager/readme.java.md | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/specification/storagemover/resource-manager/readme.java.md b/specification/storagemover/resource-manager/readme.java.md
index 2d18b4c34847..529aace8b346 100644
--- a/specification/storagemover/resource-manager/readme.java.md
+++ b/specification/storagemover/resource-manager/readme.java.md
@@ -3,5 +3,6 @@
These settings apply only when `--java` is specified on the command line.
``` yaml $(java)
-stream-style-serialization: false
+service-name: Storage Mover
+title: StorageMoverManagementClient
```
\ No newline at end of file
From bf420af156ea90b4226e96582bdb4c9647491ae6 Mon Sep 17 00:00:00 2001
From: Theodore Chang
Date: Fri, 20 Dec 2024 10:45:19 +0900
Subject: [PATCH 038/128] Compute CloudService 2024-11-04 version (#31910)
* create new version folder
* update version references
* update readme
* Adding new property isBootstrapCertificate to CSES (#31851)
* adding isBootstrapCertificate property
* addressing PR comments
* running prettier
---------
Co-authored-by: avilgoelms <163285360+avilgoelms@users.noreply.github.com>
---
.../stable/2024-11-04/cloudService.json | 2695 +++++++++++++++++
.../examples/CloudServiceOSFamilies_List.json | 51 +
.../examples/CloudServiceOSFamily_Get.json | 30 +
.../examples/CloudServiceOSVersion_Get.json | 26 +
.../examples/CloudServiceOSVersion_List.json | 43 +
.../CloudServiceRoleInstance_Delete.json | 18 +
...iceRoleInstance_Delete_ByCloudService.json | 22 +
.../CloudServiceRoleInstance_Get.json | 32 +
...dServiceRoleInstance_Get_InstanceView.json | 26 +
...iceRoleInstance_Get_RemoteDesktopFile.json | 14 +
.../CloudServiceRoleInstance_Rebuild.json | 17 +
...ceRoleInstance_Rebuild_ByCloudService.json | 22 +
.../CloudServiceRoleInstance_Reimage.json | 17 +
...ceRoleInstance_Reimage_ByCloudService.json | 22 +
.../CloudServiceRoleInstance_Restart.json | 17 +
...ceRoleInstance_Restart_ByCloudService.json | 22 +
.../examples/CloudServiceRole_Get.json | 27 +
.../examples/CloudServiceRole_List.json | 44 +
.../CloudServiceRolesInstance_List.json | 92 +
.../CloudServiceUpdateDomain_Get.json | 17 +
.../CloudServiceUpdateDomain_List.json | 24 +
.../CloudServiceUpdateDomain_Update.json | 17 +
.../CloudService_Create_WithMultiRole.json | 182 ++
...ervice_Create_WithMultiRole_WithZones.json | 191 ++
.../CloudService_Create_WithSingleRole.json | 158 +
...e_Create_WithSingleRoleAndCertificate.json | 197 ++
...udService_Create_WithSingleRoleAndRDP.json | 209 ++
.../examples/CloudService_Delete.json | 17 +
...Service_Get_InstanceViewWithMultiRole.json | 58 +
.../CloudService_Get_WithMultiRoleAndRDP.json | 88 +
.../CloudService_List_ByResourceGroup.json | 87 +
.../CloudService_List_BySubscription.json | 86 +
.../examples/CloudService_PowerOff.json | 16 +
.../examples/CloudService_Start.json | 16 +
.../CloudService_Update_ToIncludeTags.json | 74 +
.../compute/resource-manager/readme.md | 37 +-
36 files changed, 4710 insertions(+), 1 deletion(-)
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamilies_List.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamily_Get.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_Get.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_List.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete_ByCloudService.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_InstanceView.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_RemoteDesktopFile.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild_ByCloudService.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage_ByCloudService.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart_ByCloudService.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_Get.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_List.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRolesInstance_List.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Get.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_List.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Update.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole_WithZones.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRole.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndCertificate.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndRDP.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Delete.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_InstanceViewWithMultiRole.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_WithMultiRoleAndRDP.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_ByResourceGroup.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_BySubscription.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_PowerOff.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Start.json
create mode 100644 specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Update_ToIncludeTags.json
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json
new file mode 100644
index 000000000000..f3ec2bfc65e4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json
@@ -0,0 +1,2695 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "CloudServiceManagementClient",
+ "description": "The Cloud Service Management Client.",
+ "version": "2024-11-04"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}": {
+ "delete": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Deletes a role instance from a cloud service.",
+ "operationId": "CloudServiceRoleInstances_Delete",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Cloud Service Role Instance": {
+ "$ref": "./examples/CloudServiceRoleInstance_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Gets a role instance from a cloud service.",
+ "operationId": "CloudServiceRoleInstances_Get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "query",
+ "name": "$expand",
+ "description": "The expand expression to apply to the operation. 'UserData' is not supported for cloud services.",
+ "type": "string",
+ "enum": [
+ "instanceView",
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RoleInstance"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Role Instance": {
+ "$ref": "./examples/CloudServiceRoleInstance_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/instanceView": {
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Retrieves information about the run-time state of a role instance in a cloud service.",
+ "operationId": "CloudServiceRoleInstances_GetInstanceView",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RoleInstanceInstanceView"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Instance View of Cloud Service Role Instance": {
+ "$ref": "./examples/CloudServiceRoleInstance_Get_InstanceView.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances": {
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Gets the list of all role instances in a cloud service. Use nextLink property in the response to get the next page of role instances. Do this till nextLink is null to fetch all the role instances.",
+ "operationId": "CloudServiceRoleInstances_List",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "query",
+ "name": "$expand",
+ "description": "The expand expression to apply to the operation. 'UserData' is not supported for cloud services.",
+ "type": "string",
+ "enum": [
+ "instanceView",
+ "userData"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RoleInstanceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Role Instances in a Cloud Service": {
+ "$ref": "./examples/CloudServiceRolesInstance_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/restart": {
+ "post": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "The Reboot Role Instance asynchronous operation requests a reboot of a role instance in the cloud service.",
+ "operationId": "CloudServiceRoleInstances_Restart",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Restart Cloud Service Role Instance": {
+ "$ref": "./examples/CloudServiceRoleInstance_Restart.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/reimage": {
+ "post": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "The Reimage Role Instance asynchronous operation reinstalls the operating system on instances of web roles or worker roles.",
+ "operationId": "CloudServiceRoleInstances_Reimage",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Reimage Cloud Service Role Instance": {
+ "$ref": "./examples/CloudServiceRoleInstance_Reimage.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/rebuild": {
+ "post": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "The Rebuild Role Instance asynchronous operation reinstalls the operating system on instances of web roles or worker roles and initializes the storage resources that are used by them. If you do not want to initialize storage resources, you can use Reimage Role Instance.",
+ "operationId": "CloudServiceRoleInstances_Rebuild",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Rebuild Cloud Service Role Instance": {
+ "$ref": "./examples/CloudServiceRoleInstance_Rebuild.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/remoteDesktopFile": {
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Gets a remote desktop file for a role instance in a cloud service.",
+ "operationId": "CloudServiceRoleInstances_GetRemoteDesktopFile",
+ "produces": [
+ "application/x-rdp"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "format": "binary",
+ "type": "file"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Role": {
+ "$ref": "./examples/CloudServiceRoleInstance_Get_RemoteDesktopFile.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roles/{roleName}": {
+ "get": {
+ "tags": [
+ "CloudServiceRoles"
+ ],
+ "description": "Gets a role from a cloud service.",
+ "operationId": "CloudServiceRoles_Get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleName",
+ "description": "Name of the role.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceRole"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Role": {
+ "$ref": "./examples/CloudServiceRole_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roles": {
+ "get": {
+ "tags": [
+ "CloudServiceRoles"
+ ],
+ "description": "Gets a list of all roles in a cloud service. Use nextLink property in the response to get the next page of roles. Do this till nextLink is null to fetch all the roles.",
+ "operationId": "CloudServiceRoles_List",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceRoleListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Roles in a Cloud Service": {
+ "$ref": "./examples/CloudServiceRole_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}": {
+ "put": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Create or update a cloud service. Please note some properties can be set only during cloud service creation.",
+ "operationId": "CloudServices_CreateOrUpdate",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "The cloud service object.",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create New Cloud Service with Single Role": {
+ "$ref": "./examples/CloudService_Create_WithSingleRole.json"
+ },
+ "Create New Cloud Service with Single Role and RDP Extension": {
+ "$ref": "./examples/CloudService_Create_WithSingleRoleAndRDP.json"
+ },
+ "Create New Cloud Service with Multiple Roles": {
+ "$ref": "./examples/CloudService_Create_WithMultiRole.json"
+ },
+ "Create New Cloud Service with Single Role and Certificate from Key Vault": {
+ "$ref": "./examples/CloudService_Create_WithSingleRoleAndCertificate.json"
+ },
+ "Create New Cloud Service with Multiple Roles in a specific availability zone": {
+ "$ref": "./examples//CloudService_Create_WithMultiRole_WithZones.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Update a cloud service.",
+ "operationId": "CloudServices_Update",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "The cloud service object.",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update existing Cloud Service to add tags": {
+ "$ref": "./examples/CloudService_Update_ToIncludeTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Deletes a cloud service.",
+ "operationId": "CloudServices_Delete",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Cloud Service": {
+ "$ref": "./examples/CloudService_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Display information about a cloud service.",
+ "operationId": "CloudServices_Get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service with Multiple Roles and RDP Extension": {
+ "$ref": "./examples/CloudService_Get_WithMultiRoleAndRDP.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/instanceView": {
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Gets the status of a cloud service.",
+ "operationId": "CloudServices_GetInstanceView",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceInstanceView"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Instance View with Multiple Roles": {
+ "$ref": "./examples/CloudService_Get_InstanceViewWithMultiRole.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/cloudServices": {
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Gets a list of all cloud services in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of Cloud Services. Do this till nextLink is null to fetch all the Cloud Services.",
+ "operationId": "CloudServices_ListAll",
+ "parameters": [
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Services in a Subscription": {
+ "$ref": "./examples/CloudService_List_BySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices": {
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Gets a list of all cloud services under a resource group. Use nextLink property in the response to get the next page of Cloud Services. Do this till nextLink is null to fetch all the Cloud Services.",
+ "operationId": "CloudServices_List",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Services in a Resource Group": {
+ "$ref": "./examples/CloudService_List_ByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/start": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Starts the cloud service.",
+ "operationId": "CloudServices_Start",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Start Cloud Service": {
+ "$ref": "./examples/CloudService_Start.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/poweroff": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Power off the cloud service. Note that resources are still attached and you are getting charged for the resources.",
+ "operationId": "CloudServices_PowerOff",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Stop or PowerOff Cloud Service": {
+ "$ref": "./examples/CloudService_PowerOff.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/restart": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Restarts one or more role instances in a cloud service.",
+ "operationId": "CloudServices_Restart",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Restart Cloud Service Role Instances in a Cloud Service": {
+ "$ref": "./examples/CloudServiceRoleInstance_Restart_ByCloudService.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/reimage": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Reimage asynchronous operation reinstalls the operating system on instances of web roles or worker roles.",
+ "operationId": "CloudServices_Reimage",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Reimage Cloud Service Role Instances in a Cloud Service": {
+ "$ref": "./examples/CloudServiceRoleInstance_Reimage_ByCloudService.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/rebuild": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Rebuild Role Instances reinstalls the operating system on instances of web roles or worker roles and initializes the storage resources that are used by them. If you do not want to initialize storage resources, you can use Reimage Role Instances.",
+ "operationId": "CloudServices_Rebuild",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Rebuild Cloud Service Role Instances in a Cloud Service": {
+ "$ref": "./examples/CloudServiceRoleInstance_Rebuild_ByCloudService.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/delete": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Deletes role instances in a cloud service.",
+ "operationId": "CloudServices_DeleteInstances",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Cloud Service Role Instances in a Cloud Service": {
+ "$ref": "./examples/CloudServiceRoleInstance_Delete_ByCloudService.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/updateDomains/{updateDomain}": {
+ "put": {
+ "tags": [
+ "CloudServicesUpdateDomain"
+ ],
+ "description": "Updates the role instances in the specified update domain.",
+ "operationId": "CloudServicesUpdateDomain_WalkUpdateDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "updateDomain",
+ "description": "Specifies an integer value that identifies the update domain. Update domains are identified with a zero-based index: the first update domain has an ID of 0, the second has an ID of 1, and so on.",
+ "required": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "The update domain object.",
+ "schema": {
+ "$ref": "#/definitions/UpdateDomain"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update Cloud Service to specified Domain": {
+ "$ref": "./examples/CloudServiceUpdateDomain_Update.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CloudServicesUpdateDomain"
+ ],
+ "description": "Gets the specified update domain of a cloud service. Use nextLink property in the response to get the next page of update domains. Do this till nextLink is null to fetch all the update domains.",
+ "operationId": "CloudServicesUpdateDomain_GetUpdateDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "updateDomain",
+ "description": "Specifies an integer value that identifies the update domain. Update domains are identified with a zero-based index: the first update domain has an ID of 0, the second has an ID of 1, and so on.",
+ "required": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateDomain"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Update Domain": {
+ "$ref": "./examples/CloudServiceUpdateDomain_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/updateDomains": {
+ "get": {
+ "tags": [
+ "CloudServicesUpdateDomain"
+ ],
+ "description": "Gets a list of all update domains in a cloud service.",
+ "operationId": "CloudServicesUpdateDomain_ListUpdateDomains",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateDomainListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Update Domains in Cloud Service": {
+ "$ref": "./examples/CloudServiceUpdateDomain_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsVersions/{osVersionName}": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets properties of a guest operating system version that can be specified in the XML service configuration (.cscfg) for a cloud service.",
+ "operationId": "CloudServiceOperatingSystems_GetOSVersion",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS version pertains to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "osVersionName",
+ "description": "Name of the OS version.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSVersion"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service OS Version": {
+ "$ref": "./examples/CloudServiceOSVersion_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsVersions": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets a list of all guest operating system versions available to be specified in the XML service configuration (.cscfg) for a cloud service. Use nextLink property in the response to get the next page of OS versions. Do this till nextLink is null to fetch all the OS versions.",
+ "operationId": "CloudServiceOperatingSystems_ListOSVersions",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS versions pertain to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSVersionListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Service OS Versions in a subscription": {
+ "$ref": "./examples/CloudServiceOSVersion_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsFamilies/{osFamilyName}": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets properties of a guest operating system family that can be specified in the XML service configuration (.cscfg) for a cloud service.",
+ "operationId": "CloudServiceOperatingSystems_GetOSFamily",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS family pertains to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "osFamilyName",
+ "description": "Name of the OS family.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSFamily"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service OS Family": {
+ "$ref": "./examples/CloudServiceOSFamily_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsFamilies": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets a list of all guest operating system families available to be specified in the XML service configuration (.cscfg) for a cloud service. Use nextLink property in the response to get the next page of OS Families. Do this till nextLink is null to fetch all the OS Families.",
+ "operationId": "CloudServiceOperatingSystems_ListOSFamilies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS families pertain to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../common-types/v1/common.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSFamilyListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Service OS Families in a subscription": {
+ "$ref": "./examples/CloudServiceOSFamilies_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "InstanceSku": {
+ "description": "The role instance SKU.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The sku name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tier": {
+ "description": "The tier of the cloud service role instance.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RoleInstanceNetworkProfile": {
+ "description": "Describes the network profile for the role instance.",
+ "type": "object",
+ "properties": {
+ "networkInterfaces": {
+ "description": "Specifies the list of resource Ids for the network interfaces associated with the role instance.",
+ "type": "array",
+ "items": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ResourceInstanceViewStatus": {
+ "description": "Instance view status.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The status code.",
+ "type": "string",
+ "readOnly": true
+ },
+ "displayStatus": {
+ "description": "The short localizable label for the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "The detailed status message, including for alerts and error messages.",
+ "type": "string",
+ "readOnly": true
+ },
+ "time": {
+ "format": "date-time",
+ "description": "The time of the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "level": {
+ "description": "The level code.",
+ "enum": [
+ "Info",
+ "Warning",
+ "Error"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "StatusLevelTypes",
+ "modelAsString": false
+ }
+ }
+ }
+ },
+ "RoleInstanceInstanceView": {
+ "description": "The instance view of the role instance.",
+ "type": "object",
+ "properties": {
+ "platformUpdateDomain": {
+ "format": "int32",
+ "description": "The Update Domain.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "platformFaultDomain": {
+ "format": "int32",
+ "description": "The Fault Domain.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "privateId": {
+ "description": "Specifies a unique identifier generated internally for the cloud service associated with this role instance.
NOTE: If you are using Azure Diagnostics extension, this property can be used as 'DeploymentId' for querying details.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceInstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ }
+ }
+ },
+ "RoleInstanceProperties": {
+ "description": "Role instance properties.",
+ "type": "object",
+ "properties": {
+ "networkProfile": {
+ "$ref": "#/definitions/RoleInstanceNetworkProfile"
+ },
+ "instanceView": {
+ "$ref": "#/definitions/RoleInstanceInstanceView"
+ }
+ }
+ },
+ "RoleInstance": {
+ "description": "Describes the cloud service role instance.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource Type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource Location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "sku": {
+ "$ref": "#/definitions/InstanceSku"
+ },
+ "properties": {
+ "$ref": "#/definitions/RoleInstanceProperties"
+ }
+ }
+ },
+ "RoleInstanceListResult": {
+ "description": "The list operation result.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RoleInstance"
+ }
+ },
+ "nextLink": {
+ "description": "The URI to fetch the next page of resources. Use this to get the next page of resources. Do this till nextLink is null to fetch all the resources.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "CloudServiceRoleSku": {
+ "description": "Describes the cloud service role sku.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The sku name. NOTE: If the new SKU is not supported on the hardware the cloud service is currently on, you need to delete and recreate the cloud service or move back to the old sku.",
+ "type": "string"
+ },
+ "tier": {
+ "description": "Specifies the tier of the cloud service. Possible Values are
**Standard**
**Basic**",
+ "type": "string"
+ },
+ "capacity": {
+ "format": "int64",
+ "description": "Specifies the number of role instances in the cloud service.",
+ "type": "integer"
+ }
+ }
+ },
+ "CloudServiceRoleProperties": {
+ "description": "The cloud service role properties.",
+ "type": "object",
+ "properties": {
+ "uniqueId": {
+ "description": "Specifies the ID which uniquely identifies a cloud service role.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServiceRole": {
+ "description": "Describes a role of the cloud service.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource id",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location",
+ "type": "string",
+ "readOnly": true
+ },
+ "sku": {
+ "$ref": "#/definitions/CloudServiceRoleSku"
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServiceRoleProperties"
+ }
+ }
+ },
+ "CloudServiceRoleListResult": {
+ "description": "The list operation result.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceRole"
+ }
+ },
+ "nextLink": {
+ "description": "The URI to fetch the next page of resources. Use this to get the next page of resources. Do this till nextLink is null to fetch all the resources.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "CloudServiceUpgradeMode": {
+ "description": "Update mode for the cloud service. Role instances are allocated to update domains when the service is deployed. Updates can be initiated manually in each update domain or initiated automatically in all update domains.\r\nPossible Values are
**Auto**
**Manual**
**Simultaneous**
\r\nIf not specified, the default value is Auto. If set to Manual, PUT UpdateDomain must be called to apply the update. If set to Auto, the update is automatically applied to each update domain in sequence.",
+ "enum": [
+ "Auto",
+ "Manual",
+ "Simultaneous"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CloudServiceUpgradeMode",
+ "modelAsString": true
+ }
+ },
+ "CloudServiceRoleProfileProperties": {
+ "description": "Describes the role properties.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Resource name.",
+ "type": "string"
+ },
+ "sku": {
+ "$ref": "#/definitions/CloudServiceRoleSku"
+ }
+ }
+ },
+ "CloudServiceRoleProfile": {
+ "description": "Describes the role profile for the cloud service.",
+ "type": "object",
+ "properties": {
+ "roles": {
+ "description": "List of roles for the cloud service.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceRoleProfileProperties"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "CloudServiceVaultCertificate": {
+ "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the role instance.",
+ "type": "object",
+ "properties": {
+ "certificateUrl": {
+ "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret.",
+ "type": "string"
+ },
+ "isBootstrapCertificate": {
+ "description": "Flag indicating if the certificate provided is a bootstrap certificate to be used by the Key Vault Extension to fetch the remaining certificates. ",
+ "type": "boolean"
+ }
+ }
+ },
+ "CloudServiceVaultSecretGroup": {
+ "description": "Describes a set of certificates which are all in the same Key Vault.",
+ "type": "object",
+ "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": {
+ "description": "The list of key vault references in SourceVault which contain certificates.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceVaultCertificate"
+ },
+ "x-ms-identifiers": [
+ "certificateUrl"
+ ]
+ }
+ }
+ },
+ "CloudServiceOsProfile": {
+ "description": "Describes the OS profile for the cloud service.",
+ "type": "object",
+ "properties": {
+ "secrets": {
+ "description": "Specifies set of certificates that should be installed onto the role instances.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceVaultSecretGroup"
+ },
+ "x-ms-identifiers": [
+ "sourceVault/id"
+ ]
+ }
+ }
+ },
+ "LoadBalancerFrontendIpConfigurationProperties": {
+ "description": "Describes a cloud service IP Configuration",
+ "type": "object",
+ "properties": {
+ "publicIPAddress": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The reference to the public ip address resource."
+ },
+ "subnet": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The reference to the virtual network subnet resource."
+ },
+ "privateIPAddress": {
+ "description": "The virtual network private IP address of the IP configuration.",
+ "type": "string"
+ }
+ }
+ },
+ "LoadBalancerFrontendIpConfiguration": {
+ "description": "Specifies the frontend IP to be used for the load balancer. Only IPv4 frontend IP address is supported. Each load balancer configuration must have exactly one frontend IP configuration.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/LoadBalancerFrontendIpConfigurationProperties",
+ "description": "Properties of load balancer frontend ip configuration."
+ }
+ },
+ "required": [
+ "name",
+ "properties"
+ ]
+ },
+ "LoadBalancerConfigurationProperties": {
+ "description": "Describes the properties of the load balancer configuration.",
+ "type": "object",
+ "properties": {
+ "frontendIpConfigurations": {
+ "description": "Specifies the frontend IP to be used for the load balancer. Only IPv4 frontend IP address is supported. Each load balancer configuration must have exactly one frontend IP configuration.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LoadBalancerFrontendIpConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "frontendIpConfigurations"
+ ]
+ },
+ "LoadBalancerConfiguration": {
+ "description": "Describes the load balancer configuration.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the Load balancer",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/LoadBalancerConfigurationProperties",
+ "description": "Properties of the load balancer configuration."
+ }
+ },
+ "required": [
+ "name",
+ "properties"
+ ]
+ },
+ "CloudServiceSlotType": {
+ "description": "Slot type for the cloud service.\r\nPossible values are
**Production**
**Staging**
\r\nIf not specified, the default value is Production.",
+ "enum": [
+ "Production",
+ "Staging"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CloudServiceSlotType",
+ "modelAsString": true
+ }
+ },
+ "CloudServiceNetworkProfile": {
+ "description": "Network Profile for the cloud service.",
+ "type": "object",
+ "properties": {
+ "loadBalancerConfigurations": {
+ "description": "List of Load balancer configurations. Cloud service can have up to two load balancer configurations, corresponding to a Public Load Balancer and an Internal Load Balancer.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LoadBalancerConfiguration"
+ }
+ },
+ "slotType": {
+ "$ref": "#/definitions/CloudServiceSlotType"
+ },
+ "swappableCloudService": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The id reference of the cloud service containing the target IP with which the subject cloud service can perform a swap. This property cannot be updated once it is set. The swappable cloud service referred by this id must be present otherwise an error will be thrown."
+ }
+ }
+ },
+ "CloudServiceVaultAndSecretReference": {
+ "type": "object",
+ "properties": {
+ "sourceVault": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SubResource",
+ "description": "The ARM Resource ID of the Key Vault"
+ },
+ "secretUrl": {
+ "type": "string",
+ "description": "Secret URL which contains the protected settings of the extension"
+ }
+ },
+ "description": "Protected settings for the extension, referenced using KeyVault which are encrypted before sent to the role instance."
+ },
+ "CloudServiceExtensionProperties": {
+ "description": "Extension Properties.",
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "description": "The name of the extension handler publisher.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Specifies the type of the extension.",
+ "type": "string"
+ },
+ "typeHandlerVersion": {
+ "description": "Specifies the version of the extension. Specifies the version of the extension. If this element is not specified or an asterisk (*) is used as the value, the latest version of the extension is used. If the value is specified with a major version number and an asterisk as the minor version number (X.), the latest minor version of the specified major version is selected. If a major version number and a minor version number are specified (X.Y), the specific extension version is selected. If a version is specified, an auto-upgrade is performed on the role instance.",
+ "type": "string"
+ },
+ "autoUpgradeMinorVersion": {
+ "description": "Explicitly specify whether platform can automatically upgrade typeHandlerVersion to higher minor versions when they become available.",
+ "type": "boolean"
+ },
+ "settings": {
+ "description": "Public settings for the extension. For JSON extensions, this is the JSON settings for the extension. For XML Extension (like RDP), this is the XML setting for the extension.",
+ "type": "object"
+ },
+ "protectedSettings": {
+ "description": "Protected settings for the extension which are encrypted before sent to the role instance.",
+ "type": "object"
+ },
+ "protectedSettingsFromKeyVault": {
+ "$ref": "#/definitions/CloudServiceVaultAndSecretReference"
+ },
+ "forceUpdateTag": {
+ "description": "Tag to force apply the provided public and protected settings.\r\nChanging the tag value allows for re-running the extension without changing any of the public or protected settings.\r\nIf forceUpdateTag is not changed, updates to public or protected settings would still be applied by the handler.\r\nIf neither forceUpdateTag nor any of public or protected settings change, extension would flow to the role instance with the same sequence-number, and\r\nit is up to handler implementation whether to re-run it or not",
+ "type": "string"
+ },
+ "provisioningState": {
+ "description": "The provisioning state, which only appears in the response.",
+ "type": "string",
+ "readOnly": true
+ },
+ "rolesAppliedTo": {
+ "description": "Optional list of roles to apply this extension. If property is not specified or '*' is specified, extension is applied to all roles in the cloud service.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "Extension": {
+ "description": "Describes a cloud service Extension.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the extension.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServiceExtensionProperties"
+ }
+ }
+ },
+ "CloudServiceExtensionProfile": {
+ "description": "Describes a cloud service extension profile.",
+ "type": "object",
+ "properties": {
+ "extensions": {
+ "description": "List of extensions for the cloud service.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Extension"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ },
+ "CloudServiceProperties": {
+ "description": "Cloud service properties",
+ "type": "object",
+ "properties": {
+ "packageUrl": {
+ "description": "Specifies a URL that refers to the location of the service package in the Blob service. The service package URL can be Shared Access Signature (SAS) URI from any storage account.\r\nThis is a write-only property and is not returned in GET calls.",
+ "type": "string"
+ },
+ "configuration": {
+ "description": "Specifies the XML service configuration (.cscfg) for the cloud service.",
+ "type": "string"
+ },
+ "configurationUrl": {
+ "description": "Specifies a URL that refers to the location of the service configuration in the Blob service. The service package URL can be Shared Access Signature (SAS) URI from any storage account.\r\nThis is a write-only property and is not returned in GET calls.",
+ "type": "string"
+ },
+ "startCloudService": {
+ "description": "(Optional) Indicates whether to start the cloud service immediately after it is created. The default value is `true`.\r\nIf false, the service model is still deployed, but the code is not run immediately. Instead, the service is PoweredOff until you call Start, at which time the service will be started. A deployed service still incurs charges, even if it is poweredoff.",
+ "type": "boolean"
+ },
+ "allowModelOverride": {
+ "description": "(Optional) Indicates whether the role sku properties (roleProfile.roles.sku) specified in the model/template should override the role instance count and vm size specified in the .cscfg and .csdef respectively.\r\nThe default value is `false`.",
+ "type": "boolean"
+ },
+ "upgradeMode": {
+ "$ref": "#/definitions/CloudServiceUpgradeMode"
+ },
+ "roleProfile": {
+ "$ref": "#/definitions/CloudServiceRoleProfile"
+ },
+ "osProfile": {
+ "$ref": "#/definitions/CloudServiceOsProfile"
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/CloudServiceNetworkProfile"
+ },
+ "extensionProfile": {
+ "$ref": "#/definitions/CloudServiceExtensionProfile"
+ },
+ "provisioningState": {
+ "description": "The provisioning state, which only appears in the response.",
+ "type": "string",
+ "readOnly": true
+ },
+ "uniqueId": {
+ "description": "The unique identifier for the cloud service.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CloudService": {
+ "description": "Describes the cloud service.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServiceProperties"
+ },
+ "systemData": {
+ "$ref": "../../../common-types/v1/common.json#/definitions/SystemData"
+ },
+ "zones": {
+ "description": "List of logical availability zone of the resource. List should contain only 1 zone where cloud service should be provisioned. This field is optional.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "x-ms-azure-resource": true,
+ "required": [
+ "location"
+ ]
+ },
+ "CloudServiceUpdate": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "Resource tags",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "StatusCodeCount": {
+ "description": "The status code and count of the cloud service instance view statuses",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The instance view status code",
+ "type": "string",
+ "readOnly": true
+ },
+ "count": {
+ "format": "int32",
+ "description": "Number of instances having this status code",
+ "type": "integer",
+ "readOnly": true
+ }
+ }
+ },
+ "InstanceViewStatusesSummary": {
+ "description": "Instance view statuses.",
+ "type": "object",
+ "properties": {
+ "statusesSummary": {
+ "description": "The summary.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusCodeCount"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServiceInstanceView": {
+ "description": "InstanceView of CloudService as a whole",
+ "type": "object",
+ "properties": {
+ "roleInstance": {
+ "$ref": "#/definitions/InstanceViewStatusesSummary"
+ },
+ "sdkVersion": {
+ "description": "The version of the SDK that was used to generate the package for the cloud service.",
+ "type": "string",
+ "readOnly": true
+ },
+ "privateIds": {
+ "description": "Specifies a list of unique identifiers generated internally for the cloud service.
NOTE: If you are using Azure Diagnostics extension, this property can be used as 'DeploymentId' for querying details.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceInstanceViewStatus"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServiceListResult": {
+ "description": "The list operation result.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudService"
+ }
+ },
+ "nextLink": {
+ "description": "The URI to fetch the next page of resources. Use this to get the next page of resources. Do this till nextLink is null to fetch all the resources.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "RoleInstances": {
+ "description": "Specifies a list of role instances from the cloud service.",
+ "type": "object",
+ "properties": {
+ "roleInstances": {
+ "description": "List of cloud service role instance names. Value of '*' will signify all role instances of the cloud service.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "roleInstances"
+ ]
+ },
+ "UpdateDomain": {
+ "description": "Defines an update domain for the cloud service.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource Name",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UpdateDomainListResult": {
+ "description": "The list operation result.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpdateDomain"
+ }
+ },
+ "nextLink": {
+ "description": "The URI to fetch the next page of resources. Use this to get the next page of resources. Do this till nextLink is null to fetch all the resources.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "OSVersionProperties": {
+ "description": "OS version properties.",
+ "type": "object",
+ "properties": {
+ "family": {
+ "description": "The family of this OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "familyLabel": {
+ "description": "The family label of this OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "version": {
+ "description": "The OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "label": {
+ "description": "The OS version label.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isDefault": {
+ "description": "Specifies whether this is the default OS version for its family.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "isActive": {
+ "description": "Specifies whether this OS version is active.",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "OSVersion": {
+ "description": "Describes a cloud service OS version.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/OSVersionProperties"
+ }
+ }
+ },
+ "OSVersionListResult": {
+ "description": "The list operation result.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSVersion"
+ }
+ },
+ "nextLink": {
+ "description": "The URI to fetch the next page of resources. Use this to get the next page of resources. Do this till nextLink is null to fetch all the resources.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "OSVersionPropertiesBase": {
+ "description": "Configuration view of an OS version.",
+ "type": "object",
+ "properties": {
+ "version": {
+ "description": "The OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "label": {
+ "description": "The OS version label.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isDefault": {
+ "description": "Specifies whether this is the default OS version for its family.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "isActive": {
+ "description": "Specifies whether this OS version is active.",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "OSFamilyProperties": {
+ "description": "OS family properties.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The OS family name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "label": {
+ "description": "The OS family label.",
+ "type": "string",
+ "readOnly": true
+ },
+ "versions": {
+ "description": "List of OS versions belonging to this family.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSVersionPropertiesBase"
+ },
+ "x-ms-identifiers": [
+ "version"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "OSFamily": {
+ "description": "Describes a cloud service OS family.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/OSFamilyProperties"
+ }
+ }
+ },
+ "OSFamilyListResult": {
+ "description": "The list operation result.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSFamily"
+ }
+ },
+ "nextLink": {
+ "description": "The URI to fetch the next page of resources. Use this to get the next page of resources. Do this till nextLink is null to fetch all the resources.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamilies_List.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamilies_List.json
new file mode 100644
index 000000000000..5caef1152cda
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamilies_List.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "3",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSFamilies/3",
+ "type": "Microsoft.Compute/locations/cloudServiceOsFamilies",
+ "location": "westus2",
+ "properties": {
+ "name": "3",
+ "label": "Windows Server 2012",
+ "versions": [
+ {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true
+ }
+ ]
+ }
+ },
+ {
+ "name": "4",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSFamilies/4",
+ "type": "Microsoft.Compute/locations/cloudServiceOsFamilies",
+ "location": "westus2",
+ "properties": {
+ "name": "4",
+ "label": "Windows Server 2012 R2",
+ "versions": [
+ {
+ "version": "WA-GUEST-OS-4.83_202010-02",
+ "label": "Windows Azure Guest OS 4.83 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamily_Get.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamily_Get.json
new file mode 100644
index 000000000000..868f0fe9defb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSFamily_Get.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "osFamilyName": "3",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "3",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSFamilies/3",
+ "type": "Microsoft.Compute/locations/cloudServiceOsFamilies",
+ "location": "westus2",
+ "properties": {
+ "name": "3",
+ "label": "Windows Server 2012",
+ "versions": [
+ {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_Get.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_Get.json
new file mode 100644
index 000000000000..5b2391df7a21
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_Get.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "osVersionName": "WA-GUEST-OS-3.90_202010-02",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "WA-GUEST-OS-3.90_202010-02",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSVersions/WA-GUEST-OS-3.90_202010-02",
+ "type": "Microsoft.Compute/locations/cloudServiceOsVersions",
+ "location": "westus2",
+ "properties": {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true,
+ "family": "3",
+ "familyLabel": "Windows Server 2012"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_List.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_List.json
new file mode 100644
index 000000000000..b751bbfb5ef2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceOSVersion_List.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "WA-GUEST-OS-3.90_202010-02",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSVersions/WA-GUEST-OS-3.90_202010-02",
+ "type": "Microsoft.Compute/locations/cloudServiceOsVersions",
+ "location": "westus2",
+ "properties": {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true,
+ "family": "3",
+ "familyLabel": "Windows Server 2012"
+ }
+ },
+ {
+ "name": "WA-GUEST-OS-4.83_202010-02",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSVersions/WA-GUEST-OS-4.83_202010-02",
+ "type": "Microsoft.Compute/locations/cloudServiceOsVersions",
+ "location": "westus2",
+ "properties": {
+ "version": "WA-GUEST-OS-4.83_202010-02",
+ "label": "Windows Azure Guest OS 4.83 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true,
+ "family": "4",
+ "familyLabel": "Windows Server 2012 R2"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete.json
new file mode 100644
index 000000000000..b01427079579
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete_ByCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete_ByCloudService.json
new file mode 100644
index 000000000000..0c221780adb7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Delete_ByCloudService.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get.json
new file mode 100644
index 000000000000..576635a70b03
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{roleInstance-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/{roleInstance-name}",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/{roleInstance-name}/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_InstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_InstanceView.json
new file mode 100644
index 000000000000..fbc4c686e64e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_InstanceView.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "platformUpdateDomain": 0,
+ "platformFaultDomain": 0,
+ "privateId": "3491bc0c-1f6c-444f-b1d0-ec0751a74e3e",
+ "statuses": [
+ {
+ "code": "RoleState/RoleStateStarted",
+ "level": "Info",
+ "displayStatus": "RoleStateStarted",
+ "message": ""
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_RemoteDesktopFile.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_RemoteDesktopFile.json
new file mode 100644
index 000000000000..a268df137179
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Get_RemoteDesktopFile.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "roleInstanceName": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "resourceGroupName": "rgcloudService",
+ "cloudServiceName": "aaaa",
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild.json
new file mode 100644
index 000000000000..cebedb163169
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild_ByCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild_ByCloudService.json
new file mode 100644
index 000000000000..0c221780adb7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Rebuild_ByCloudService.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage.json
new file mode 100644
index 000000000000..cebedb163169
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage_ByCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage_ByCloudService.json
new file mode 100644
index 000000000000..0c221780adb7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Reimage_ByCloudService.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart.json
new file mode 100644
index 000000000000..cebedb163169
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart_ByCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart_ByCloudService.json
new file mode 100644
index 000000000000..0c221780adb7
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRoleInstance_Restart_ByCloudService.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_Get.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_Get.json
new file mode 100644
index 000000000000..1b72583202a1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_Get.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleName": "{role-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{role-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roles/{role-name}",
+ "type": "Microsoft.Compute/cloudServices/roles",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ },
+ "properties": {
+ "uniqueId": "b03bc269-766b-4921-b91a-7dffaae4d03b:{role-name}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_List.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_List.json
new file mode 100644
index 000000000000..4bfae7608a17
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRole_List.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "ContosoFrontend",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roles/ContosoFrontend",
+ "type": "Microsoft.Compute/cloudServices/roles",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ },
+ "properties": {
+ "uniqueId": "b03bc269-766b-4921-b91a-7dffaae4d03b:ContosoFrontend"
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roles/ContosoBackend",
+ "type": "Microsoft.Compute/cloudServices/roles",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ },
+ "properties": {
+ "uniqueId": "b03bc269-766b-4921-b91a-7dffaae4d03b:ContosoBackend"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRolesInstance_List.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRolesInstance_List.json
new file mode 100644
index 000000000000..6025dd5309b5
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceRolesInstance_List.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "ContosoFrontend_IN_0",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_0",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_0/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "ContosoFrontend_IN_1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_1",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_1/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "ContosoBackend_IN_0",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_0",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_0/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "ContosoBackend_IN_1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_1",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_1/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Get.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Get.json
new file mode 100644
index 000000000000..a2ac54b196e5
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Get.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "updateDomain": 1,
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/updateDomains/1"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_List.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_List.json
new file mode 100644
index 000000000000..09f30006c698
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_List.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "0",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/updateDomains/0"
+ },
+ {
+ "name": "1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/updateDomains/1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Update.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Update.json
new file mode 100644
index 000000000000..221e988b8e16
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudServiceUpdateDomain_Update.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "updateDomain": 1,
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole.json
new file mode 100644
index 000000000000..5da6023a65cf
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole.json
@@ -0,0 +1,182 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ },
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoBackend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "7f3edf91-cb34-4a3e-971a-177dc3dd43cb"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "7f3edf91-cb34-4a3e-971a-177dc3dd43cb"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole_WithZones.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole_WithZones.json
new file mode 100644
index 000000000000..1c24e9927299
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithMultiRole_WithZones.json
@@ -0,0 +1,191 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ },
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoBackend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ },
+ "location": "westus",
+ "zones": [
+ "1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "7f3edf91-cb34-4a3e-971a-177dc3dd43cb"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ },
+ "zones": [
+ "1"
+ ]
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "7f3edf91-cb34-4a3e-971a-177dc3dd43cb"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ },
+ "zones": [
+ "1"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRole.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRole.json
new file mode 100644
index 000000000000..054c4510ef8c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRole.json
@@ -0,0 +1,158 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/myPublicIP"
+ }
+ },
+ "name": "myfe"
+ }
+ ]
+ },
+ "name": "myLoadBalancer"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/5393f919-a68a-43d0-9063-4b2bda6bffdf/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "packageUrl": "{PackageUrl}",
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/myPublicIP"
+ }
+ },
+ "name": "myfe"
+ }
+ ]
+ },
+ "name": "myLoadBalancer"
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "14d10b45-ced7-42ef-a406-50a3df2cea7d"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/5393f919-a68a-43d0-9063-4b2bda6bffdf/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "packageUrl": "{PackageUrl}",
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/myPublicIP"
+ }
+ },
+ "name": "myfe"
+ }
+ ]
+ },
+ "name": "myLoadBalancer"
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "14d10b45-ced7-42ef-a406-50a3df2cea7d"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndCertificate.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndCertificate.json
new file mode 100644
index 000000000000..124c90979697
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndCertificate.json
@@ -0,0 +1,197 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.KeyVault/vaults/{keyvault-name}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "https://{keyvault-name}.vault.azure.net:443/secrets/ContosoCertificate/{secret-id}",
+ "isBootstrapCertificate": true
+ }
+ ]
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.KeyVault/vaults/{keyvault-name}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "https://{keyvault-name}.vault.azure.net:443/secrets/ContosoCertificate/{secret-id}",
+ "isBootstrapCertificate": true
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "60b6cd59-600b-4e02-b717-521b07aa94bf"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.KeyVault/vaults/{keyvault-name}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "https://{keyvault-name}.vault.azure.net:443/secrets/ContosoCertificate/{secret-id}",
+ "isBootstrapCertificate": true
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "60b6cd59-600b-4e02-b717-521b07aa94bf"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndRDP.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndRDP.json
new file mode 100644
index 000000000000..bea434c3bc41
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Create_WithSingleRoleAndRDP.json
@@ -0,0 +1,209 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "properties": {
+ "extensionProfile": {
+ "extensions": [
+ {
+ "properties": {
+ "type": "RDP",
+ "autoUpgradeMinorVersion": false,
+ "protectedSettings": "{password}",
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "settings": "UserAzure10/22/2021 15:05:45",
+ "typeHandlerVersion": "1.2"
+ },
+ "name": "RDPExtension"
+ }
+ ]
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Creating",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2",
+ "settings": "UserAzure10/22/2021 15:05:45"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "c948cccb-bbfa-4516-a250-c28abc4d0c15"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ },
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Creating",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2",
+ "settings": "UserAzure10/22/2021 15:05:45"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "c948cccb-bbfa-4516-a250-c28abc4d0c15"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Delete.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Delete.json
new file mode 100644
index 000000000000..9f9f12f09cf2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_InstanceViewWithMultiRole.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_InstanceViewWithMultiRole.json
new file mode 100644
index 000000000000..499efffc1258
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_InstanceViewWithMultiRole.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "roleInstance": {
+ "statusesSummary": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "count": 4
+ },
+ {
+ "code": "PowerState/started",
+ "count": 4
+ },
+ {
+ "code": "RoleState/RoleStateStarted",
+ "count": 4
+ }
+ ]
+ },
+ "sdkVersion": "2.9.6496.3",
+ "privateIds": [
+ "3491bc0c-1f6c-444f-b1d0-ec0751a74e3e"
+ ],
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2021-01-12T16:50:07.0953535+05:30"
+ },
+ {
+ "code": "PowerState/started",
+ "level": "Info",
+ "displayStatus": "Started",
+ "time": "2021-01-12T16:50:07.0953535+05:30"
+ },
+ {
+ "code": "CurrentUpgradeDomain/-1",
+ "level": "Info",
+ "displayStatus": "Current Upgrade Domain of cloud service is -1."
+ },
+ {
+ "code": "MaxUpgradeDomain/1",
+ "level": "Info",
+ "displayStatus": "Max Upgrade Domain of cloud service is 1."
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_WithMultiRoleAndRDP.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_WithMultiRoleAndRDP.json
new file mode 100644
index 000000000000..e9349c283750
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Get_WithMultiRoleAndRDP.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Succeeded",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2",
+ "settings": "userazure01/12/2022 16:29:02"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ },
+ "systemData": {
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedAt": "2020-01-01T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_ByResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_ByResourceGroup.json
new file mode 100644
index 000000000000..bcda0eb5bfe0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_ByResourceGroup.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Succeeded",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2",
+ "settings": "userazure01/12/2022 16:29:02"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_BySubscription.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_BySubscription.json
new file mode 100644
index 000000000000..724d1b336dd2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_List_BySubscription.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Succeeded",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2",
+ "settings": "userazure01/12/2022 16:29:02"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_PowerOff.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_PowerOff.json
new file mode 100644
index 000000000000..4a38e731a2c0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_PowerOff.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Start.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Start.json
new file mode 100644
index 000000000000..4a38e731a2c0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Start.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Update_ToIncludeTags.json b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Update_ToIncludeTags.json
new file mode 100644
index 000000000000..cabb420ddc1d
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/CloudserviceRP/stable/2024-11-04/examples/CloudService_Update_ToIncludeTags.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2024-11-04",
+ "parameters": {
+ "tags": {
+ "Documentation": "RestAPI"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "tags": {
+ "Documentation": "RestAPI"
+ },
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIpConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md
index 12e04c81addb..1638b442685e 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-2024-10-01
+tag: package-2024-11-04
directive:
- where:
@@ -288,6 +288,41 @@ suppressions:
reason: Existing issue from last version.
```
+### Tag: package-2024-11-04
+
+These settings apply only when `--tag=package-2024-11-04` is specified on the command line.
+
+``` yaml $(tag) == 'package-2024-11-04'
+input-file:
+ - Microsoft.Compute/common-types/v1/common.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/computeRPCommon.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineScaleSet.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachine.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineImage.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/virtualMachineExtensionImage.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/availabilitySet.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/proximityPlacementGroup.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/dedicatedHost.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/sshPublicKey.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/image.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/restorePoint.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/capacityReservation.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/logAnalytic.json
+ - Microsoft.Compute/ComputeRP/stable/2024-07-01/runCommand.json
+ - Microsoft.Compute/DiskRP/stable/2024-03-02/diskRPCommon.json
+ - Microsoft.Compute/DiskRP/stable/2024-03-02/disk.json
+ - Microsoft.Compute/DiskRP/stable/2024-03-02/diskAccess.json
+ - Microsoft.Compute/DiskRP/stable/2024-03-02/diskEncryptionSet.json
+ - Microsoft.Compute/DiskRP/stable/2024-03-02/diskRestorePoint.json
+ - Microsoft.Compute/DiskRP/stable/2024-03-02/snapshot.json
+ - Microsoft.Compute/Skus/stable/2021-07-01/skus.json
+ - Microsoft.Compute/GalleryRP/stable/2024-03-03/galleryRPCommon.json
+ - Microsoft.Compute/GalleryRP/stable/2024-03-03/gallery.json
+ - Microsoft.Compute/GalleryRP/stable/2024-03-03/sharedGallery.json
+ - Microsoft.Compute/GalleryRP/stable/2024-03-03/communityGallery.json
+ - Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json
+```
+
### Tag: package-2024-10-01
These settings apply only when `--tag=package-2024-10-01` is specified on the command line.
From 1cb540f95dc8993540918943a75d02ebfeeda0ca Mon Sep 17 00:00:00 2001
From: ZiWei Chen <98569699+kazrael2119@users.noreply.github.com>
Date: Fri, 20 Dec 2024 13:34:03 +0800
Subject: [PATCH 039/128] add directive for cognitiveservices (#31940)
* add directive for cognitiveservices
* Update readme.python.md
---
.../resource-manager/readme.typescript.md | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/specification/cognitiveservices/resource-manager/readme.typescript.md b/specification/cognitiveservices/resource-manager/readme.typescript.md
index df095dac096d..2cf7d5c823f4 100644
--- a/specification/cognitiveservices/resource-manager/readme.typescript.md
+++ b/specification/cognitiveservices/resource-manager/readme.typescript.md
@@ -10,3 +10,11 @@ typescript:
output-folder: "$(typescript-sdks-folder)/sdk/cognitiveservices/arm-cognitiveservices"
generate-metadata: true
```
+
+```yaml
+directive:
+ from: swagger-document
+ where: $.definitions.RaiBlocklistItemsBulkDeleteRequest
+ transform: >
+ $["type"]="array"
+```
\ No newline at end of file
From 12492edbcf4c2d43d153da544ffbf1ffe7cbd20b Mon Sep 17 00:00:00 2001
From: cdxu-147
Date: Fri, 20 Dec 2024 10:16:04 -0800
Subject: [PATCH 040/128] AGC-v.2025-01-01 (#31902)
* AGC-v.2025-01-01
* change api version
* udpate readme
* udpate readme
* main.tsp change
* change readme
* Remove azure-sdk-for-python from swagger-to-sdk
* update
---------
Co-authored-by: Yuchao Yan
Co-authored-by: kazrael2119 <98569699+kazrael2119@users.noreply.github.com>
---
.../ServiceNetworking.Management/client.tsp | 4 +
.../2025-01-01/AssociationDelete.json | 20 +
.../examples/2025-01-01/AssociationGet.json | 28 +
.../examples/2025-01-01/AssociationPatch.json | 35 +
.../examples/2025-01-01/AssociationPut.json | 51 +
.../examples/2025-01-01/AssociationsGet.json | 31 +
.../examples/2025-01-01/FrontendDelete.json | 20 +
.../examples/2025-01-01/FrontendGet.json | 25 +
.../examples/2025-01-01/FrontendPatch.json | 26 +
.../examples/2025-01-01/FrontendPut.json | 41 +
.../examples/2025-01-01/FrontendsGet.json | 28 +
.../examples/2025-01-01/OperationsList.json | 26 +
.../2025-01-01/SecurityPoliciesGetList.json | 31 +
.../2025-01-01/SecurityPolicyDelete.json | 20 +
.../2025-01-01/SecurityPolicyGet.json | 28 +
.../2025-01-01/SecurityPolicyPatch.json | 35 +
.../2025-01-01/SecurityPolicyPut.json | 51 +
.../2025-01-01/TrafficControllerDelete.json | 19 +
.../2025-01-01/TrafficControllerGet.json | 39 +
.../2025-01-01/TrafficControllerPatch.json | 54 +
.../2025-01-01/TrafficControllerPut.json | 92 +
.../2025-01-01/TrafficControllersGet.json | 52 +
.../2025-01-01/TrafficControllersGetList.json | 51 +
.../ServiceNetworking.Management/main.tsp | 3 +
.../sdk-suppressions.yaml | 32 +
.../stable/2025-01-01/TrafficController.json | 1903 +++++++++++++++++
.../examples/AssociationDelete.json | 20 +
.../2025-01-01/examples/AssociationGet.json | 28 +
.../2025-01-01/examples/AssociationPatch.json | 35 +
.../2025-01-01/examples/AssociationPut.json | 51 +
.../2025-01-01/examples/AssociationsGet.json | 31 +
.../2025-01-01/examples/FrontendDelete.json | 20 +
.../2025-01-01/examples/FrontendGet.json | 25 +
.../2025-01-01/examples/FrontendPatch.json | 26 +
.../2025-01-01/examples/FrontendPut.json | 41 +
.../2025-01-01/examples/FrontendsGet.json | 28 +
.../2025-01-01/examples/OperationsList.json | 26 +
.../examples/SecurityPoliciesGetList.json | 31 +
.../examples/SecurityPolicyDelete.json | 20 +
.../examples/SecurityPolicyGet.json | 28 +
.../examples/SecurityPolicyPatch.json | 35 +
.../examples/SecurityPolicyPut.json | 51 +
.../examples/TrafficControllerDelete.json | 19 +
.../examples/TrafficControllerGet.json | 39 +
.../examples/TrafficControllerPatch.json | 54 +
.../examples/TrafficControllerPut.json | 92 +
.../examples/TrafficControllersGet.json | 52 +
.../examples/TrafficControllersGetList.json | 51 +
.../resource-manager/readme.md | 15 +-
49 files changed, 3561 insertions(+), 2 deletions(-)
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationDelete.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPatch.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPut.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationsGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendDelete.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPatch.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPut.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendsGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/OperationsList.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPoliciesGetList.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyDelete.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPatch.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPut.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerDelete.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPatch.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPut.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGet.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGetList.json
create mode 100644 specification/servicenetworking/ServiceNetworking.Management/sdk-suppressions.yaml
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/TrafficController.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationDelete.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPatch.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPut.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationsGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendDelete.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPatch.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPut.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendsGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/OperationsList.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPoliciesGetList.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyDelete.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPatch.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPut.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerDelete.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPatch.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPut.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGet.json
create mode 100644 specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGetList.json
diff --git a/specification/servicenetworking/ServiceNetworking.Management/client.tsp b/specification/servicenetworking/ServiceNetworking.Management/client.tsp
index bfb65529a4b5..d56d22fffbb5 100644
--- a/specification/servicenetworking/ServiceNetworking.Management/client.tsp
+++ b/specification/servicenetworking/ServiceNetworking.Management/client.tsp
@@ -4,3 +4,7 @@ import "@azure-tools/typespec-client-generator-core";
using Azure.ClientGenerator.Core;
@@clientName(Microsoft.ServiceNetworking, "ServiceNetworkingMgmt", "python");
+@@clientName(Microsoft.ServiceNetworking,
+ "ServiceNetworkingManagementClient",
+ "javascript"
+);
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationDelete.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationDelete.json
new file mode 100644
index 000000000000..903ca0eb16a5
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationDelete.json
@@ -0,0 +1,20 @@
+{
+ "title": "Delete Association",
+ "operationId": "AssociationsInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationGet.json
new file mode 100644
index 000000000000..2e256d410474
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationGet.json
@@ -0,0 +1,28 @@
+{
+ "title": "Get Association",
+ "operationId": "AssociationsInterface_Get",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "as1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPatch.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPatch.json
new file mode 100644
index 000000000000..1321971af374
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPatch.json
@@ -0,0 +1,35 @@
+{
+ "title": "Update Association",
+ "operationId": "AssociationsInterface_Update",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1",
+ "properties": {
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "as1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPut.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPut.json
new file mode 100644
index 000000000000..9e343dbdd298
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationPut.json
@@ -0,0 +1,51 @@
+{
+ "title": "Put Association",
+ "operationId": "AssociationsInterface_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "associatedvnet-1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "associatedvnet-1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationsGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationsGet.json
new file mode 100644
index 000000000000..e25d8de45667
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/AssociationsGet.json
@@ -0,0 +1,31 @@
+{
+ "title": "Get Associations",
+ "operationId": "AssociationsInterface_ListByTrafficController",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "as1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendDelete.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendDelete.json
new file mode 100644
index 000000000000..974efa94e9ef
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendDelete.json
@@ -0,0 +1,20 @@
+{
+ "title": "Delete Frontend",
+ "operationId": "FrontendsInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendGet.json
new file mode 100644
index 000000000000..fda822179eb3
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendGet.json
@@ -0,0 +1,25 @@
+{
+ "title": "Get Frontend",
+ "operationId": "FrontendsInterface_Get",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPatch.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPatch.json
new file mode 100644
index 000000000000..fcb044dc7a7f
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPatch.json
@@ -0,0 +1,26 @@
+{
+ "title": "Update Frontend",
+ "operationId": "FrontendsInterface_Update",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1",
+ "properties": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPut.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPut.json
new file mode 100644
index 000000000000..f0295d22f8d7
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendPut.json
@@ -0,0 +1,41 @@
+{
+ "title": "Put Frontend",
+ "operationId": "FrontendsInterface_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "properties": {}
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendsGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendsGet.json
new file mode 100644
index 000000000000..ddf66203e793
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/FrontendsGet.json
@@ -0,0 +1,28 @@
+{
+ "title": "Get Frontends",
+ "operationId": "FrontendsInterface_ListByTrafficController",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/OperationsList.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/OperationsList.json
new file mode 100644
index 000000000000..a67a7fd6f128
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/OperationsList.json
@@ -0,0 +1,26 @@
+{
+ "title": "Get Operations List",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2025-01-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ServiceNetworking/trafficControllers/read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft Service Networking",
+ "resource": "Traffic Controller",
+ "operation": "Get Traffic Controller configuration",
+ "description": "Traffic Controller is a L7 Load Balancing solution for a Multi Cluster setup"
+ },
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPoliciesGetList.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPoliciesGetList.json
new file mode 100644
index 000000000000..a4b712e4f377
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPoliciesGetList.json
@@ -0,0 +1,31 @@
+{
+ "title": "Get SecurityPolicies",
+ "operationId": "SecurityPoliciesInterface_ListByTrafficController",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyDelete.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyDelete.json
new file mode 100644
index 000000000000..e97ee911b751
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyDelete.json
@@ -0,0 +1,20 @@
+{
+ "title": "Delete SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyGet.json
new file mode 100644
index 000000000000..12ce5ca15997
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyGet.json
@@ -0,0 +1,28 @@
+{
+ "title": "Get SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_Get",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPatch.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPatch.json
new file mode 100644
index 000000000000..7101b7543b9c
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPatch.json
@@ -0,0 +1,35 @@
+{
+ "title": "Update SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_Update",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1",
+ "properties": {
+ "properties": {
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPut.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPut.json
new file mode 100644
index 000000000000..5364abfc441a
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/SecurityPolicyPut.json
@@ -0,0 +1,51 @@
+{
+ "title": "Put SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "properties": {
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerDelete.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerDelete.json
new file mode 100644
index 000000000000..3be324a9126e
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerDelete.json
@@ -0,0 +1,19 @@
+{
+ "title": "Delete Traffic Controller",
+ "operationId": "TrafficControllerInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerGet.json
new file mode 100644
index 000000000000..52b5b6859ffc
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerGet.json
@@ -0,0 +1,39 @@
+{
+ "operationId": "TrafficControllerInterface_Get",
+ "title": "Get Traffic Controller",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPatch.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPatch.json
new file mode 100644
index 000000000000..2e4c2850c63c
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPatch.json
@@ -0,0 +1,54 @@
+{
+ "operationId": "TrafficControllerInterface_Update",
+ "title": "Patch Traffic Controller",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "properties": {
+ "tags": {
+ "key1": "value1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPut.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPut.json
new file mode 100644
index 000000000000..83a824f6a8d2
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllerPut.json
@@ -0,0 +1,92 @@
+{
+ "operationId": "TrafficControllerInterface_CreateOrUpdate",
+ "title": "Put Traffic Controller",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGet.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGet.json
new file mode 100644
index 000000000000..f06dcbc2cbbb
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGet.json
@@ -0,0 +1,52 @@
+{
+ "operationId": "TrafficControllerInterface_ListByResourceGroup",
+ "title": "Get Traffic Controllers",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGetList.json b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGetList.json
new file mode 100644
index 000000000000..568692609ff3
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/examples/2025-01-01/TrafficControllersGetList.json
@@ -0,0 +1,51 @@
+{
+ "operationId": "TrafficControllerInterface_ListBySubscription",
+ "title": "Get Traffic Controllers List",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/ServiceNetworking.Management/main.tsp b/specification/servicenetworking/ServiceNetworking.Management/main.tsp
index e41cb2a12d9a..9c420b15e4a1 100644
--- a/specification/servicenetworking/ServiceNetworking.Management/main.tsp
+++ b/specification/servicenetworking/ServiceNetworking.Management/main.tsp
@@ -21,6 +21,9 @@ enum Versions {
/** 2024-05-01 preview version */
@useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1)
v2024_05_01_preview: "2024-05-01-preview",
+
+ /** 2025-01-01 stable version */
+ v2025_05_01: "2025-01-01",
}
using TypeSpec.Http;
diff --git a/specification/servicenetworking/ServiceNetworking.Management/sdk-suppressions.yaml b/specification/servicenetworking/ServiceNetworking.Management/sdk-suppressions.yaml
new file mode 100644
index 000000000000..2bfe21606754
--- /dev/null
+++ b/specification/servicenetworking/ServiceNetworking.Management/sdk-suppressions.yaml
@@ -0,0 +1,32 @@
+suppressions:
+ azure-sdk-for-js:
+ - package: "@azure/arm-servicenetworking"
+ breaking-changes:
+ - Enum KnownAssociationType no longer has value Subnets
+ - Enum KnownOrigin no longer has value System
+ - Enum KnownOrigin no longer has value User
+ - Enum KnownOrigin no longer has value UserSystem
+ - Interface AssociationsInterfaceCreateOrUpdateOptionalParams no longer has parameter resumeFrom
+ - Interface AssociationsInterfaceDeleteOptionalParams no longer has parameter resumeFrom
+ - Interface FrontendsInterfaceCreateOrUpdateOptionalParams no longer has parameter resumeFrom
+ - Interface FrontendsInterfaceDeleteOptionalParams no longer has parameter resumeFrom
+ - Interface TrafficControllerInterfaceCreateOrUpdateOptionalParams no longer has parameter resumeFrom
+ - Interface TrafficControllerInterfaceDeleteOptionalParams no longer has parameter resumeFrom
+ - Removed function getContinuationToken
+ - Removed operation AssociationsInterface.beginCreateOrUpdate
+ - Removed operation AssociationsInterface.beginCreateOrUpdateAndWait
+ - Removed operation AssociationsInterface.beginDelete
+ - Removed operation AssociationsInterface.beginDeleteAndWait
+ - Removed operation FrontendsInterface.beginCreateOrUpdate
+ - Removed operation FrontendsInterface.beginCreateOrUpdateAndWait
+ - Removed operation FrontendsInterface.beginDelete
+ - Removed operation FrontendsInterface.beginDeleteAndWait
+ - Removed operation TrafficControllerInterface.beginCreateOrUpdate
+ - Removed operation TrafficControllerInterface.beginCreateOrUpdateAndWait
+ - Removed operation TrafficControllerInterface.beginDelete
+ - Removed operation TrafficControllerInterface.beginDeleteAndWait
+ - Type of parameter subnet of interface AssociationUpdateProperties is changed from AssociationSubnetUpdate to AssociationSubnet
+ - "Type of parameter tags of interface AssociationUpdate is changed from {\n [propertyName: string]: string;\n } to Record"
+ - "Type of parameter tags of interface FrontendUpdate is changed from {\n [propertyName: string]: string;\n } to Record"
+ - "Type of parameter tags of interface TrackedResource is changed from {\n [propertyName: string]: string;\n } to Record"
+ - "Type of parameter tags of interface TrafficControllerUpdate is changed from {\n [propertyName: string]: string;\n } to Record"
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/TrafficController.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/TrafficController.json
new file mode 100644
index 000000000000..097126f15da9
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/TrafficController.json
@@ -0,0 +1,1903 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "TrafficController",
+ "version": "2025-01-01",
+ "description": "Traffic Controller Provider management API.",
+ "x-typespec-generated": [
+ {
+ "emitter": "@azure-tools/typespec-autorest"
+ }
+ ]
+ },
+ "schemes": [
+ "https"
+ ],
+ "host": "management.azure.com",
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow.",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "tags": [
+ {
+ "name": "AssociationsInterface"
+ },
+ {
+ "name": "FrontendsInterface"
+ },
+ {
+ "name": "SecurityPoliciesInterface"
+ },
+ {
+ "name": "TrafficControllerInterface"
+ },
+ {
+ "name": "Operations"
+ }
+ ],
+ "paths": {
+ "/providers/Microsoft.ServiceNetworking/operations": {
+ "get": {
+ "operationId": "Operations_List",
+ "tags": [
+ "Operations"
+ ],
+ "description": "List the operations for the provider",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Operations List": {
+ "$ref": "./examples/OperationsList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceNetworking/trafficControllers": {
+ "get": {
+ "operationId": "TrafficControllerInterface_ListBySubscription",
+ "tags": [
+ "TrafficControllerInterface"
+ ],
+ "description": "List TrafficController resources by subscription ID",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/TrafficControllerListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Traffic Controllers List": {
+ "$ref": "./examples/TrafficControllersGetList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers": {
+ "get": {
+ "operationId": "TrafficControllerInterface_ListByResourceGroup",
+ "tags": [
+ "TrafficControllerInterface"
+ ],
+ "description": "List TrafficController resources by resource group",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/TrafficControllerListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Traffic Controllers": {
+ "$ref": "./examples/TrafficControllersGet.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}": {
+ "get": {
+ "operationId": "TrafficControllerInterface_Get",
+ "tags": [
+ "TrafficControllerInterface"
+ ],
+ "description": "Get a TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/TrafficController"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Traffic Controller": {
+ "$ref": "./examples/TrafficControllerGet.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "TrafficControllerInterface_CreateOrUpdate",
+ "tags": [
+ "TrafficControllerInterface"
+ ],
+ "description": "Create a TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TrafficController"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'TrafficController' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/TrafficController"
+ }
+ },
+ "201": {
+ "description": "Resource 'TrafficController' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/TrafficController"
+ },
+ "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": {
+ "Put Traffic Controller": {
+ "$ref": "./examples/TrafficControllerPut.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "TrafficControllerInterface_Update",
+ "tags": [
+ "TrafficControllerInterface"
+ ],
+ "description": "Update a TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TrafficControllerUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/TrafficController"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Traffic Controller": {
+ "$ref": "./examples/TrafficControllerPatch.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "TrafficControllerInterface_Delete",
+ "tags": [
+ "TrafficControllerInterface"
+ ],
+ "description": "Delete a TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Traffic Controller": {
+ "$ref": "./examples/TrafficControllerDelete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}/associations": {
+ "get": {
+ "operationId": "AssociationsInterface_ListByTrafficController",
+ "tags": [
+ "AssociationsInterface"
+ ],
+ "description": "List Association resources by TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/AssociationListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Associations": {
+ "$ref": "./examples/AssociationsGet.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}/associations/{associationName}": {
+ "get": {
+ "operationId": "AssociationsInterface_Get",
+ "tags": [
+ "AssociationsInterface"
+ ],
+ "description": "Get a Association",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "associationName",
+ "in": "path",
+ "description": "Name of Association",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Association"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Association": {
+ "$ref": "./examples/AssociationGet.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "AssociationsInterface_CreateOrUpdate",
+ "tags": [
+ "AssociationsInterface"
+ ],
+ "description": "Create a Association",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "associationName",
+ "in": "path",
+ "description": "Name of Association",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Association"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Association' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Association"
+ }
+ },
+ "201": {
+ "description": "Resource 'Association' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Association"
+ },
+ "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": {
+ "Put Association": {
+ "$ref": "./examples/AssociationPut.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "AssociationsInterface_Update",
+ "tags": [
+ "AssociationsInterface"
+ ],
+ "description": "Update a Association",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "associationName",
+ "in": "path",
+ "description": "Name of Association",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AssociationUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Association"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Association": {
+ "$ref": "./examples/AssociationPatch.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "AssociationsInterface_Delete",
+ "tags": [
+ "AssociationsInterface"
+ ],
+ "description": "Delete a Association",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "associationName",
+ "in": "path",
+ "description": "Name of Association",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Association": {
+ "$ref": "./examples/AssociationDelete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}/frontends": {
+ "get": {
+ "operationId": "FrontendsInterface_ListByTrafficController",
+ "tags": [
+ "FrontendsInterface"
+ ],
+ "description": "List Frontend resources by TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/FrontendListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Frontends": {
+ "$ref": "./examples/FrontendsGet.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}/frontends/{frontendName}": {
+ "get": {
+ "operationId": "FrontendsInterface_Get",
+ "tags": [
+ "FrontendsInterface"
+ ],
+ "description": "Get a Frontend",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "frontendName",
+ "in": "path",
+ "description": "Frontends",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Frontend"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Frontend": {
+ "$ref": "./examples/FrontendGet.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "FrontendsInterface_CreateOrUpdate",
+ "tags": [
+ "FrontendsInterface"
+ ],
+ "description": "Create a Frontend",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "frontendName",
+ "in": "path",
+ "description": "Frontends",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Frontend"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Frontend' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Frontend"
+ }
+ },
+ "201": {
+ "description": "Resource 'Frontend' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Frontend"
+ },
+ "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": {
+ "Put Frontend": {
+ "$ref": "./examples/FrontendPut.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "FrontendsInterface_Update",
+ "tags": [
+ "FrontendsInterface"
+ ],
+ "description": "Update a Frontend",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "frontendName",
+ "in": "path",
+ "description": "Frontends",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FrontendUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Frontend"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update Frontend": {
+ "$ref": "./examples/FrontendPatch.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "FrontendsInterface_Delete",
+ "tags": [
+ "FrontendsInterface"
+ ],
+ "description": "Delete a Frontend",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "frontendName",
+ "in": "path",
+ "description": "Frontends",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Frontend": {
+ "$ref": "./examples/FrontendDelete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}/securityPolicies": {
+ "get": {
+ "operationId": "SecurityPoliciesInterface_ListByTrafficController",
+ "tags": [
+ "SecurityPoliciesInterface"
+ ],
+ "description": "List SecurityPolicy resources by TrafficController",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicyListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get SecurityPolicies": {
+ "$ref": "./examples/SecurityPoliciesGetList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceNetworking/trafficControllers/{trafficControllerName}/securityPolicies/{securityPolicyName}": {
+ "get": {
+ "operationId": "SecurityPoliciesInterface_Get",
+ "tags": [
+ "SecurityPoliciesInterface"
+ ],
+ "description": "Get a SecurityPolicy",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "securityPolicyName",
+ "in": "path",
+ "description": "SecurityPolicy",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicy"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get SecurityPolicy": {
+ "$ref": "./examples/SecurityPolicyGet.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "SecurityPoliciesInterface_CreateOrUpdate",
+ "tags": [
+ "SecurityPoliciesInterface"
+ ],
+ "description": "Create a SecurityPolicy",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "securityPolicyName",
+ "in": "path",
+ "description": "SecurityPolicy",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicy"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'SecurityPolicy' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicy"
+ }
+ },
+ "201": {
+ "description": "Resource 'SecurityPolicy' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicy"
+ },
+ "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": {
+ "Put SecurityPolicy": {
+ "$ref": "./examples/SecurityPolicyPut.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "SecurityPoliciesInterface_Update",
+ "tags": [
+ "SecurityPoliciesInterface"
+ ],
+ "description": "Update a SecurityPolicy",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "securityPolicyName",
+ "in": "path",
+ "description": "SecurityPolicy",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicyUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SecurityPolicy"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update SecurityPolicy": {
+ "$ref": "./examples/SecurityPolicyPatch.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "SecurityPoliciesInterface_Delete",
+ "tags": [
+ "SecurityPoliciesInterface"
+ ],
+ "description": "Delete a SecurityPolicy",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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": "trafficControllerName",
+ "in": "path",
+ "description": "traffic controller name for path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ },
+ {
+ "name": "securityPolicyName",
+ "in": "path",
+ "description": "SecurityPolicy",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9]([A-Za-z0-9-_.]{0,62}[A-Za-z0-9])?$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete SecurityPolicy": {
+ "$ref": "./examples/SecurityPolicyDelete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "Association": {
+ "type": "object",
+ "description": "Association Subresource of Traffic Controller",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AssociationProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "AssociationListResult": {
+ "type": "object",
+ "description": "The response of a Association list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Association items on this page",
+ "items": {
+ "$ref": "#/definitions/Association"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "AssociationProperties": {
+ "type": "object",
+ "description": "Association Properties.",
+ "properties": {
+ "associationType": {
+ "$ref": "#/definitions/AssociationType",
+ "description": "Association Type"
+ },
+ "subnet": {
+ "$ref": "#/definitions/AssociationSubnet",
+ "description": "Association Subnet"
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Provisioning State of Traffic Controller Association Resource",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "associationType"
+ ]
+ },
+ "AssociationSubnet": {
+ "type": "object",
+ "description": "Association Subnet.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Association ID."
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "AssociationSubnetUpdate": {
+ "type": "object",
+ "description": "Association Subnet.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Association ID."
+ }
+ }
+ },
+ "AssociationType": {
+ "type": "string",
+ "description": "Association Type Enum",
+ "enum": [
+ "subnets"
+ ],
+ "x-ms-enum": {
+ "name": "AssociationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "subnets",
+ "value": "subnets",
+ "description": "Association of Type Subnet"
+ }
+ ]
+ }
+ },
+ "AssociationUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the Association.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/AssociationUpdateProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "AssociationUpdateProperties": {
+ "type": "object",
+ "description": "The updatable properties of the Association.",
+ "properties": {
+ "associationType": {
+ "$ref": "#/definitions/AssociationType",
+ "description": "Association Type"
+ },
+ "subnet": {
+ "$ref": "#/definitions/AssociationSubnetUpdate",
+ "description": "Association Subnet"
+ }
+ }
+ },
+ "Frontend": {
+ "type": "object",
+ "description": "Frontend Sub Resource of Traffic Controller.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/FrontendProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "FrontendListResult": {
+ "type": "object",
+ "description": "The response of a Frontend list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Frontend items on this page",
+ "items": {
+ "$ref": "#/definitions/Frontend"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "FrontendProperties": {
+ "type": "object",
+ "description": "Frontend Properties.",
+ "properties": {
+ "fqdn": {
+ "type": "string",
+ "description": "The Fully Qualified Domain Name of the DNS record associated to a Traffic Controller frontend.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Provisioning State of Traffic Controller Frontend Resource",
+ "readOnly": true
+ }
+ }
+ },
+ "FrontendUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the Frontend.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "PolicyType": {
+ "type": "string",
+ "description": "Policy Type of the Security Policy",
+ "enum": [
+ "waf"
+ ],
+ "x-ms-enum": {
+ "name": "PolicyType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "WAF",
+ "value": "waf",
+ "description": "Policy of Type WAF"
+ }
+ ]
+ }
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "Resource Provisioning State Enum",
+ "enum": [
+ "Provisioning",
+ "Updating",
+ "Deleting",
+ "Accepted",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Provisioning",
+ "value": "Provisioning",
+ "description": "Resource in Provisioning State"
+ },
+ {
+ "name": "Updating",
+ "value": "Updating",
+ "description": "Resource in Updating State"
+ },
+ {
+ "name": "Deleting",
+ "value": "Deleting",
+ "description": "Resource in Deleting State"
+ },
+ {
+ "name": "Accepted",
+ "value": "Accepted",
+ "description": "Resource in Accepted State"
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "Resource in Succeeded State"
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "Resource in Failed State"
+ },
+ {
+ "name": "Canceled",
+ "value": "Canceled",
+ "description": "Resource in Canceled State"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "ResourceId": {
+ "type": "object",
+ "description": "Resource ID definition used by parent to reference child resources.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of child resource."
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "SecurityPolicy": {
+ "type": "object",
+ "description": "SecurityPolicy Subresource of Traffic Controller.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SecurityPolicyProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "SecurityPolicyConfigurations": {
+ "type": "object",
+ "description": "SecurityPolicyConfigurations Subresource of Traffic Controller.",
+ "properties": {
+ "wafSecurityPolicy": {
+ "$ref": "#/definitions/WafSecurityPolicy",
+ "description": "Contains reference to a WAF-type security policy that is applied at the Traffic Controller level."
+ }
+ }
+ },
+ "SecurityPolicyConfigurationsUpdate": {
+ "type": "object",
+ "description": "SecurityPolicyConfigurations Subresource of Traffic Controller.",
+ "properties": {
+ "wafSecurityPolicy": {
+ "$ref": "#/definitions/WafSecurityPolicyUpdate",
+ "description": "Contains reference to a WAF-type security policy that is applied at the Traffic Controller level."
+ }
+ }
+ },
+ "SecurityPolicyListResult": {
+ "type": "object",
+ "description": "The response of a SecurityPolicy list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The SecurityPolicy items on this page",
+ "items": {
+ "$ref": "#/definitions/SecurityPolicy"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "SecurityPolicyProperties": {
+ "type": "object",
+ "description": "SecurityPolicy Properties.",
+ "properties": {
+ "policyType": {
+ "$ref": "#/definitions/PolicyType",
+ "description": "Type of the Traffic Controller Security Policy",
+ "readOnly": true
+ },
+ "wafPolicy": {
+ "$ref": "#/definitions/WafPolicy",
+ "description": "Web Application Firewall Policy of the Traffic Controller Security Policy"
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Provisioning State of Traffic Controller SecurityPolicy Resource",
+ "readOnly": true
+ }
+ }
+ },
+ "SecurityPolicyUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the SecurityPolicy.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/SecurityPolicyUpdateProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "SecurityPolicyUpdateProperties": {
+ "type": "object",
+ "description": "The updatable properties of the SecurityPolicy.",
+ "properties": {
+ "wafPolicy": {
+ "$ref": "#/definitions/WafPolicyUpdate",
+ "description": "Web Application Firewall Policy of the Traffic Controller Security Policy"
+ }
+ }
+ },
+ "TrafficController": {
+ "type": "object",
+ "description": "Concrete tracked resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TrafficControllerProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "TrafficControllerListResult": {
+ "type": "object",
+ "description": "The response of a TrafficController list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The TrafficController items on this page",
+ "items": {
+ "$ref": "#/definitions/TrafficController"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "TrafficControllerProperties": {
+ "type": "object",
+ "description": "Traffic Controller Properties.",
+ "properties": {
+ "configurationEndpoints": {
+ "type": "array",
+ "description": "Configuration Endpoints.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "frontends": {
+ "type": "array",
+ "description": "Frontends References List",
+ "items": {
+ "$ref": "#/definitions/ResourceId"
+ },
+ "readOnly": true
+ },
+ "associations": {
+ "type": "array",
+ "description": "Associations References List",
+ "items": {
+ "$ref": "#/definitions/ResourceId"
+ },
+ "readOnly": true
+ },
+ "securityPolicies": {
+ "type": "array",
+ "description": "Security Policies References List",
+ "items": {
+ "$ref": "#/definitions/ResourceId"
+ },
+ "readOnly": true
+ },
+ "securityPolicyConfigurations": {
+ "$ref": "#/definitions/SecurityPolicyConfigurations",
+ "description": "Security Policy Configuration",
+ "x-ms-identifiers": []
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "The status of the last operation.",
+ "readOnly": true
+ }
+ }
+ },
+ "TrafficControllerUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the TrafficController.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/TrafficControllerUpdateProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TrafficControllerUpdateProperties": {
+ "type": "object",
+ "description": "The updatable properties of the TrafficController.",
+ "properties": {
+ "securityPolicyConfigurations": {
+ "$ref": "#/definitions/SecurityPolicyConfigurationsUpdate",
+ "description": "Security Policy Configuration",
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "WafPolicy": {
+ "type": "object",
+ "description": "Web Application Firewall Policy",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of the WAF"
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "WafPolicyUpdate": {
+ "type": "object",
+ "description": "Web Application Firewall Policy",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of the WAF"
+ }
+ }
+ },
+ "WafSecurityPolicy": {
+ "type": "object",
+ "description": "Web Application Firewall Security Policy",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of the Waf Security Policy"
+ }
+ },
+ "required": [
+ "id"
+ ]
+ },
+ "WafSecurityPolicyUpdate": {
+ "type": "object",
+ "description": "Web Application Firewall Security Policy",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Resource ID of the Waf Security Policy"
+ }
+ }
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationDelete.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationDelete.json
new file mode 100644
index 000000000000..903ca0eb16a5
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationDelete.json
@@ -0,0 +1,20 @@
+{
+ "title": "Delete Association",
+ "operationId": "AssociationsInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationGet.json
new file mode 100644
index 000000000000..2e256d410474
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationGet.json
@@ -0,0 +1,28 @@
+{
+ "title": "Get Association",
+ "operationId": "AssociationsInterface_Get",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "as1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPatch.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPatch.json
new file mode 100644
index 000000000000..1321971af374
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPatch.json
@@ -0,0 +1,35 @@
+{
+ "title": "Update Association",
+ "operationId": "AssociationsInterface_Update",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1",
+ "properties": {
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "as1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPut.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPut.json
new file mode 100644
index 000000000000..9e343dbdd298
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationPut.json
@@ -0,0 +1,51 @@
+{
+ "title": "Put Association",
+ "operationId": "AssociationsInterface_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "associationName": "as1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "associatedvnet-1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ },
+ "provisioningState": "Accepted"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "associatedvnet-1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationsGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationsGet.json
new file mode 100644
index 000000000000..e25d8de45667
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/AssociationsGet.json
@@ -0,0 +1,31 @@
+{
+ "title": "Get Associations",
+ "operationId": "AssociationsInterface_ListByTrafficController",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "as1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/associations",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/associations/as1",
+ "location": "NorthCentralUS",
+ "properties": {
+ "associationType": "subnets",
+ "subnet": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet-tc/subnets/tc-subnet"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendDelete.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendDelete.json
new file mode 100644
index 000000000000..974efa94e9ef
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendDelete.json
@@ -0,0 +1,20 @@
+{
+ "title": "Delete Frontend",
+ "operationId": "FrontendsInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendGet.json
new file mode 100644
index 000000000000..fda822179eb3
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendGet.json
@@ -0,0 +1,25 @@
+{
+ "title": "Get Frontend",
+ "operationId": "FrontendsInterface_Get",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPatch.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPatch.json
new file mode 100644
index 000000000000..fcb044dc7a7f
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPatch.json
@@ -0,0 +1,26 @@
+{
+ "title": "Update Frontend",
+ "operationId": "FrontendsInterface_Update",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1",
+ "properties": {}
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPut.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPut.json
new file mode 100644
index 000000000000..f0295d22f8d7
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendPut.json
@@ -0,0 +1,41 @@
+{
+ "title": "Put Frontend",
+ "operationId": "FrontendsInterface_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "frontendName": "fe1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "properties": {}
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendsGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendsGet.json
new file mode 100644
index 000000000000..ddf66203e793
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/FrontendsGet.json
@@ -0,0 +1,28 @@
+{
+ "title": "Get Frontends",
+ "operationId": "FrontendsInterface_ListByTrafficController",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "fe1",
+ "location": "NorthCentralUS",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/frontends",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1",
+ "properties": {
+ "fqdn": "test.net",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/OperationsList.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/OperationsList.json
new file mode 100644
index 000000000000..a67a7fd6f128
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/OperationsList.json
@@ -0,0 +1,26 @@
+{
+ "title": "Get Operations List",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2025-01-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ServiceNetworking/trafficControllers/read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft Service Networking",
+ "resource": "Traffic Controller",
+ "operation": "Get Traffic Controller configuration",
+ "description": "Traffic Controller is a L7 Load Balancing solution for a Multi Cluster setup"
+ },
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPoliciesGetList.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPoliciesGetList.json
new file mode 100644
index 000000000000..a4b712e4f377
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPoliciesGetList.json
@@ -0,0 +1,31 @@
+{
+ "title": "Get SecurityPolicies",
+ "operationId": "SecurityPoliciesInterface_ListByTrafficController",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyDelete.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyDelete.json
new file mode 100644
index 000000000000..e97ee911b751
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyDelete.json
@@ -0,0 +1,20 @@
+{
+ "title": "Delete SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyGet.json
new file mode 100644
index 000000000000..12ce5ca15997
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyGet.json
@@ -0,0 +1,28 @@
+{
+ "title": "Get SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_Get",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPatch.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPatch.json
new file mode 100644
index 000000000000..7101b7543b9c
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPatch.json
@@ -0,0 +1,35 @@
+{
+ "title": "Update SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_Update",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1",
+ "properties": {
+ "properties": {
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPut.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPut.json
new file mode 100644
index 000000000000..5364abfc441a
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/SecurityPolicyPut.json
@@ -0,0 +1,51 @@
+{
+ "title": "Put SecurityPolicy",
+ "operationId": "SecurityPoliciesInterface_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "securityPolicyName": "sp1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "properties": {
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "waf-0",
+ "type": "Microsoft.ServiceNetworking/trafficControllers/securityPolicies",
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/sample-tc/securityPolicies/waf-0",
+ "location": "eastus",
+ "properties": {
+ "policyType": "waf",
+ "wafPolicy": {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Networking/applicationGatewayWebApplicationFirewallPolicies/wp-0"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerDelete.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerDelete.json
new file mode 100644
index 000000000000..3be324a9126e
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerDelete.json
@@ -0,0 +1,19 @@
+{
+ "title": "Delete Traffic Controller",
+ "operationId": "TrafficControllerInterface_Delete",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": 3,
+ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerGet.json
new file mode 100644
index 000000000000..52b5b6859ffc
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerGet.json
@@ -0,0 +1,39 @@
+{
+ "operationId": "TrafficControllerInterface_Get",
+ "title": "Get Traffic Controller",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPatch.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPatch.json
new file mode 100644
index 000000000000..2e4c2850c63c
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPatch.json
@@ -0,0 +1,54 @@
+{
+ "operationId": "TrafficControllerInterface_Update",
+ "title": "Patch Traffic Controller",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "properties": {
+ "tags": {
+ "key1": "value1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPut.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPut.json
new file mode 100644
index 000000000000..83a824f6a8d2
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllerPut.json
@@ -0,0 +1,92 @@
+{
+ "operationId": "TrafficControllerInterface_CreateOrUpdate",
+ "title": "Put Traffic Controller",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1",
+ "trafficControllerName": "tc1",
+ "resource": {
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGet.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGet.json
new file mode 100644
index 000000000000..f06dcbc2cbbb
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGet.json
@@ -0,0 +1,52 @@
+{
+ "operationId": "TrafficControllerInterface_ListByResourceGroup",
+ "title": "Get Traffic Controllers",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid",
+ "resourceGroupName": "rg1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGetList.json b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGetList.json
new file mode 100644
index 000000000000..568692609ff3
--- /dev/null
+++ b/specification/servicenetworking/resource-manager/Microsoft.ServiceNetworking/stable/2025-01-01/examples/TrafficControllersGetList.json
@@ -0,0 +1,51 @@
+{
+ "operationId": "TrafficControllerInterface_ListBySubscription",
+ "title": "Get Traffic Controllers List",
+ "parameters": {
+ "api-version": "2025-01-01",
+ "subscriptionId": "subid"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "tc1",
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1",
+ "type": "Microsoft.ServiceNetworking/trafficControllers",
+ "location": "NorthCentralUS",
+ "tags": {
+ "key1": "value1"
+ },
+ "properties": {
+ "configurationEndpoints": [
+ "abc.trafficcontroller.azure.net"
+ ],
+ "frontends": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/frontends/fe1"
+ }
+ ],
+ "associations": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/association/as1"
+ }
+ ],
+ "securityPolicies": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/sp1"
+ }
+ ],
+ "securityPolicyConfigurations": {
+ "wafSecurityPolicy": {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ServiceNetworking/trafficControllers/tc1/securityPolicies/waf-0"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/servicenetworking/resource-manager/readme.md b/specification/servicenetworking/resource-manager/readme.md
index 5ae8687ba3f2..2b163042e992 100644
--- a/specification/servicenetworking/resource-manager/readme.md
+++ b/specification/servicenetworking/resource-manager/readme.md
@@ -26,9 +26,21 @@ These are the global settings for the servicenetworking.
```yaml
openapi-type: arm
-tag: 2024-05-01-preview
+tag: package-2025-01-01
```
+### Tag: package-2025-01-01
+
+These settings apply only when `--tag=package-2025-01-01` is specified on the command line.
+
+```yaml $(tag) == 'package-2025-01-01'
+input-file:
+ - Microsoft.ServiceNetworking/stable/2025-01-01/TrafficController.json
+openapi-type: arm
+tag: package-2025-01-01
+```
+
+
### Tag: package-2024-05-01-preview
These settings apply only when `--tag=package-2024-05-01-preview` is specified on the command line.
@@ -78,7 +90,6 @@ This is not used by Autorest itself.
```yaml $(swagger-to-sdk)
swagger-to-sdk:
- - repo: azure-sdk-for-python
- repo: azure-sdk-for-go
```
From dfd52d5cdd667697e29289183e70655bc3a0d390 Mon Sep 17 00:00:00 2001
From: Sneha Nagendra <47864291+snehanagendra@users.noreply.github.com>
Date: Mon, 23 Dec 2024 11:03:00 -0800
Subject: [PATCH 041/128] Mark local admin status on devbox as readonly (this
is a spec update to match service behavior) (#31923)
Co-authored-by: Sneha Nagendra
---
specification/devcenter/DevCenter/DevBox/models.tsp | 2 +-
.../preview/2024-05-01-preview/devcenter.json | 5 +----
.../preview/2024-08-01-preview/devcenter.json | 5 +----
.../preview/2024-09-01-preview/devcenter.json | 5 +----
.../preview/2024-10-01-preview/devcenter.json | 5 +----
.../Microsoft.DevCenter/stable/2023-04-01/devcenter.json | 5 +----
.../Microsoft.DevCenter/stable/2024-02-01/devcenter.json | 5 +----
7 files changed, 7 insertions(+), 25 deletions(-)
diff --git a/specification/devcenter/DevCenter/DevBox/models.tsp b/specification/devcenter/DevCenter/DevBox/models.tsp
index a3f225c5ea4d..4d06fa4ab090 100644
--- a/specification/devcenter/DevCenter/DevBox/models.tsp
+++ b/specification/devcenter/DevCenter/DevBox/models.tsp
@@ -681,7 +681,7 @@ model DevBox {
lastConnectedTime?: utcDateTime;
@doc("Indicates whether the owner of the Dev Box is a local administrator.")
- @visibility("read", "create")
+ @visibility("read")
localAdministrator?: LocalAdminStatus;
}
diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-05-01-preview/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-05-01-preview/devcenter.json
index e2d7177f291b..3edecd4d57fd 100644
--- a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-05-01-preview/devcenter.json
+++ b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-05-01-preview/devcenter.json
@@ -4161,10 +4161,7 @@
"localAdministrator": {
"$ref": "#/definitions/LocalAdminStatus",
"description": "Indicates whether the owner of the Dev Box is a local administrator.",
- "x-ms-mutability": [
- "read",
- "create"
- ]
+ "readOnly": true
}
},
"required": [
diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-08-01-preview/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-08-01-preview/devcenter.json
index f088616c7454..e325a578bc32 100644
--- a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-08-01-preview/devcenter.json
+++ b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-08-01-preview/devcenter.json
@@ -4212,10 +4212,7 @@
"localAdministrator": {
"$ref": "#/definitions/LocalAdminStatus",
"description": "Indicates whether the owner of the Dev Box is a local administrator.",
- "x-ms-mutability": [
- "read",
- "create"
- ]
+ "readOnly": true
}
},
"required": [
diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-09-01-preview/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-09-01-preview/devcenter.json
index e9d0aa3bd39e..5879988f9eb6 100644
--- a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-09-01-preview/devcenter.json
+++ b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-09-01-preview/devcenter.json
@@ -4437,10 +4437,7 @@
"localAdministrator": {
"$ref": "#/definitions/LocalAdminStatus",
"description": "Indicates whether the owner of the Dev Box is a local administrator.",
- "x-ms-mutability": [
- "read",
- "create"
- ]
+ "readOnly": true
}
},
"required": [
diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-10-01-preview/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-10-01-preview/devcenter.json
index c5397449fddd..fcf8183f66eb 100644
--- a/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-10-01-preview/devcenter.json
+++ b/specification/devcenter/data-plane/Microsoft.DevCenter/preview/2024-10-01-preview/devcenter.json
@@ -4517,10 +4517,7 @@
"localAdministrator": {
"$ref": "#/definitions/LocalAdminStatus",
"description": "Indicates whether the owner of the Dev Box is a local administrator.",
- "x-ms-mutability": [
- "read",
- "create"
- ]
+ "readOnly": true
}
},
"required": [
diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2023-04-01/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2023-04-01/devcenter.json
index eab5a9feff7b..207c51742e4f 100644
--- a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2023-04-01/devcenter.json
+++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2023-04-01/devcenter.json
@@ -2181,10 +2181,7 @@
"localAdministrator": {
"$ref": "#/definitions/LocalAdminStatus",
"description": "Indicates whether the owner of the Dev Box is a local administrator.",
- "x-ms-mutability": [
- "read",
- "create"
- ]
+ "readOnly": true
}
},
"required": [
diff --git a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json
index 601f57593de0..2634df134813 100644
--- a/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json
+++ b/specification/devcenter/data-plane/Microsoft.DevCenter/stable/2024-02-01/devcenter.json
@@ -3062,10 +3062,7 @@
"localAdministrator": {
"$ref": "#/definitions/LocalAdminStatus",
"description": "Indicates whether the owner of the Dev Box is a local administrator.",
- "x-ms-mutability": [
- "read",
- "create"
- ]
+ "readOnly": true
}
},
"required": [
From 64f6997950d8bee63f314563cedaa20148db2186 Mon Sep 17 00:00:00 2001
From: DeepikaNMS <127926235+DeepikaNMS@users.noreply.github.com>
Date: Tue, 24 Dec 2024 11:04:58 +0530
Subject: [PATCH 042/128] Stable version 2024-07-01 for Microsoft.Confluent RP
(#31932)
* Stable version 2024-07-01 for Microsoft.Confluent RP
* Fix spellcheck error
* Fix avocado error
---------
Co-authored-by: Dipesh Bhakat <107024030+dipeshbhakat-microsoft@users.noreply.github.com>
---
cSpell.json | 4 +-
.../stable/2024-07-01/confluent.json | 5044 +++++++++++++++++
.../examples/Access_ClusterList.json | 75 +
.../examples/Access_CreateRoleBinding.json | 31 +
.../examples/Access_DeleteRoleBinding.json | 13 +
.../examples/Access_EnvironmentList.json | 42 +
.../examples/Access_InvitationsList.json | 47 +
.../examples/Access_InviteUser.json | 34 +
.../examples/Access_RoleBindingList.json | 46 +
.../examples/Access_RoleBindingNameList.json | 36 +
.../examples/Access_ServiceAccountsList.json | 43 +
.../2024-07-01/examples/Access_UsersList.json | 44 +
.../2024-07-01/examples/Cluster_Create.json | 121 +
.../2024-07-01/examples/Cluster_Delete.json | 22 +
.../examples/Environment_Create.json | 56 +
.../examples/Environment_Delete.json | 21 +
.../MarketplaceAgreements_Create.json | 38 +
.../examples/MarketplaceAgreements_List.json | 45 +
.../examples/OrganizationOperations_List.json | 44 +
.../examples/Organization_ClusterList.json | 65 +
.../examples/Organization_ConnectorList.json | 54 +
.../examples/Organization_Create.json | 119 +
.../Organization_CreateClusterAPIKey.json | 47 +
.../Organization_CreateConnectorByName.json | 117 +
.../examples/Organization_Delete.json | 25 +
.../Organization_DeleteClusterAPIKey.json | 13 +
.../Organization_DeleteConnectorByName.json | 23 +
.../Organization_EnvironmentList.json | 32 +
.../2024-07-01/examples/Organization_Get.json | 54 +
.../Organization_GetClusterAPIKey.json | 42 +
.../examples/Organization_GetClusterById.json | 60 +
.../Organization_GetConnectorByName.json | 49 +
.../Organization_GetEnvironmentById.json | 28 +
...nization_GetSchemaRegistryClusterById.json | 46 +
.../Organization_ListByResourceGroup.json | 50 +
.../Organization_ListBySubscription.json | 49 +
.../examples/Organization_ListRegions.json | 43 +
...ganization_ListSchemaRegistryClusters.json | 49 +
.../examples/Organization_TopicList.json | 42 +
.../examples/Organization_Update.json | 56 +
.../2024-07-01/examples/Topics_Create.json | 79 +
.../2024-07-01/examples/Topics_Delete.json | 23 +
.../2024-07-01/examples/Topics_Get.json | 38 +
.../Validations_ValidateOrganizations.json | 72 +
.../Validations_ValidateOrganizationsV2.json | 43 +
.../confluent/resource-manager/readme.md | 10 +-
46 files changed, 7132 insertions(+), 2 deletions(-)
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/confluent.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ClusterList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_CreateRoleBinding.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_DeleteRoleBinding.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_EnvironmentList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InvitationsList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InviteUser.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingNameList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ServiceAccountsList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_UsersList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Create.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Delete.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Create.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Delete.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_Create.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_List.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/OrganizationOperations_List.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ClusterList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ConnectorList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Create.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateClusterAPIKey.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateConnectorByName.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Delete.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteClusterAPIKey.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteConnectorByName.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_EnvironmentList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Get.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterAPIKey.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterById.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetConnectorByName.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetEnvironmentById.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetSchemaRegistryClusterById.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListByResourceGroup.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListBySubscription.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListRegions.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListSchemaRegistryClusters.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_TopicList.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Update.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Create.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Delete.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Get.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizations.json
create mode 100644 specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizationsV2.json
diff --git a/cSpell.json b/cSpell.json
index d5cd554ffbd1..227216fc576f 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1053,7 +1053,9 @@
{
"filename": "**/specification/confluent/resource-manager/Microsoft.Confluent/**/confluent.json",
"words": [
- "orgvalidate"
+ "orgvalidate",
+ "AZUREBLOBSOURCE",
+ "AZUREBLOBSINK"
]
},
{
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/confluent.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/confluent.json
new file mode 100644
index 000000000000..f8eeb1da7ccd
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/confluent.json
@@ -0,0 +1,5044 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft.Confluent",
+ "version": "2024-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.Confluent/agreements": {
+ "get": {
+ "tags": [
+ "Agreements"
+ ],
+ "summary": "List Confluent marketplace agreements in the subscription.",
+ "operationId": "MarketplaceAgreements_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ConfluentAgreementResourceListResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "MarketplaceAgreements_List": {
+ "$ref": "./examples/MarketplaceAgreements_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Confluent/agreements/default": {
+ "put": {
+ "tags": [
+ "Agreements"
+ ],
+ "summary": "Create Confluent Marketplace agreement in the subscription.",
+ "operationId": "MarketplaceAgreements_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Confluent Marketplace Agreement resource",
+ "schema": {
+ "$ref": "#/definitions/ConfluentAgreementResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ConfluentAgreementResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "MarketplaceAgreements_Create": {
+ "$ref": "./examples/MarketplaceAgreements_Create.json"
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.Confluent/operations": {
+ "get": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "List all operations provided by Microsoft.Confluent.",
+ "operationId": "OrganizationOperations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "OrganizationOperations_List": {
+ "$ref": "./examples/OrganizationOperations_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Confluent/organizations": {
+ "get": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "List all organizations under the specified subscription.",
+ "operationId": "Organization_ListBySubscription",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Organization_ListBySubscription": {
+ "$ref": "./examples/Organization_ListBySubscription.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations": {
+ "get": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "List all Organizations under the specified resource group.",
+ "operationId": "Organization_ListByResourceGroup",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Organization_ListByResourceGroup": {
+ "$ref": "./examples/Organization_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}": {
+ "get": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "Get the properties of a specific Organization resource.",
+ "operationId": "Organization_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_Get": {
+ "$ref": "./examples/Organization_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "Create Organization resource",
+ "operationId": "Organization_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Organization resource model",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "Organization_Create": {
+ "$ref": "./examples/Organization_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "Update Organization resource",
+ "operationId": "Organization_Update",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Updated Organization resource",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResourceUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Confluent_Update": {
+ "$ref": "./examples/Organization_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Organization"
+ ],
+ "summary": "Delete Organization resource",
+ "operationId": "Organization_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "The specified confluent resource does not exist in the subscription."
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Confluent_Delete": {
+ "$ref": "./examples/Organization_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/validations/{organizationName}/orgvalidate": {
+ "post": {
+ "tags": [
+ "Validations"
+ ],
+ "summary": "Organization Validate proxy resource",
+ "operationId": "Validations_ValidateOrganization",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "Organization resource model",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validations_ValidateOrganizations": {
+ "$ref": "./examples/Validations_ValidateOrganizations.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/validations/{organizationName}/orgvalidateV2": {
+ "post": {
+ "tags": [
+ "Validations"
+ ],
+ "summary": "Organization Validate proxy resource",
+ "operationId": "Validations_ValidateOrganizationV2",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "Organization resource model",
+ "schema": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ValidationResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validations_ValidateOrganizations": {
+ "$ref": "./examples/Validations_ValidateOrganizationsV2.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listUsers": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization users details",
+ "operationId": "Access_ListUsers",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_ListUsers_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_UsersList": {
+ "$ref": "./examples/Access_UsersList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listServiceAccounts": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization service accounts details",
+ "operationId": "Access_ListServiceAccounts",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_ListServiceAccounts_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_ServiceAccountsList": {
+ "$ref": "./examples/Access_ServiceAccountsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listInvitations": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization accounts invitation details",
+ "operationId": "Access_ListInvitations",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_ListInvitations_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_InvitationsList": {
+ "$ref": "./examples/Access_InvitationsList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/createInvitation": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Invite user to the organization",
+ "operationId": "Access_InviteUser",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupParameter"
+ },
+ {
+ "$ref": "#/parameters/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "Invite user account model",
+ "schema": {
+ "$ref": "#/definitions/Access_InviteUserAccountModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/InvitationRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_InviteUser": {
+ "$ref": "./examples/Access_InviteUser.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listEnvironments": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Environment list of an organization",
+ "operationId": "Access_ListEnvironments",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_ListEnvironments_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_EnvironmentList": {
+ "$ref": "./examples/Access_EnvironmentList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listClusters": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Cluster details",
+ "operationId": "Access_ListClusters",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_ListCluster_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_ClusterList": {
+ "$ref": "./examples/Access_ClusterList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listRoleBindings": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization role bindings",
+ "operationId": "Access_ListRoleBindings",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_ListRoleBindings_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_RoleBindingList": {
+ "$ref": "./examples/Access_RoleBindingList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/createRoleBinding": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization role bindings",
+ "operationId": "Access_CreateRoleBinding",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "Create role binding Request Model",
+ "schema": {
+ "$ref": "#/definitions/Access_CreateRoleBindingRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/RoleBindingRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_CreateRoleBinding": {
+ "$ref": "./examples/Access_CreateRoleBinding.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/deleteRoleBinding/{roleBindingId}": {
+ "delete": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization role bindings",
+ "operationId": "Access_DeleteRoleBinding",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/RoleBindingIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_DeleteRoleBinding": {
+ "$ref": "./examples/Access_DeleteRoleBinding.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/access/default/listRoleBindingNameList": {
+ "post": {
+ "tags": [
+ "accessandaccounts"
+ ],
+ "summary": "Organization role bindings",
+ "operationId": "Access_ListRoleBindingNameList",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Access_RoleBindingNameList_SuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Access_RoleBindingNameList": {
+ "$ref": "./examples/Access_RoleBindingNameList.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments": {
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Lists of all the environments in a organization",
+ "operationId": "Organization_ListEnvironments",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PageSizeParameter"
+ },
+ {
+ "$ref": "#/parameters/PageTokenParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/GetEnvironmentsResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_ListEnvironments": {
+ "$ref": "./examples/Organization_EnvironmentList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}": {
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Get Environment details by environment Id",
+ "operationId": "Organization_GetEnvironmentById",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SCEnvironmentRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_GetEnvironmentById": {
+ "$ref": "./examples/Organization_GetEnvironmentById.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "confluent environments"
+ ],
+ "summary": "Create confluent environment",
+ "operationId": "Environment_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Confluent Environment resource model",
+ "schema": {
+ "$ref": "#/definitions/SCEnvironmentRecord"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SCEnvironmentRecord"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SCEnvironmentRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Environment_CreateOrUpdate": {
+ "$ref": "./examples/Environment_Create.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "confluent environments"
+ ],
+ "summary": "Delete confluent environment by id",
+ "operationId": "Environment_Delete",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Environment_Delete": {
+ "$ref": "./examples/Environment_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters": {
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Lists of all the clusters in a environment",
+ "operationId": "Organization_ListClusters",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/PageSizeParameter"
+ },
+ {
+ "$ref": "#/parameters/PageTokenParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ListClustersSuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_ListClusters": {
+ "$ref": "./examples/Organization_ClusterList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/schemaRegistryClusters": {
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Get schema registry clusters",
+ "operationId": "Organization_ListSchemaRegistryClusters",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/PageSizeParameter"
+ },
+ {
+ "$ref": "#/parameters/PageTokenParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ListSchemaRegistryClustersResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_ListSchemaRegistryClusters": {
+ "$ref": "./examples/Organization_ListSchemaRegistryClusters.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/listRegions": {
+ "post": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "cloud provider regions available for creating Schema Registry clusters.",
+ "operationId": "Organization_ListRegions",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "List Access Request Model",
+ "schema": {
+ "$ref": "#/definitions/ListAccessRequestModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ListRegionsSuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_ListRegions": {
+ "$ref": "./examples/Organization_ListRegions.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters/{clusterId}/createAPIKey": {
+ "post": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Creates API key for a schema registry Cluster ID or Kafka Cluster ID under a environment",
+ "operationId": "Organization_CreateAPIKey",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "description": "Request payload for get creating API Key for schema registry Cluster ID or Kafka Cluster ID under a environment",
+ "schema": {
+ "$ref": "#/definitions/CreateAPIKeyModel"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/APIKeyRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_CreateClusterAPIKey": {
+ "$ref": "./examples/Organization_CreateClusterAPIKey.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/apiKeys/{apiKeyId}": {
+ "delete": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Deletes API key of a kafka or schema registry cluster",
+ "operationId": "Organization_DeleteClusterAPIKey",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConfluentAPIKeyParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "Success"
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_DeleteClusterAPIKey": {
+ "$ref": "./examples/Organization_DeleteClusterAPIKey.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Get API key details of a kafka or schema registry cluster",
+ "operationId": "Organization_GetClusterAPIKey",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConfluentAPIKeyParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/APIKeyRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_GetClusterAPIKey": {
+ "$ref": "./examples/Organization_GetClusterAPIKey.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/schemaRegistryClusters/{clusterId}": {
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Get schema registry cluster by Id",
+ "operationId": "Organization_GetSchemaRegistryClusterById",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SchemaRegistryClusterRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_GetSchemaRegistryClusterById": {
+ "$ref": "./examples/Organization_GetSchemaRegistryClusterById.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters/{clusterId}": {
+ "get": {
+ "tags": [
+ "service connectors"
+ ],
+ "summary": "Get cluster by Id",
+ "operationId": "Organization_GetClusterById",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SCClusterRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_GetClusterById": {
+ "$ref": "./examples/Organization_GetClusterById.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "confluent clusters"
+ ],
+ "summary": "Create confluent clusters",
+ "operationId": "Cluster_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Confluent Cluster resource model",
+ "schema": {
+ "$ref": "#/definitions/SCClusterRecord"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/SCClusterRecord"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SCClusterRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Cluster_CreateOrUpdate": {
+ "$ref": "./examples/Cluster_Create.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "confluent clusters"
+ ],
+ "summary": "Delete confluent cluster by id",
+ "operationId": "Cluster_Delete",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Cluster_Delete": {
+ "$ref": "./examples/Cluster_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters/{clusterId}/connectors/{connectorName}": {
+ "get": {
+ "tags": [
+ "confluent connectors"
+ ],
+ "summary": "Get confluent connector by Name",
+ "operationId": "Connector_Get",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectorNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ConnectorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Connector_Get": {
+ "$ref": "./examples/Organization_GetConnectorByName.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "confluent connectors"
+ ],
+ "summary": "Create confluent connector by Name",
+ "operationId": "Connector_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectorNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Confluent Connector resource model",
+ "schema": {
+ "$ref": "#/definitions/ConnectorResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ConnectorResource"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ConnectorResource"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Connector_CreateOrUpdate": {
+ "$ref": "./examples/Organization_CreateConnectorByName.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "confluent connectors"
+ ],
+ "summary": "Delete confluent connector by name",
+ "operationId": "Connector_Delete",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ConnectorNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Connector_Delete": {
+ "$ref": "./examples/Organization_DeleteConnectorByName.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters/{clusterId}/connectors": {
+ "get": {
+ "tags": [
+ "confluent connectors"
+ ],
+ "summary": "Lists all the connectors in a cluster",
+ "operationId": "Connector_List",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/PageSizeParameter"
+ },
+ {
+ "$ref": "#/parameters/PageTokenParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ListConnectorsSuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Connector_List": {
+ "$ref": "./examples/Organization_ConnectorList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters/{clusterId}/topics": {
+ "get": {
+ "tags": [
+ "confluent connectors"
+ ],
+ "summary": "Lists of all the topics in a clusters",
+ "operationId": "Topics_List",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/PageSizeParameter"
+ },
+ {
+ "$ref": "#/parameters/PageTokenParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/ListTopicsSuccessResponse"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Organization_ListTopics": {
+ "$ref": "./examples/Organization_TopicList.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/organizations/{organizationName}/environments/{environmentId}/clusters/{clusterId}/topics/{topicName}": {
+ "get": {
+ "tags": [
+ "confluent topics"
+ ],
+ "summary": "Get confluent topic by Name",
+ "operationId": "Topics_Get",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/TopicNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/TopicRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Topics_Get": {
+ "$ref": "./examples/Topics_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "confluent topics"
+ ],
+ "summary": "Create confluent topics by Name",
+ "operationId": "Topics_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/TopicNameParameter"
+ },
+ {
+ "in": "body",
+ "name": "body",
+ "description": "Confluent Topics resource model",
+ "schema": {
+ "$ref": "#/definitions/TopicRecord"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/TopicRecord"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/TopicRecord"
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderDefaultErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Topics_Create": {
+ "$ref": "./examples/Topics_Create.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "confluent topics"
+ ],
+ "summary": "Delete confluent topic by name",
+ "operationId": "Topics_Delete",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "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/OrganizationResourceNameParameter"
+ },
+ {
+ "$ref": "#/parameters/EnvironmentIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterIdParameter"
+ },
+ {
+ "$ref": "#/parameters/TopicNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ }
+ }
+ },
+ "default": {
+ "description": "Default error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-examples": {
+ "Topics_Delete": {
+ "$ref": "./examples/Topics_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConfluentAgreementProperties": {
+ "description": "Terms properties for Marketplace and Confluent.",
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "description": "Publisher identifier string.",
+ "type": "string"
+ },
+ "product": {
+ "description": "Product identifier string.",
+ "type": "string"
+ },
+ "plan": {
+ "description": "Plan identifier string.",
+ "type": "string"
+ },
+ "licenseTextLink": {
+ "description": "Link to HTML with Microsoft and Publisher terms.",
+ "type": "string"
+ },
+ "privacyPolicyLink": {
+ "description": "Link to the privacy policy of the publisher.",
+ "type": "string"
+ },
+ "retrieveDatetime": {
+ "format": "date-time",
+ "description": "Date and time in UTC of when the terms were accepted. This is empty if Accepted is false.",
+ "type": "string"
+ },
+ "signature": {
+ "description": "Terms signature.",
+ "type": "string"
+ },
+ "accepted": {
+ "description": "If any version of the terms have been accepted, otherwise false.",
+ "type": "boolean"
+ }
+ }
+ },
+ "ConfluentAgreementResource": {
+ "description": "Agreement Terms definition",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "id": {
+ "description": "The ARM id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the agreement.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the agreement.",
+ "type": "string",
+ "readOnly": true
+ },
+ "systemData": {
+ "description": "Metadata pertaining to creation and last modification of the resource",
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData",
+ "readOnly": true
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ConfluentAgreementProperties",
+ "description": "Represents the properties of the resource."
+ }
+ }
+ },
+ "ConfluentAgreementResourceListResponse": {
+ "description": "Response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Results of a list operation.",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/ConfluentAgreementResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationDisplay": {
+ "description": "The object that represents the operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Service provider: Microsoft.Confluent",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Type on which the operation is performed, e.g., 'clusters'.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Operation type, e.g., read, write, delete, etc.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the operation, e.g., 'Write confluent'.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationResult": {
+ "description": "An Confluent REST API operation.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}",
+ "type": "string"
+ },
+ "display": {
+ "description": "The object that represents the operation.",
+ "$ref": "#/definitions/OperationDisplay"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is a data action",
+ "type": "boolean"
+ }
+ }
+ },
+ "OperationListResult": {
+ "description": "Result of GET request to list Confluent operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Confluent operations supported by the Microsoft.Confluent provider.",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/OperationResult"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of operation list results if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "ValidationResponse": {
+ "type": "object",
+ "description": "Validation response from the provider",
+ "title": "ValidationResponse",
+ "properties": {
+ "info": {
+ "description": "Info from the response",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ErrorResponseBody": {
+ "description": "Response body of Error",
+ "title": "ErrorResponseBody",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "Error code",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "Error message",
+ "type": "string",
+ "readOnly": true
+ },
+ "target": {
+ "description": "Error target",
+ "type": "string",
+ "readOnly": true
+ },
+ "details": {
+ "description": "Error detail",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/ErrorResponseBody"
+ }
+ }
+ }
+ },
+ "ResourceProviderDefaultErrorResponse": {
+ "type": "object",
+ "description": "Default error response for resource provider",
+ "title": "ResourceProviderDefaultErrorResponse",
+ "properties": {
+ "error": {
+ "description": "Response body of Error",
+ "readOnly": true,
+ "$ref": "#/definitions/ErrorResponseBody"
+ }
+ }
+ },
+ "ProvisioningState": {
+ "enum": [
+ "Accepted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Deleted",
+ "NotSpecified"
+ ],
+ "type": "string",
+ "description": "Provision states for confluent RP",
+ "title": "ProvisioningState",
+ "x-ms-enum": {
+ "name": "ProvisionState",
+ "modelAsString": true
+ }
+ },
+ "SaaSOfferStatus": {
+ "enum": [
+ "Started",
+ "PendingFulfillmentStart",
+ "InProgress",
+ "Subscribed",
+ "Suspended",
+ "Reinstated",
+ "Succeeded",
+ "Failed",
+ "Unsubscribed",
+ "Updating"
+ ],
+ "type": "string",
+ "description": "SaaS Offer Status for confluent RP",
+ "title": "SaaSOfferStatus",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SaaSOfferStatus"
+ }
+ },
+ "OfferDetail": {
+ "description": "Confluent Offer detail",
+ "type": "object",
+ "required": [
+ "publisherId",
+ "id",
+ "planId",
+ "planName",
+ "termUnit"
+ ],
+ "properties": {
+ "publisherId": {
+ "description": "Publisher Id",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "id": {
+ "description": "Offer Id",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "planId": {
+ "description": "Offer Plan Id",
+ "maxLength": 200,
+ "type": "string"
+ },
+ "planName": {
+ "description": "Offer Plan Name",
+ "maxLength": 200,
+ "type": "string"
+ },
+ "termUnit": {
+ "description": "Offer Plan Term unit",
+ "maxLength": 25,
+ "type": "string"
+ },
+ "termId": {
+ "description": "Offer Plan Term Id",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "privateOfferId": {
+ "description": "Private Offer Id",
+ "maxLength": 255,
+ "type": "string"
+ },
+ "privateOfferIds": {
+ "description": "Array of Private Offer Ids",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "status": {
+ "description": "SaaS Offer Status",
+ "$ref": "#/definitions/SaaSOfferStatus"
+ }
+ }
+ },
+ "UserDetail": {
+ "description": "Subscriber detail",
+ "type": "object",
+ "required": [
+ "emailAddress"
+ ],
+ "properties": {
+ "firstName": {
+ "description": "First name",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "lastName": {
+ "description": "Last name",
+ "maxLength": 50,
+ "type": "string"
+ },
+ "emailAddress": {
+ "description": "Email address",
+ "pattern": "^\\S+@\\S+\\.\\S+$",
+ "type": "string"
+ },
+ "userPrincipalName": {
+ "description": "User principal name",
+ "type": "string"
+ },
+ "aadEmail": {
+ "description": "AAD email address",
+ "type": "string"
+ }
+ }
+ },
+ "LinkOrganization": {
+ "description": "Link an existing Confluent organization",
+ "type": "object",
+ "required": [
+ "token"
+ ],
+ "properties": {
+ "token": {
+ "description": "User auth token",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ }
+ }
+ },
+ "OrganizationResourceProperties": {
+ "description": "Organization resource property",
+ "type": "object",
+ "required": [
+ "offerDetail",
+ "userDetail"
+ ],
+ "properties": {
+ "createdTime": {
+ "format": "date-time",
+ "description": "The creation time of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "Provision states for confluent RP",
+ "$ref": "#/definitions/ProvisioningState",
+ "readOnly": true
+ },
+ "organizationId": {
+ "description": "Id of the Confluent organization.",
+ "type": "string",
+ "readOnly": true
+ },
+ "ssoUrl": {
+ "description": "SSO url for the Confluent organization.",
+ "type": "string",
+ "readOnly": true
+ },
+ "offerDetail": {
+ "description": "Confluent offer detail",
+ "$ref": "#/definitions/OfferDetail"
+ },
+ "userDetail": {
+ "description": "Subscriber detail",
+ "$ref": "#/definitions/UserDetail"
+ },
+ "linkOrganization": {
+ "description": "Link an existing Confluent organization",
+ "$ref": "#/definitions/LinkOrganization"
+ }
+ }
+ },
+ "OrganizationResource": {
+ "description": "Organization resource.",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "id": {
+ "description": "The ARM id of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "systemData": {
+ "description": "Metadata pertaining to creation and last modification of the resource",
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData",
+ "readOnly": true
+ },
+ "properties": {
+ "x-ms-client-flatten": true,
+ "description": "Organization resource properties",
+ "$ref": "#/definitions/OrganizationResourceProperties"
+ },
+ "tags": {
+ "type": "object",
+ "description": "Organization resource tags",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "location": {
+ "description": "Location of Organization resource",
+ "type": "string"
+ }
+ }
+ },
+ "OrganizationResourceListResult": {
+ "description": "The response of a list operation.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Result of a list operation.",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/OrganizationResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results, if any.",
+ "type": "string"
+ }
+ }
+ },
+ "OrganizationResourceUpdate": {
+ "description": "Organization Resource update",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "ARM resource tags",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ListAccessRequestModel": {
+ "description": "List Access Request Model",
+ "type": "object",
+ "properties": {
+ "searchFilters": {
+ "description": "Search filters for the request",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ConfluentListMetadata": {
+ "description": "Metadata of the list",
+ "type": "object",
+ "properties": {
+ "first": {
+ "description": "First page of the list",
+ "type": "string"
+ },
+ "last": {
+ "description": "Last page of the list",
+ "type": "string"
+ },
+ "prev": {
+ "description": "Previous page of the list",
+ "type": "string"
+ },
+ "next": {
+ "description": "Next page of the list",
+ "type": "string"
+ },
+ "total_size": {
+ "description": "Total size of the list",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "MetadataEntity": {
+ "description": "Metadata of the data record",
+ "type": "object",
+ "properties": {
+ "self": {
+ "description": "Self lookup url",
+ "type": "string"
+ },
+ "resource_name": {
+ "description": "Resource name of the record",
+ "type": "string"
+ },
+ "created_at": {
+ "description": "Created Date Time",
+ "type": "string"
+ },
+ "updated_at": {
+ "description": "Updated Date time",
+ "type": "string"
+ },
+ "deleted_at": {
+ "description": "Deleted Date time",
+ "type": "string"
+ }
+ }
+ },
+ "UserRecord": {
+ "description": "Record of the user",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of account",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the user",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/MetadataEntity"
+ },
+ "email": {
+ "description": "Email of the user",
+ "type": "string"
+ },
+ "full_name": {
+ "description": "Name of the user",
+ "type": "string"
+ },
+ "auth_type": {
+ "description": "Auth type of the user",
+ "type": "string"
+ }
+ }
+ },
+ "UsersList": {
+ "description": "Data of the users list",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UserRecord"
+ }
+ },
+ "Access_ListUsers_SuccessResponse": {
+ "description": "List users success response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "Data of the users list",
+ "$ref": "#/definitions/UsersList"
+ }
+ }
+ },
+ "ServiceAccountRecord": {
+ "description": "Record of the service account",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of account",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the service account",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/MetadataEntity"
+ },
+ "display_name": {
+ "description": "Name of the service account",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the service account",
+ "type": "string"
+ }
+ }
+ },
+ "ServiceAccountsList": {
+ "description": "Data of the service accounts list",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ServiceAccountRecord"
+ }
+ },
+ "Access_ListServiceAccounts_SuccessResponse": {
+ "description": "List service accounts success response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "Data of the service accounts list",
+ "$ref": "#/definitions/ServiceAccountsList"
+ }
+ }
+ },
+ "InvitationRecord": {
+ "description": "Record of the invitation",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of account",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the invitation",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/MetadataEntity"
+ },
+ "email": {
+ "description": "Email of the user",
+ "type": "string"
+ },
+ "auth_type": {
+ "description": "Auth type of the user",
+ "type": "string"
+ },
+ "status": {
+ "description": "Status of the invitation",
+ "type": "string"
+ },
+ "accepted_at": {
+ "description": "Accepted date time of the invitation",
+ "type": "string"
+ },
+ "expires_at": {
+ "description": "Expiration date time of the invitation",
+ "type": "string"
+ }
+ }
+ },
+ "InvitationsList": {
+ "description": "Data of the invitations list",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InvitationRecord"
+ }
+ },
+ "Access_ListInvitations_SuccessResponse": {
+ "description": "List invitations success response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "Data of the invitations list",
+ "$ref": "#/definitions/InvitationsList"
+ }
+ }
+ },
+ "Access_InvitedUserDetails": {
+ "description": "Details of the user being invited",
+ "type": "object",
+ "properties": {
+ "invitedEmail": {
+ "description": "UPN/Email of the user who is being invited",
+ "type": "string"
+ },
+ "auth_type": {
+ "description": "Auth type of the user",
+ "type": "string"
+ }
+ }
+ },
+ "Access_InviteUserAccountModel": {
+ "description": "Invite User Account model",
+ "type": "object",
+ "properties": {
+ "organizationId": {
+ "description": "Id of the organization",
+ "type": "string"
+ },
+ "email": {
+ "description": "Email of the logged in user",
+ "type": "string"
+ },
+ "upn": {
+ "description": "Upn of the logged in user",
+ "type": "string"
+ },
+ "invitedUserDetails": {
+ "description": "Details of the user who is being invited",
+ "$ref": "#/definitions/Access_InvitedUserDetails"
+ }
+ }
+ },
+ "EnvironmentRecord": {
+ "description": "Details about environment name, metadata and environment id of an environment",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of environment",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the environment",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/MetadataEntity"
+ },
+ "display_name": {
+ "description": "Display name of the user",
+ "type": "string"
+ }
+ }
+ },
+ "EnvironmentsList": {
+ "description": "List of environment records",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EnvironmentRecord"
+ }
+ },
+ "Access_ListEnvironments_SuccessResponse": {
+ "description": "Details of the environments returned on successful response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the environment list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "Environment list data",
+ "$ref": "#/definitions/EnvironmentsList"
+ }
+ }
+ },
+ "ClusterSpecEntity": {
+ "description": "Spec of the cluster record",
+ "type": "object",
+ "properties": {
+ "display_name": {
+ "description": "The name of the cluster",
+ "type": "string"
+ },
+ "availability": {
+ "description": "The availability zone configuration of the cluster",
+ "type": "string"
+ },
+ "cloud": {
+ "description": "The cloud service provider ",
+ "type": "string"
+ },
+ "zone": {
+ "description": "type of zone availability",
+ "type": "string"
+ },
+ "region": {
+ "description": "The cloud service provider region",
+ "type": "string"
+ },
+ "kafka_bootstrap_endpoint": {
+ "description": "The bootstrap endpoint used by Kafka clients to connect to the cluster",
+ "type": "string"
+ },
+ "http_endpoint": {
+ "description": "The cluster HTTP request URL.",
+ "type": "string"
+ },
+ "api_endpoint": {
+ "description": "The Kafka API cluster endpoint",
+ "type": "string"
+ },
+ "config": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/ClusterConfigEntity"
+ },
+ "environment": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/ClusterEnvironmentEntity"
+ },
+ "network": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/ClusterNetworkEntity"
+ },
+ "byok": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/ClusterByokEntity"
+ }
+ }
+ },
+ "ClusterByokEntity": {
+ "description": "The network associated with this object",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ID of the referred resource",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object",
+ "type": "string"
+ },
+ "resource_name": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ }
+ }
+ },
+ "ClusterNetworkEntity": {
+ "description": "The network associated with this object",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ID of the referred resource",
+ "type": "string"
+ },
+ "environment": {
+ "description": "Environment of the referred resource",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object",
+ "type": "string"
+ },
+ "resource_name": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ }
+ }
+ },
+ "ClusterEnvironmentEntity": {
+ "description": "The environment to which cluster belongs",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ID of the referred resource",
+ "type": "string"
+ },
+ "environment": {
+ "description": "Environment of the referred resource",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object",
+ "type": "string"
+ },
+ "resource_name": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ }
+ }
+ },
+ "ClusterConfigEntity": {
+ "description": "The configuration of the Kafka cluster",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "The lifecycle phase of the cluster",
+ "type": "string"
+ }
+ }
+ },
+ "ClusterStatusEntity": {
+ "description": "Status of the cluster record",
+ "type": "object",
+ "properties": {
+ "phase": {
+ "description": "The lifecycle phase of the cluster",
+ "type": "string"
+ },
+ "cku": {
+ "description": "The number of Confluent Kafka Units ",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "ClusterRecord": {
+ "description": "Details of cluster record",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of cluster",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the cluster",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/MetadataEntity"
+ },
+ "display_name": {
+ "description": "Display name of the cluster",
+ "type": "string"
+ },
+ "spec": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/ClusterSpecEntity"
+ },
+ "status": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/ClusterStatusEntity"
+ }
+ }
+ },
+ "ClusterList": {
+ "description": "List of Cluster Records",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClusterRecord"
+ }
+ },
+ "Access_ListCluster_SuccessResponse": {
+ "description": "Details of the clusters returned on successful response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "List of clusters",
+ "$ref": "#/definitions/ClusterList"
+ }
+ }
+ },
+ "RoleBindingRecord": {
+ "description": "Details on principal, role name and crn pattern of a role binding",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "The type of the resource.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the role binding",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/MetadataEntity"
+ },
+ "principal": {
+ "description": "The principal User or Group to bind the role to",
+ "type": "string"
+ },
+ "role_name": {
+ "description": "The name of the role to bind to the principal",
+ "type": "string"
+ },
+ "crn_pattern": {
+ "description": "A CRN that specifies the scope and resource patterns necessary for the role to bind",
+ "type": "string"
+ }
+ }
+ },
+ "RoleBindingList": {
+ "description": "List of Role Binding records",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RoleBindingRecord"
+ }
+ },
+ "Access_ListRoleBindings_SuccessResponse": {
+ "description": "Details of the role bindings returned on successful response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "List of role binding",
+ "$ref": "#/definitions/RoleBindingList"
+ }
+ }
+ },
+ "RoleBindingNameList": {
+ "description": "List of role binding names",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "Access_CreateRoleBindingRequestModel": {
+ "description": "Create role binding request model",
+ "type": "object",
+ "properties": {
+ "principal": {
+ "description": "The principal User or Group to bind the role to",
+ "type": "string"
+ },
+ "role_name": {
+ "description": "The name of the role to bind to the principal",
+ "type": "string"
+ },
+ "crn_pattern": {
+ "description": "A CRN that specifies the scope and resource patterns necessary for the role to bind",
+ "type": "string"
+ }
+ }
+ },
+ "Access_RoleBindingNameList_SuccessResponse": {
+ "description": "Details of the role binding names returned on successful response",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of response",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the list",
+ "$ref": "#/definitions/ConfluentListMetadata"
+ },
+ "data": {
+ "description": "List of role binding names",
+ "$ref": "#/definitions/RoleBindingNameList"
+ }
+ }
+ },
+ "SCMetadataEntity": {
+ "description": "Metadata of the data record",
+ "type": "object",
+ "properties": {
+ "self": {
+ "description": "Self lookup url",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "Resource name of the record",
+ "type": "string"
+ },
+ "createdTimestamp": {
+ "description": "Created Date Time",
+ "type": "string"
+ },
+ "updatedTimestamp": {
+ "description": "Updated Date time",
+ "type": "string"
+ },
+ "deletedTimestamp": {
+ "description": "Deleted Date time",
+ "type": "string"
+ }
+ }
+ },
+ "TopicMetadataEntity": {
+ "description": "Metadata of the data record",
+ "type": "object",
+ "properties": {
+ "self": {
+ "description": "Self lookup url",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "Resource name of the record",
+ "type": "string"
+ }
+ }
+ },
+ "TopicsRelatedLink": {
+ "description": "Partition Config spec of the topic record",
+ "type": "object",
+ "properties": {
+ "related": {
+ "description": "Relationship of the topic",
+ "type": "string"
+ }
+ }
+ },
+ "TopicsInputConfigs": {
+ "description": "Topics input config array",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/TopicsInputConfig"
+ }
+ },
+ "TopicsInputConfig": {
+ "description": "Topics input config",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the topic input config",
+ "type": "string"
+ },
+ "value": {
+ "description": "Value of the topic input config",
+ "type": "string"
+ }
+ }
+ },
+ "SCConfluentListMetadata": {
+ "description": "Metadata of the list",
+ "type": "object",
+ "properties": {
+ "first": {
+ "description": "First page of the list",
+ "type": "string"
+ },
+ "last": {
+ "description": "Last page of the list",
+ "type": "string"
+ },
+ "prev": {
+ "description": "Previous page of the list",
+ "type": "string"
+ },
+ "next": {
+ "description": "Next page of the list",
+ "type": "string"
+ },
+ "totalSize": {
+ "description": "Total size of the list",
+ "type": "integer",
+ "format": "int32"
+ }
+ }
+ },
+ "GetEnvironmentsResponse": {
+ "description": "Result of GET request to list Confluent operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of environments in a confluent organization",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/SCEnvironmentRecord"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of environment records if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "StreamGovernanceConfig": {
+ "description": "Stream governance configuration",
+ "type": "object",
+ "properties": {
+ "package": {
+ "description": "Stream governance configuration",
+ "$ref": "#/definitions/Package"
+ }
+ }
+ },
+ "Package": {
+ "enum": [
+ "ESSENTIALS",
+ "ADVANCED"
+ ],
+ "type": "string",
+ "description": "Stream Governance Package. Supported values are ESSENTIALS and ADVANCED",
+ "x-ms-enum": {
+ "name": "Package",
+ "modelAsString": true
+ }
+ },
+ "SCEnvironmentRecord": {
+ "description": "Details about environment name, metadata and environment id of an environment",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "kind": {
+ "description": "Type of environment",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the environment",
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of the resource",
+ "type": "string"
+ },
+ "properties": {
+ "description": "Environment properties",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/EnvironmentProperties"
+ },
+ "name": {
+ "description": "Display name of the environment",
+ "type": "string"
+ }
+ }
+ },
+ "EnvironmentProperties": {
+ "description": "Environment resource property",
+ "type": "object",
+ "properties": {
+ "streamGovernanceConfig": {
+ "description": "Stream governance configuration",
+ "$ref": "#/definitions/StreamGovernanceConfig"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/SCMetadataEntity"
+ }
+ }
+ },
+ "SCClusterByokEntity": {
+ "description": "The network associated with this object",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ID of the referred resource",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ }
+ }
+ },
+ "SCClusterNetworkEnvironmentEntity": {
+ "description": "The environment or the network to which cluster belongs",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ID of the referred resource",
+ "type": "string"
+ },
+ "environment": {
+ "description": "Environment of the referred resource",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ }
+ }
+ },
+ "SCClusterSpecEntity": {
+ "description": "Spec of the cluster record",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the cluster",
+ "type": "string"
+ },
+ "availability": {
+ "description": "The availability zone configuration of the cluster",
+ "type": "string"
+ },
+ "cloud": {
+ "description": "The cloud service provider ",
+ "type": "string"
+ },
+ "zone": {
+ "description": "type of zone availability",
+ "type": "string"
+ },
+ "package": {
+ "description": "Stream governance configuration",
+ "$ref": "#/definitions/Package"
+ },
+ "region": {
+ "description": "The cloud service provider region",
+ "type": "string"
+ },
+ "kafkaBootstrapEndpoint": {
+ "description": "The bootstrap endpoint used by Kafka clients to connect to the cluster",
+ "type": "string"
+ },
+ "httpEndpoint": {
+ "description": "The cluster HTTP request URL.",
+ "type": "string"
+ },
+ "apiEndpoint": {
+ "description": "The Kafka API cluster endpoint",
+ "type": "string"
+ },
+ "config": {
+ "description": "Specification of the cluster configuration",
+ "$ref": "#/definitions/ClusterConfigEntity"
+ },
+ "environment": {
+ "description": "Specification of the cluster environment",
+ "$ref": "#/definitions/SCClusterNetworkEnvironmentEntity"
+ },
+ "network": {
+ "description": "Specification of the cluster network",
+ "$ref": "#/definitions/SCClusterNetworkEnvironmentEntity"
+ },
+ "byok": {
+ "description": "Specification of the cluster byok",
+ "$ref": "#/definitions/SCClusterByokEntity"
+ }
+ }
+ },
+ "SCClusterRecord": {
+ "description": "Details of cluster record",
+ "type": "object",
+ "x-ms-azure-resource": true,
+ "properties": {
+ "kind": {
+ "description": "Type of cluster",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the cluster",
+ "type": "string"
+ },
+ "type": {
+ "description": "Type of the resource",
+ "type": "string"
+ },
+ "properties": {
+ "description": "Cluster Properties",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ClusterProperties"
+ },
+ "name": {
+ "description": "Display name of the cluster",
+ "type": "string"
+ }
+ }
+ },
+ "ClusterProperties": {
+ "description": "Service Connector Cluster Properties",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/SCMetadataEntity"
+ },
+ "spec": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/SCClusterSpecEntity"
+ },
+ "status": {
+ "description": "Specification of the cluster status",
+ "$ref": "#/definitions/ClusterStatusEntity"
+ }
+ }
+ },
+ "ListClustersSuccessResponse": {
+ "description": "Result of GET request to list clusters in the environment of a confluent organization",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of clusters in an environment of a confluent organization",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/SCClusterRecord"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of cluster records if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "TopicRecord": {
+ "description": "Details of topic record",
+ "x-ms-azure-resource": true,
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The ARM Resource Id of the Topic",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Display name of the topic",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "Topic Properties",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/TopicProperties"
+ }
+ }
+ },
+ "TopicProperties": {
+ "description": "Topic Properties",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of topic",
+ "type": "string"
+ },
+ "topicId": {
+ "description": "Topic Id returned by Confluent",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/TopicMetadataEntity"
+ },
+ "partitions": {
+ "description": "Partition Specification of the topic",
+ "$ref": "#/definitions/TopicsRelatedLink"
+ },
+ "configs": {
+ "description": "Config Specification of the topic",
+ "$ref": "#/definitions/TopicsRelatedLink"
+ },
+ "inputConfigs": {
+ "description": "Input Config Specification of the topic",
+ "$ref": "#/definitions/TopicsInputConfigs"
+ },
+ "partitionsReassignments": {
+ "description": "Partition Reassignment Specification of the topic",
+ "$ref": "#/definitions/TopicsRelatedLink"
+ },
+ "partitionsCount": {
+ "description": "Partition count of the topic",
+ "type": "string"
+ },
+ "replicationFactor": {
+ "description": "Replication factor of the topic",
+ "type": "string"
+ }
+ }
+ },
+ "ListTopicsSuccessResponse": {
+ "description": "Result of GET request to list topics in the cluster of a confluent organization",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of topics in a cluster of a confluent organization",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/TopicRecord"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of topics records if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureBlobStorageSinkConnectorServiceInfo": {
+ "x-ms-discriminator-value": "AzureBlobStorageSinkConnector",
+ "type": "object",
+ "description": "The authentication info when auth_type is azureBlobStorageSinkConnector",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectorServiceTypeInfoBase"
+ }
+ ],
+ "properties": {
+ "storageAccountName": {
+ "description": "Azure Blob Storage Account Name",
+ "type": "string"
+ },
+ "storageAccountKey": {
+ "description": "Azure Blob Storage Account Key",
+ "type": "string"
+ },
+ "storageContainerName": {
+ "description": "Azure Blob Storage Account Container Name",
+ "type": "string"
+ }
+ }
+ },
+ "AzureBlobStorageSourceConnectorServiceInfo": {
+ "x-ms-discriminator-value": "AzureBlobStorageSourceConnector",
+ "type": "object",
+ "description": "The connector service type is AzureBlobStorageSourceConnector",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectorServiceTypeInfoBase"
+ }
+ ],
+ "properties": {
+ "storageAccountName": {
+ "description": "Azure Blob Storage Account Name",
+ "type": "string"
+ },
+ "storageAccountKey": {
+ "description": "Azure Blob Storage Account Key",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "storageContainerName": {
+ "description": "Azure Blob Storage Account Container Name",
+ "type": "string"
+ }
+ }
+ },
+ "AzureCosmosDBSinkConnectorServiceInfo": {
+ "x-ms-discriminator-value": "AzureCosmosDBSinkConnector",
+ "type": "object",
+ "description": "The authentication info when auth_type is AzureCosmosDBSinkConnector",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectorServiceTypeInfoBase"
+ }
+ ],
+ "properties": {
+ "cosmosDatabaseName": {
+ "description": "Azure Cosmos Database Name",
+ "type": "string"
+ },
+ "cosmosMasterKey": {
+ "description": "Azure Cosmos Database Master Key",
+ "type": "string"
+ },
+ "cosmosConnectionEndpoint": {
+ "description": "Azure Cosmos Database Connection Endpoint",
+ "type": "string"
+ },
+ "cosmosContainersTopicMapping": {
+ "description": "Azure Cosmos Database Containers Topic Mapping",
+ "type": "string"
+ },
+ "cosmosIdStrategy": {
+ "description": "Azure Cosmos Database Id Strategy",
+ "type": "string"
+ }
+ }
+ },
+ "AzureCosmosDBSourceConnectorServiceInfo": {
+ "x-ms-discriminator-value": "AzureCosmosDBSourceConnector",
+ "type": "object",
+ "description": "The authentication info when auth_type is AzureCosmosDBSourceConnector",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectorServiceTypeInfoBase"
+ }
+ ],
+ "properties": {
+ "cosmosDatabaseName": {
+ "description": "Azure Cosmos Database Name",
+ "type": "string"
+ },
+ "cosmosMasterKey": {
+ "description": "Azure Cosmos Database Master Key",
+ "type": "string"
+ },
+ "cosmosConnectionEndpoint": {
+ "description": "Azure Cosmos Database Connection Endpoint",
+ "type": "string"
+ },
+ "cosmosContainersTopicMapping": {
+ "description": "Azure Cosmos Database Containers Topic Mapping",
+ "type": "string"
+ },
+ "cosmosMessageKeyEnabled": {
+ "description": "Azure Cosmos Database Message Key Enabled",
+ "type": "boolean"
+ },
+ "cosmosMessageKeyField": {
+ "description": "Azure Cosmos Database Message Key Field",
+ "type": "string"
+ }
+ }
+ },
+ "AzureSynapseAnalyticsSinkConnectorServiceInfo": {
+ "x-ms-discriminator-value": "AzureSynapseAnalyticsSinkConnector",
+ "type": "object",
+ "description": "The authentication info when auth_type is AzureSynapseAnalyticsSinkConnector",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectorServiceTypeInfoBase"
+ }
+ ],
+ "properties": {
+ "synapseSqlServerName": {
+ "description": "Azure Synapse Analytics SQL Server Name",
+ "type": "string"
+ },
+ "synapseSqlUser": {
+ "description": "Azure Synapse SQL login details",
+ "type": "string"
+ },
+ "synapseSqlPassword": {
+ "description": "Azure Synapse SQL login details",
+ "type": "string"
+ },
+ "synapseSqlDatabaseName": {
+ "description": "Azure Synapse Dedicated SQL Pool Database Name",
+ "type": "string"
+ }
+ }
+ },
+ "ConnectorServiceType": {
+ "description": "The connector service type.",
+ "type": "string",
+ "enum": [
+ "AzureBlobStorageSinkConnector",
+ "AzureBlobStorageSourceConnector",
+ "AzureCosmosDBSinkConnector",
+ "AzureCosmosDBSourceConnector",
+ "AzureSynapseAnalyticsSinkConnector"
+ ],
+ "x-ms-enum": {
+ "name": "ConnectorServiceType",
+ "modelAsString": true
+ }
+ },
+ "ConnectorServiceTypeInfoBase": {
+ "description": "The connector service type info",
+ "discriminator": "connectorServiceType",
+ "type": "object",
+ "properties": {
+ "connectorServiceType": {
+ "description": "The connector service type.",
+ "$ref": "#/definitions/ConnectorServiceType"
+ }
+ },
+ "required": [
+ "connectorServiceType"
+ ]
+ },
+ "authType": {
+ "enum": [
+ "SERVICE_ACCOUNT",
+ "KAFKA_API_KEY"
+ ],
+ "type": "string",
+ "description": "Kafka Connector Auth Type",
+ "title": "authType",
+ "x-ms-enum": {
+ "name": "authType",
+ "modelAsString": true
+ }
+ },
+ "DataFormatType": {
+ "enum": [
+ "AVRO",
+ "JSON",
+ "STRING",
+ "BYTES",
+ "PROTOBUF"
+ ],
+ "type": "string",
+ "description": "Data Format Type",
+ "title": "DataFormatType",
+ "x-ms-enum": {
+ "name": "DataFormatType",
+ "modelAsString": true
+ }
+ },
+ "KafkaAzureBlobStorageSinkConnectorInfo": {
+ "x-ms-discriminator-value": "KafkaAzureBlobStorageSink",
+ "type": "object",
+ "description": "The partner connector type is KafkaAzureBlobStorageSink",
+ "allOf": [
+ {
+ "$ref": "#/definitions/PartnerInfoBase"
+ }
+ ],
+ "properties": {
+ "authType": {
+ "description": "Kafka Auth Type",
+ "$ref": "#/definitions/authType"
+ },
+ "inputFormat": {
+ "description": "Kafka Input Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "outputFormat": {
+ "description": "Kafka Output Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "apiKey": {
+ "description": "Kafka API Key",
+ "type": "string"
+ },
+ "apiSecret": {
+ "description": "Kafka API Key Secret",
+ "type": "string"
+ },
+ "serviceAccountId": {
+ "description": "Kafka Service Account Id",
+ "type": "string"
+ },
+ "topics": {
+ "description": "Kafka topics list",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "topicsDir": {
+ "description": "Kafka topics directory",
+ "type": "string"
+ },
+ "flushSize": {
+ "description": "Flush size",
+ "type": "string"
+ },
+ "maxTasks": {
+ "description": "Maximum Tasks",
+ "type": "string"
+ },
+ "timeInterval": {
+ "description": "Time Interval",
+ "type": "string"
+ }
+ }
+ },
+ "KafkaAzureBlobStorageSourceConnectorInfo": {
+ "x-ms-discriminator-value": "KafkaAzureBlobStorageSource",
+ "type": "object",
+ "description": "The partner connector type is KafkaAzureBlobStorageSource",
+ "allOf": [
+ {
+ "$ref": "#/definitions/PartnerInfoBase"
+ }
+ ],
+ "properties": {
+ "authType": {
+ "description": "Kafka Auth Type",
+ "$ref": "#/definitions/authType"
+ },
+ "inputFormat": {
+ "description": "Kafka Input Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "outputFormat": {
+ "description": "Kafka Output Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "apiKey": {
+ "description": "Kafka API Key",
+ "type": "string"
+ },
+ "apiSecret": {
+ "description": "Kafka API Secret",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "serviceAccountId": {
+ "description": "Kafka Service Account Id",
+ "type": "string"
+ },
+ "topicRegex": {
+ "description": "Kafka topics Regex pattern",
+ "type": "string"
+ },
+ "topicsDir": {
+ "description": "Kafka topics directory",
+ "type": "string"
+ },
+ "maxTasks": {
+ "description": "Maximum Tasks",
+ "type": "string"
+ }
+ }
+ },
+ "KafkaAzureCosmosDBSinkConnectorInfo": {
+ "x-ms-discriminator-value": "KafkaAzureCosmosDBSink",
+ "type": "object",
+ "description": "The partner connector type is KafkaAzureCosmosDBSink",
+ "allOf": [
+ {
+ "$ref": "#/definitions/PartnerInfoBase"
+ }
+ ],
+ "properties": {
+ "authType": {
+ "description": "Kafka Auth Type",
+ "$ref": "#/definitions/authType"
+ },
+ "inputFormat": {
+ "description": "Kafka Input Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "outputFormat": {
+ "description": "Kafka Output Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "apiKey": {
+ "description": "Kafka API Key",
+ "type": "string"
+ },
+ "apiSecret": {
+ "description": "Kafka API Key Secret",
+ "type": "string"
+ },
+ "serviceAccountId": {
+ "description": "Kafka Service Account Id",
+ "type": "string"
+ },
+ "topics": {
+ "description": "Kafka topics list",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "topicsDir": {
+ "description": "Kafka topics directory",
+ "type": "string"
+ },
+ "flushSize": {
+ "description": "Flush size",
+ "type": "string"
+ },
+ "maxTasks": {
+ "description": "Maximum Tasks",
+ "type": "string"
+ },
+ "timeInterval": {
+ "description": "Time Interval",
+ "type": "string"
+ }
+ }
+ },
+ "KafkaAzureCosmosDBSourceConnectorInfo": {
+ "x-ms-discriminator-value": "KafkaAzureCosmosDBSource",
+ "type": "object",
+ "description": "The partner connector type is KafkaAzureCosmosDBSource",
+ "allOf": [
+ {
+ "$ref": "#/definitions/PartnerInfoBase"
+ }
+ ],
+ "properties": {
+ "authType": {
+ "description": "Kafka Auth Type",
+ "$ref": "#/definitions/authType"
+ },
+ "inputFormat": {
+ "description": "Kafka Input Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "outputFormat": {
+ "description": "Kafka Output Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "apiKey": {
+ "description": "Kafka API Key",
+ "type": "string"
+ },
+ "apiSecret": {
+ "description": "Kafka API Secret",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "serviceAccountId": {
+ "description": "Kafka Service Account Id",
+ "type": "string"
+ },
+ "topicRegex": {
+ "description": "Kafka topics Regex pattern",
+ "type": "string"
+ },
+ "topicsDir": {
+ "description": "Kafka topics directory",
+ "type": "string"
+ },
+ "maxTasks": {
+ "description": "Maximum Tasks",
+ "type": "string"
+ }
+ }
+ },
+ "KafkaAzureSynapseAnalyticsSinkConnectorInfo": {
+ "x-ms-discriminator-value": "KafkaAzureSynapseAnalyticsSink",
+ "type": "object",
+ "description": "The partner connector type is KafkaAzureSynapseAnalyticsSink",
+ "allOf": [
+ {
+ "$ref": "#/definitions/PartnerInfoBase"
+ }
+ ],
+ "properties": {
+ "authType": {
+ "description": "Kafka Auth Type",
+ "$ref": "#/definitions/authType"
+ },
+ "inputFormat": {
+ "description": "Kafka Input Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "outputFormat": {
+ "description": "Kafka Output Data Format Type",
+ "$ref": "#/definitions/DataFormatType"
+ },
+ "apiKey": {
+ "description": "Kafka API Key",
+ "type": "string"
+ },
+ "apiSecret": {
+ "description": "Kafka API Key Secret",
+ "type": "string"
+ },
+ "serviceAccountId": {
+ "description": "Kafka Service Account Id",
+ "type": "string"
+ },
+ "topics": {
+ "description": "Kafka topics list",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "topicsDir": {
+ "description": "Kafka topics directory",
+ "type": "string"
+ },
+ "flushSize": {
+ "description": "Flush size",
+ "type": "string"
+ },
+ "maxTasks": {
+ "description": "Maximum Tasks",
+ "type": "string"
+ },
+ "timeInterval": {
+ "description": "Time Interval",
+ "type": "string"
+ }
+ }
+ },
+ "PartnerConnectorType": {
+ "description": "Partner Connector type.",
+ "type": "string",
+ "enum": [
+ "KafkaAzureBlobStorageSource",
+ "KafkaAzureBlobStorageSink",
+ "KafkaAzureCosmosDBSource",
+ "KafkaAzureCosmosDBSink",
+ "KafkaAzureSynapseAnalyticsSink"
+ ],
+ "x-ms-enum": {
+ "name": "PartnerConnectorType",
+ "modelAsString": true
+ }
+ },
+ "PartnerInfoBase": {
+ "description": "The partner info base",
+ "discriminator": "partnerConnectorType",
+ "type": "object",
+ "properties": {
+ "partnerConnectorType": {
+ "description": "The partner connector type.",
+ "$ref": "#/definitions/PartnerConnectorType"
+ }
+ },
+ "required": [
+ "partnerConnectorType"
+ ]
+ },
+ "ConnectorState": {
+ "enum": [
+ "PROVISIONING",
+ "RUNNING",
+ "PAUSED",
+ "FAILED"
+ ],
+ "type": "string",
+ "description": "Connector Status",
+ "title": "ConnectorStatus",
+ "x-ms-enum": {
+ "name": "ConnectorStatus",
+ "modelAsString": true
+ }
+ },
+ "ConnectorType": {
+ "enum": [
+ "SINK",
+ "SOURCE"
+ ],
+ "type": "string",
+ "description": "Connector Type",
+ "title": "ConnectorType",
+ "x-ms-enum": {
+ "name": "ConnectorType",
+ "modelAsString": true
+ }
+ },
+ "ConnectorClass": {
+ "enum": [
+ "AZUREBLOBSOURCE",
+ "AZUREBLOBSINK"
+ ],
+ "type": "string",
+ "description": "Connector Class",
+ "title": "ConnectorClass",
+ "x-ms-enum": {
+ "name": "ConnectorClass",
+ "modelAsString": true
+ }
+ },
+ "ConnectorInfoBase": {
+ "description": "Connector Info Base properties",
+ "type": "object",
+ "properties": {
+ "connectorType": {
+ "description": "Connector Type",
+ "$ref": "#/definitions/ConnectorType"
+ },
+ "connectorClass": {
+ "description": "Connector Class",
+ "$ref": "#/definitions/ConnectorClass"
+ },
+ "connectorName": {
+ "description": "Connector Name",
+ "type": "string"
+ },
+ "connectorId": {
+ "description": "Connector Id",
+ "type": "string"
+ },
+ "connectorState": {
+ "description": "Connector Status",
+ "$ref": "#/definitions/ConnectorState"
+ }
+ }
+ },
+ "ConnectorResourceProperties": {
+ "description": "The resource properties of the Connector",
+ "type": "object",
+ "properties": {
+ "connectorBasicInfo": {
+ "description": "Connector Info Base",
+ "$ref": "#/definitions/ConnectorInfoBase"
+ },
+ "connectorServiceTypeInfo": {
+ "description": "Connector Service type info base properties.",
+ "$ref": "#/definitions/ConnectorServiceTypeInfoBase"
+ },
+ "partnerConnectorInfo": {
+ "description": "The connection information consumed by applications.",
+ "$ref": "#/definitions/PartnerInfoBase"
+ }
+ }
+ },
+ "ConnectorResource": {
+ "description": "Details of connector record",
+ "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."
+ }
+ ],
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "name": {
+ "description": "Display name of the connector",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "description": "The properties of the Connector",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ConnectorResourceProperties"
+ }
+ }
+ },
+ "ListConnectorsSuccessResponse": {
+ "description": "Result of GET request to list connectors in the cluster of a confluent organization",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of connectors in a cluster of a confluent organization",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/ConnectorResource"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of connectors records if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "ListSchemaRegistryClustersResponse": {
+ "description": "Result of GET request to list schema registry clusters in the environment of a confluent organization",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of schema registry clusters in an environment of a confluent organization",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/SchemaRegistryClusterRecord"
+ }
+ },
+ "nextLink": {
+ "description": "URL to get the next set of schema registry cluster records if there are any.",
+ "type": "string"
+ }
+ }
+ },
+ "SchemaRegistryClusterEnvironmentRegionEntity": {
+ "description": "The environment associated with this object",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ID of the referred resource",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ }
+ }
+ },
+ "SchemaRegistryClusterSpecEntity": {
+ "description": "Details of schema registry cluster spec",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the schema registry cluster",
+ "type": "string"
+ },
+ "httpEndpoint": {
+ "description": "Http endpoint of the cluster",
+ "type": "string"
+ },
+ "package": {
+ "description": "Type of the cluster package Advanced, essentials",
+ "type": "string"
+ },
+ "region": {
+ "description": "Region details of the schema registry cluster",
+ "type": "object",
+ "$ref": "#/definitions/SchemaRegistryClusterEnvironmentRegionEntity"
+ },
+ "environment": {
+ "description": "Environment details of the schema registry cluster",
+ "type": "object",
+ "$ref": "#/definitions/SchemaRegistryClusterEnvironmentRegionEntity"
+ },
+ "cloud": {
+ "description": "The cloud service provider ",
+ "type": "string"
+ }
+ }
+ },
+ "SchemaRegistryClusterStatusEntity": {
+ "description": "Status of the schema registry cluster record",
+ "type": "object",
+ "properties": {
+ "phase": {
+ "description": "The lifecycle phase of the cluster",
+ "type": "string"
+ }
+ }
+ },
+ "SchemaRegistryClusterRecord": {
+ "description": "Details of schema registry cluster record",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Kind of the cluster",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the cluster",
+ "type": "string"
+ },
+ "properties": {
+ "description": "Schema Registry Cluster Properties",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/SchemaRegistryClusterProperties"
+ }
+ }
+ },
+ "SchemaRegistryClusterProperties": {
+ "description": "Schema Registry Cluster Properties",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/SCMetadataEntity"
+ },
+ "spec": {
+ "description": "Specification of the schema registry cluster",
+ "$ref": "#/definitions/SchemaRegistryClusterSpecEntity"
+ },
+ "status": {
+ "description": "Specification of the cluster status",
+ "$ref": "#/definitions/SchemaRegistryClusterStatusEntity"
+ }
+ }
+ },
+ "RegionSpecEntity": {
+ "description": "Region spec details",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Display Name of the region",
+ "type": "string"
+ },
+ "cloud": {
+ "description": "Cloud provider name",
+ "type": "string"
+ },
+ "regionName": {
+ "description": "Region name",
+ "type": "string"
+ },
+ "packages": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "RegionRecord": {
+ "description": "Details of region record",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Kind of the cluster",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the cluster",
+ "type": "string"
+ },
+ "properties": {
+ "description": "Region Properties",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/RegionProperties"
+ }
+ }
+ },
+ "RegionProperties": {
+ "description": "Region Properties",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/SCMetadataEntity"
+ },
+ "spec": {
+ "description": "Specification of the region",
+ "$ref": "#/definitions/RegionSpecEntity"
+ }
+ }
+ },
+ "ListRegionsSuccessResponse": {
+ "description": "Result of POST request to list regions supported by confluent",
+ "type": "object",
+ "properties": {
+ "data": {
+ "description": "List of regions supported by confluent",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/RegionRecord"
+ }
+ }
+ }
+ },
+ "APIKeyRecord": {
+ "description": "Details API key",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "description": "Type of api key",
+ "type": "string"
+ },
+ "id": {
+ "description": "Id of the api key",
+ "type": "string"
+ },
+ "properties": {
+ "description": "API Key Properties",
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/APIKeyProperties"
+ }
+ }
+ },
+ "APIKeyProperties": {
+ "description": "API Key Properties",
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "description": "Metadata of the record",
+ "$ref": "#/definitions/SCMetadataEntity"
+ },
+ "spec": {
+ "description": "Specification of the API Key",
+ "$ref": "#/definitions/APIKeySpecEntity"
+ }
+ }
+ },
+ "APIKeySpecEntity": {
+ "description": "Spec of the API Key record",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The description of the API Key",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the API Key",
+ "type": "string"
+ },
+ "secret": {
+ "description": "API Key Secret ",
+ "type": "string",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "resource": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/APIKeyResourceEntity"
+ },
+ "owner": {
+ "description": "Specification of the cluster",
+ "$ref": "#/definitions/APIKeyOwnerEntity"
+ }
+ }
+ },
+ "APIKeyResourceEntity": {
+ "description": "API Key Resource details which can be kafka cluster or schema registry cluster",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Id of the resource",
+ "type": "string"
+ },
+ "environment": {
+ "description": "The environment of the api key",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the api key resource object ",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ },
+ "kind": {
+ "description": "Type of the owner which can be service or user account",
+ "type": "string"
+ }
+ }
+ },
+ "APIKeyOwnerEntity": {
+ "description": "API Key Owner details which can be a user or service account",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "API Key owner id",
+ "type": "string"
+ },
+ "related": {
+ "description": "API URL for accessing or modifying the referred object ",
+ "type": "string"
+ },
+ "resourceName": {
+ "description": "CRN reference to the referred resource",
+ "type": "string"
+ },
+ "kind": {
+ "description": "Type of the owner service or user account",
+ "type": "string"
+ }
+ }
+ },
+ "CreateAPIKeyModel": {
+ "description": "Create API Key model",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the API Key",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the API Key",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Client Api Version.",
+ "required": true,
+ "type": "string"
+ },
+ "SubscriptionIdParameter": {
+ "in": "path",
+ "name": "subscriptionId",
+ "description": "Microsoft Azure subscription id",
+ "required": true,
+ "type": "string"
+ },
+ "ResourceGroupParameter": {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Resource group name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "OrganizationResourceNameParameter": {
+ "in": "path",
+ "name": "organizationName",
+ "description": "Organization resource name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "RoleBindingIdParameter": {
+ "in": "path",
+ "name": "roleBindingId",
+ "description": "Confluent Role binding id",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "EnvironmentIdParameter": {
+ "in": "path",
+ "name": "environmentId",
+ "description": "Confluent environment id",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ClusterIdParameter": {
+ "in": "path",
+ "name": "clusterId",
+ "description": "Confluent kafka or schema registry cluster id",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ConnectorNameParameter": {
+ "in": "path",
+ "name": "connectorName",
+ "description": "Confluent connector name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "TopicNameParameter": {
+ "in": "path",
+ "name": "topicName",
+ "description": "Confluent kafka or schema registry topic name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ConfluentAPIKeyParameter": {
+ "in": "path",
+ "name": "apiKeyId",
+ "description": "Confluent API Key id",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "PageSizeParameter": {
+ "name": "pageSize",
+ "in": "query",
+ "description": "Pagination size",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "x-ms-parameter-location": "method"
+ },
+ "PageTokenParameter": {
+ "name": "pageToken",
+ "in": "query",
+ "description": "An opaque pagination token to fetch the next set of records",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ClusterList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ClusterList.json
new file mode 100644
index 000000000000..8bb475593e50
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ClusterList.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environment": "env-00000",
+ "body": {
+ "searchFilters": {
+ "pageSize": "10",
+ "pageToken": "asc4fts4ft"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "ClusterList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/cmk/v2/clusters",
+ "last": "https://api.confluent.cloud/cmk/v2/clusters?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/cmk/v2/clusters?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/cmk/v2/clusters?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ {
+ "kind": "Cluster",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/cmk/v2/clusters/lkc-12345",
+ "resource_name": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/cloud-cluster=lkc-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "spec": {
+ "display_name": "ProdKafkaCluster",
+ "availability": "SINGLE_ZONE",
+ "cloud": "GCP",
+ "region": "us-east4",
+ "config": {
+ "kind": "Basic"
+ },
+ "kafka_bootstrap_endpoint": "lkc-00000-00000.us-central1.gcp.glb.confluent.cloud:9092",
+ "http_endpoint": "https://lkc-00000-00000.us-central1.gcp.glb.confluent.cloud",
+ "api_endpoint": "https://pkac-00000.us-west-2.aws.confluent.cloud",
+ "environment": {
+ "id": "env-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/v2/environments/env-00000",
+ "resource_name": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000"
+ },
+ "network": {
+ "id": "n-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/networking/v1/networks/n-00000",
+ "resource_name": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/network=n-00000"
+ },
+ "byok": {
+ "id": "cck-00000",
+ "related": "https://api.confluent.cloud/byok/v1/keys/cck-00000",
+ "resource_name": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/key=cck-00000"
+ }
+ },
+ "status": {
+ "phase": "PROVISIONED",
+ "cku": 2
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_CreateRoleBinding.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_CreateRoleBinding.json
new file mode 100644
index 000000000000..bc7a3b3a6b2e
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_CreateRoleBinding.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "principal": "User:u-111aaa",
+ "role_name": "CloudClusterAdmin",
+ "crn_pattern": "crn://confluent.cloud/organization=1111aaaa-11aa-11aa-11aa-111111aaaaaa/environment=env-aaa1111/cloud-cluster=lkc-1111aaa"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "RoleBinding",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/iam/v2/role-bindings/rb-12345",
+ "resource_name": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/role-binding=rb-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "principal": "User:u-111aaa",
+ "role_name": "CloudClusterAdmin",
+ "crn_pattern": "crn://confluent.cloud/organization=1111aaaa-11aa-11aa-11aa-111111aaaaaa/environment=env-aaa1111/cloud-cluster=lkc-1111aaa"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_DeleteRoleBinding.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_DeleteRoleBinding.json
new file mode 100644
index 000000000000..a1ebfd6da887
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_DeleteRoleBinding.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "roleBindingId": "dlz-f3a90de"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_EnvironmentList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_EnvironmentList.json
new file mode 100644
index 000000000000..72f4413cfd18
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_EnvironmentList.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "searchFilters": {
+ "pageSize": "10",
+ "pageToken": "asc4fts4ft"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "EnvironmentList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/org/v2/environments",
+ "last": "https://api.confluent.cloud/org/v2/environments?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/org/v2/environments?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/org/v2/environments?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ {
+ "kind": "Environment",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/org/v2/environments/e-12345",
+ "resource_name": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=e-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "display_name": "prod-finance01"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InvitationsList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InvitationsList.json
new file mode 100644
index 000000000000..e2fcfe429ff3
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InvitationsList.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "searchFilters": {
+ "pageSize": "10",
+ "pageToken": "asc4fts4ft",
+ "status": "INVITE_STATUS_SENT"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "InvitationList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/iam/v2/invitations",
+ "last": "https://api.confluent.cloud/iam/v2/invitations?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/iam/v2/invitations?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/iam/v2/invitations?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ {
+ "kind": "Invitation",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/iam/v2/invitations/i-12345",
+ "resource_name": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/invitation=i-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "email": "johndoe@confluent.io",
+ "auth_type": "AUTH_TYPE_SSO",
+ "status": "INVITE_STATUS_SENT",
+ "accepted_at": "2022-07-06T17:21:33Z",
+ "expires_at": "2022-07-07T17:22:39Z"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InviteUser.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InviteUser.json
new file mode 100644
index 000000000000..93cc4185366f
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_InviteUser.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "invitedUserDetails": {
+ "invitedEmail": "user2@onmicrosoft.com",
+ "auth_type": "AUTH_TYPE_SSO"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "Invitation",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/iam/v2/invitations/i-12345",
+ "resource_name": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/invitation=i-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "email": "johndoe@confluent.io",
+ "auth_type": "AUTH_TYPE_SSO",
+ "status": "INVITE_STATUS_SENT",
+ "accepted_at": "2022-07-06T17:21:33Z",
+ "expires_at": "2022-07-07T17:22:39Z"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingList.json
new file mode 100644
index 000000000000..2ce3ac2cea76
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingList.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "crn_pattern": "crn://confluent.cloud/organization=1111aaaa-11aa-11aa-11aa-111111aaaaaa/environment=env-aaa1111/cloud-cluster=lkc-1111aaa",
+ "principal": "User:u-111aaa",
+ "body": {
+ "searchFilters": {
+ "pageSize": "10",
+ "pageToken": "asc4fts4ft"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "RoleBindingList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/iam/v2/role-bindings",
+ "last": "https://api.confluent.cloud/iam/v2/role-bindings?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/iam/v2/role-bindings?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/iam/v2/role-bindings?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ {
+ "kind": "RoleBinding",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/iam/v2/role-bindings/rb-12345",
+ "resource_name": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/role-binding=rb-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "principal": "User:u-111aaa",
+ "role_name": "CloudClusterAdmin",
+ "crn_pattern": "crn://confluent.cloud/organization=1111aaaa-11aa-11aa-11aa-111111aaaaaa/environment=env-aaa1111/cloud-cluster=lkc-1111aaa"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingNameList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingNameList.json
new file mode 100644
index 000000000000..cc283b8c1cbc
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_RoleBindingNameList.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "searchFilters": {
+ "crn_pattern": "crn://confluent.cloud/organization=1aa7de07-298e-479c-8f2f-16ac91fd8e76",
+ "namespace": "public,dataplane,networking,identity,datagovernance,connect,streamcatalog,pipelines,ksql"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "RoleDisplayNameList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/iam/v2/role-bindings",
+ "last": "https://api.confluent.cloud/iam/v2/role-bindings?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/iam/v2/role-bindings?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/iam/v2/role-bindings?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ "MetricsViewer",
+ "OrganizationAdmin",
+ "Operator",
+ "NetworkAdmin",
+ "ResourceKeyAdmin",
+ "AccountAdmin"
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ServiceAccountsList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ServiceAccountsList.json
new file mode 100644
index 000000000000..abb2887a7258
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_ServiceAccountsList.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "searchFilters": {
+ "pageSize": "10",
+ "pageToken": "asc4fts4ft"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "ServiceAccountList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/iam/v2/service-accounts",
+ "last": "https://api.confluent.cloud/iam/v2/service-accounts?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/iam/v2/service-accounts?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/iam/v2/service-accounts?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ {
+ "kind": "ServiceAccount",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/iam/v2/service-accounts/sa-12345",
+ "resource_name": "crn://confluent.cloud/service-account=sa-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "display_name": "DeLorean_auto_repair",
+ "description": "Doc's repair bot for the DeLorean"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_UsersList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_UsersList.json
new file mode 100644
index 000000000000..ad4aa6f55c10
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Access_UsersList.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "searchFilters": {
+ "pageSize": "10",
+ "pageToken": "asc4fts4ft"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "UserList",
+ "metadata": {
+ "first": "https://api.confluent.cloud/iam/v2/users",
+ "last": "https://api.confluent.cloud/iam/v2/users?page_token=bcAOehAY8F16YD84Z1wT",
+ "prev": "https://api.confluent.cloud/iam/v2/users?page_token=YIXRY97wWYmwzrax4dld",
+ "next": "https://api.confluent.cloud/iam/v2/users?page_token=UvmDWOB1iwfAIBPj6EYb",
+ "total_size": 123
+ },
+ "data": [
+ {
+ "kind": "User",
+ "id": "dlz-f3a90de",
+ "metadata": {
+ "self": "https://api.confluent.cloud/iam/v2/users/u-12345",
+ "resource_name": "crn://confluent.cloud/user=u-12345",
+ "created_at": "2006-01-02T15:04:05-07:00",
+ "updated_at": "2006-01-02T15:04:05-07:00",
+ "deleted_at": "2006-01-02T15:04:05-07:00"
+ },
+ "email": "marty.mcfly@example.com",
+ "full_name": "Marty McFly",
+ "auth_type": "AUTH_TYPE_SSO"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Create.json
new file mode 100644
index 000000000000..e51649c58b34
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Create.json
@@ -0,0 +1,121 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-1",
+ "clusterId": "cluster-1",
+ "body": {
+ "properties": {
+ "spec": {
+ "package": "ESSENTIALS",
+ "environment": {
+ "id": "env-1"
+ },
+ "region": "us-east4"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "Cluster",
+ "id": "dlz-f3a90de",
+ "name": "cluster-1",
+ "properties": {
+ "metadata": {
+ "self": "https://api.confluent.cloud/cmk/v2/clusters/lkc-12345",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/cloud-cluster=lkc-12345",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ },
+ "spec": {
+ "name": "ProdKafkaCluster",
+ "availability": "SINGLE_ZONE",
+ "cloud": "GCP",
+ "region": "us-east4",
+ "config": {
+ "kind": "Basic"
+ },
+ "kafkaBootstrapEndpoint": "lkc-00000-00000.us-central1.gcp.glb.confluent.cloud:9092",
+ "httpEndpoint": "https://lkc-00000-00000.us-central1.gcp.glb.confluent.cloud",
+ "apiEndpoint": "https://pkac-00000.us-west-2.aws.confluent.cloud",
+ "environment": {
+ "id": "env-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/v2/environments/env-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000"
+ },
+ "network": {
+ "id": "n-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/networking/v1/networks/n-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/network=n-00000"
+ },
+ "byok": {
+ "id": "cck-00000",
+ "related": "https://api.confluent.cloud/byok/v1/keys/cck-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/key=cck-00000"
+ }
+ },
+ "status": {
+ "phase": "PROVISIONED",
+ "cku": 2
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "kind": "Cluster",
+ "id": "dlz-f3a90de",
+ "name": "cluster-1",
+ "properties": {
+ "metadata": {
+ "self": "https://api.confluent.cloud/cmk/v2/clusters/lkc-12345",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/cloud-cluster=lkc-12345",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ },
+ "spec": {
+ "name": "ProdKafkaCluster",
+ "availability": "SINGLE_ZONE",
+ "cloud": "GCP",
+ "region": "us-east4",
+ "config": {
+ "kind": "Basic"
+ },
+ "kafkaBootstrapEndpoint": "lkc-00000-00000.us-central1.gcp.glb.confluent.cloud:9092",
+ "httpEndpoint": "https://lkc-00000-00000.us-central1.gcp.glb.confluent.cloud",
+ "apiEndpoint": "https://pkac-00000.us-west-2.aws.confluent.cloud",
+ "environment": {
+ "id": "env-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/v2/environments/env-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000"
+ },
+ "network": {
+ "id": "n-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/networking/v1/networks/n-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/network=n-00000"
+ },
+ "byok": {
+ "id": "cck-00000",
+ "related": "https://api.confluent.cloud/byok/v1/keys/cck-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/key=cck-00000"
+ }
+ },
+ "status": {
+ "phase": "PROVISIONED",
+ "cku": 2
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Delete.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Delete.json
new file mode 100644
index 000000000000..8669a1da6167
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Cluster_Delete.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Create.json
new file mode 100644
index 000000000000..1915191cf2ab
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Create.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-1",
+ "body": {
+ "properties": {
+ "streamGovernanceConfig": {
+ "package": "ESSENTIALS"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "env-1",
+ "kind": "Environment",
+ "id": "dlz-f3a90de",
+ "properties": {
+ "streamGovernanceConfig": {
+ "package": "ESSENTIALS"
+ },
+ "metadata": {
+ "self": "https://api.confluent.cloud/org/v2/environments/env-1",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-1",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "env-1",
+ "kind": "Environment",
+ "id": "dlz-f3a90de",
+ "properties": {
+ "streamGovernanceConfig": {
+ "package": "ESSENTIALS"
+ },
+ "metadata": {
+ "self": "https://api.confluent.cloud/org/v2/environments/env-1",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-1",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Delete.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Delete.json
new file mode 100644
index 000000000000..67186d8fcfca
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Environment_Delete.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_Create.json
new file mode 100644
index 000000000000..05a140fa6d06
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_Create.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "requestBody": {
+ "properties": {
+ "accepted": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Confluent/agreements/default",
+ "name": "default",
+ "type": "Microsoft.Confluent/agreements",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-05-09T14:28:47.284Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-05-09T14:28:47.284Z"
+ },
+ "properties": {
+ "publisher": "pubid1",
+ "product": "offid1",
+ "plan": "planid1",
+ "licenseTextLink": "test.licenseLink1",
+ "privacyPolicyLink": "test.privacyPolicyLink1",
+ "retrieveDatetime": "2020-11-05T17:33:07.12132Z",
+ "signature": "YKWOQOKH2BCKZ46O7SCKHANWEENRFRU5WB4LXDFUYWCBWTS4AG4SGQXCOZYIR5ZJCZTXRMZKYZMO2BJSL5YKPLAR4LBFRUNS6CRYE7A",
+ "accepted": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_List.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_List.json
new file mode 100644
index 000000000000..e50fe762f0d8
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/MarketplaceAgreements_List.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Confluent/agreements/default",
+ "name": "planid1",
+ "type": "Microsoft.Confluent/agreements",
+ "properties": {
+ "publisher": "pubid1",
+ "product": "offid1",
+ "plan": "planid1",
+ "licenseTextLink": "test.licenseLink1",
+ "privacyPolicyLink": "test.privacyPolicyLink1",
+ "retrieveDatetime": "2017-08-15T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": true
+ }
+ },
+ {
+ "id": "id2",
+ "name": "planid2",
+ "type": "Microsoft.MarketplaceOrdering/offertypes",
+ "properties": {
+ "publisher": "pubid2",
+ "product": "offid2",
+ "plan": "planid2",
+ "licenseTextLink": "test.licenseLin2k",
+ "privacyPolicyLink": "test.privacyPolicyLink2",
+ "retrieveDatetime": "2017-08-14T11:33:07.12132Z",
+ "signature": "ASDFSDAFWEFASDGWERLWER",
+ "accepted": true
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/OrganizationOperations_List.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/OrganizationOperations_List.json
new file mode 100644
index 000000000000..67b560a448c5
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/OrganizationOperations_List.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.Confluent/organizations/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.Confluent",
+ "resource": "organizations",
+ "operation": "Get/List organization resources",
+ "description": "Read organization"
+ }
+ },
+ {
+ "name": "Microsoft.Confluent/organizations/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.Confluent",
+ "resource": "organizations",
+ "operation": "Create/Update organization resources",
+ "description": "Write organization"
+ }
+ },
+ {
+ "name": "Microsoft.Confluent/organizations/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.Confluent",
+ "resource": "organizations",
+ "operation": "Delete organization resources",
+ "description": "Delete organization"
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ClusterList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ClusterList.json
new file mode 100644
index 000000000000..df66bad3408d
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ClusterList.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "pageSize": 10,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "kind": "Cluster",
+ "id": "dlz-f3a90de",
+ "properties": {
+ "metadata": {
+ "self": "https://api.confluent.cloud/cmk/v2/clusters/lkc-12345",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/cloud-cluster=lkc-12345",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ },
+ "spec": {
+ "name": "ProdKafkaCluster",
+ "availability": "SINGLE_ZONE",
+ "cloud": "GCP",
+ "region": "us-east4",
+ "config": {
+ "kind": "Basic"
+ },
+ "kafkaBootstrapEndpoint": "lkc-00000-00000.us-central1.gcp.glb.confluent.cloud:9092",
+ "httpEndpoint": "https://lkc-00000-00000.us-central1.gcp.glb.confluent.cloud",
+ "apiEndpoint": "https://pkac-00000.us-west-2.aws.confluent.cloud",
+ "environment": {
+ "id": "env-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/v2/environments/env-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000"
+ },
+ "network": {
+ "id": "n-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/networking/v1/networks/n-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/network=n-00000"
+ },
+ "byok": {
+ "id": "cck-00000",
+ "related": "https://api.confluent.cloud/byok/v1/keys/cck-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/key=cck-00000"
+ }
+ },
+ "status": {
+ "phase": "PROVISIONED",
+ "cku": 2
+ }
+ }
+ }
+ ],
+ "nextLink": "nextLink?pageToken=xoi3753asdfe&pageSize=10"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ConnectorList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ConnectorList.json
new file mode 100644
index 000000000000..3359c03efe33
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ConnectorList.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "pageSize": 10,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "connector-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/connectors/connector-1",
+ "properties": {
+ "connectorBasicInfo": {
+ "connectorType": "SINK",
+ "connectorClass": "AZUREBLOBSINK",
+ "connectorState": "RUNNING",
+ "connectorId": "lcc-l",
+ "connectorName": "connector-1"
+ },
+ "connectorServiceTypeInfo": {
+ "connectorServiceType": "AzureBlobStorageSinkConnector",
+ "storageAccountName": "stcfaccount-1",
+ "storageAccountKey": "*******",
+ "storageContainerName": "continer-1"
+ },
+ "partnerConnectorInfo": {
+ "partnerConnectorType": "KafkaAzureBlobStorageSink",
+ "flushSize": "1000",
+ "maxTasks": "2",
+ "timeInterval": "DAILY",
+ "apiKey": "xxxxxxx",
+ "apiSecret": "*******",
+ "authType": "KAFKA_API_KEY",
+ "inputFormat": "JSON",
+ "outputFormat": "JSON",
+ "topics": [
+ "topic-1"
+ ],
+ "topicsDir": "topicsDir"
+ }
+ }
+ }
+ ],
+ "nextLink": "nextLink?pageToken=xoi3753asdfe&pageSize=10"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Create.json
new file mode 100644
index 000000000000..1fb574e16ad0
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Create.json
@@ -0,0 +1,119 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "properties": {
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ]
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ },
+ "linkOrganization": {
+ "token": "string"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization",
+ "name": "myOrganization",
+ "type": "Microsoft.Confluent/organizations",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-05-09T14:28:47.284Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-05-09T14:28:47.284Z"
+ },
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Succeeded",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ],
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization",
+ "name": "myOrganization",
+ "type": "Microsoft.Confluent/organizations",
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Accepted",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ],
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateClusterAPIKey.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateClusterAPIKey.json
new file mode 100644
index 000000000000..e5fe32d4c06d
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateClusterAPIKey.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "clusterId-123",
+ "body": {
+ "name": "CI kafka access key",
+ "description": "This API key provides kafka access to cluster x"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "JDCXTFUVFVQGF56J",
+ "kind": "ApiKey",
+ "properties": {
+ "metadata": {
+ "createdTimestamp": "2023-11-15T16:15:44.489498Z",
+ "resourceName": "crn://api.stag.cpdev.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/service-account=sa-wwn7mm/api-key=JDCXTFUVFVQGF56J",
+ "self": "https://api.stag.cpdev.cloud/iam/v2/api-keys/JDCXTFUVFVQGF56J",
+ "updatedTimestamp": "2023-11-15T16:15:44.489498Z"
+ },
+ "spec": {
+ "description": "This API key provides kafka access to cluster x",
+ "name": "CI kafka access key",
+ "owner": {
+ "id": "sa-wwn7mm",
+ "kind": "ServiceAccount",
+ "related": "https://api.stag.cpdev.cloud/iam/v2/service-accounts/sa-wwn7mm",
+ "resourceName": "crn://api.stag.cpdev.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/service-account=sa-wwn7mm"
+ },
+ "resource": {
+ "id": "lsrc-stgc1yrzz3",
+ "kind": "SchemaRegistry",
+ "related": "https://api.stag.cpdev.cloud/srcm/v2/schema-registries/lsrc-stgc1yrzz3",
+ "resourceName": "crn://api.stag.cpdev.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/schema-registry=lsrc-stgc1yrzz3"
+ },
+ "secret": ""
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateConnectorByName.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateConnectorByName.json
new file mode 100644
index 000000000000..681ff50b9365
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_CreateConnectorByName.json
@@ -0,0 +1,117 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de",
+ "connectorName": "connector-1",
+ "body": {
+ "properties": {
+ "connectorBasicInfo": {
+ "connectorType": "SINK",
+ "connectorClass": "AZUREBLOBSTORAGESINK",
+ "connectorName": "connector-1"
+ },
+ "connectorServiceTypeInfo": {
+ "connectorServiceType": "AzureBlobStorageSinkConnector",
+ "storageAccountName": "stcfaccount-1",
+ "storageAccountKey": "*******",
+ "storageContainerName": "continer-1"
+ },
+ "partnerConnectorInfo": {
+ "partnerConnectorType": "KafkaAzureBlobStorageSink",
+ "flushSize": "1000",
+ "maxTasks": "2",
+ "timeInterval": "DAILY",
+ "apiKey": "xxxxxxx",
+ "apiSecret": "*******",
+ "authType": "KAFKA_API_KEY",
+ "inputFormat": "JSON",
+ "outputFormat": "JSON",
+ "topics": [
+ "topic-1"
+ ],
+ "topicsDir": "topicsDir"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "connector-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/connectors/connector-1",
+ "type": "Microsoft.Confluent/organizations/environments/clusters/connectors",
+ "properties": {
+ "connectorBasicInfo": {
+ "connectorType": "SINK",
+ "connectorClass": "AZUREBLOBSTORAGESINK",
+ "connectorState": "RUNNING",
+ "connectorId": "lcc-l",
+ "connectorName": "connector-1"
+ },
+ "connectorServiceTypeInfo": {
+ "connectorServiceType": "AzureBlobStorageSinkConnector",
+ "storageAccountName": "stcfaccount-1",
+ "storageAccountKey": "*******",
+ "storageContainerName": "continer-1"
+ },
+ "partnerConnectorInfo": {
+ "partnerConnectorType": "KafkaAzureBlobStorageSink",
+ "flushSize": "1000",
+ "maxTasks": "2",
+ "timeInterval": "DAILY",
+ "apiKey": "xxxxxxx",
+ "apiSecret": "*******",
+ "authType": "KAFKA_API_KEY",
+ "inputFormat": "JSON",
+ "outputFormat": "JSON",
+ "topics": [
+ "topic-1"
+ ],
+ "topicsDir": "topicsDir"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "connector-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/connectors/connector-1",
+ "type": "Microsoft.Confluent/organizations/environments/clusters/connectors",
+ "properties": {
+ "connectorBasicInfo": {
+ "connectorType": "SINK",
+ "connectorClass": "AZUREBLOBSINK",
+ "connectorState": "RUNNING",
+ "connectorId": "lcc-l",
+ "connectorName": "connector-1"
+ },
+ "connectorServiceTypeInfo": {
+ "connectorServiceType": "AzureBlobStorageSinkConnector",
+ "storageAccountName": "stcfaccount-1",
+ "storageAccountKey": "*******",
+ "storageContainerName": "continer-1"
+ },
+ "partnerConnectorInfo": {
+ "partnerConnectorType": "KafkaAzureBlobStorageSink",
+ "flushSize": "1000",
+ "maxTasks": "2",
+ "timeInterval": "DAILY",
+ "apiKey": "xxxxxxx",
+ "apiSecret": "*******",
+ "authType": "KAFKA_API_KEY",
+ "inputFormat": "JSON",
+ "outputFormat": "JSON",
+ "topics": [
+ "topic-1"
+ ],
+ "topicsDir": "topicsDir"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Delete.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Delete.json
new file mode 100644
index 000000000000..5e562ee89dc6
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Delete.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization"
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/locations/eastus/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-02-09-preview"
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/locations/eastus/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-02-09-preview"
+ }
+ },
+ "204": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/locations/eastus/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2023-02-09-preview"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteClusterAPIKey.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteClusterAPIKey.json
new file mode 100644
index 000000000000..5e5c76fd65e4
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteClusterAPIKey.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "apiKeyId": "ZFZ6SZZZWGYBEIFB"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteConnectorByName.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteConnectorByName.json
new file mode 100644
index 000000000000..29ee49d6f10c
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_DeleteConnectorByName.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de",
+ "connectorName": "connector-1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_EnvironmentList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_EnvironmentList.json
new file mode 100644
index 000000000000..5b1ee2308e36
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_EnvironmentList.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "pageSize": 10,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "kind": "Environment",
+ "id": "dlz-f3a90de",
+ "properties": {
+ "metadata": {
+ "self": "https://api.confluent.cloud/org/v2/environments/e-12345",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=e-12345",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ }
+ },
+ "name": "prod-finance01"
+ }
+ ],
+ "nextLink": "nextLink?pageToken=xoi3753asdfe&pageSize=10"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Get.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Get.json
new file mode 100644
index 000000000000..ab40033a98f6
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Get.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization",
+ "name": "myOrganization",
+ "type": "Microsoft.Confluent/organizations",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-05-09T14:28:47.284Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-05-09T14:28:47.284Z"
+ },
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Accepted",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ],
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterAPIKey.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterAPIKey.json
new file mode 100644
index 000000000000..e9935a681b04
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterAPIKey.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "apiKeyId": "apiKeyId-123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "apiKeyId-123",
+ "kind": "ApiKey",
+ "properties": {
+ "metadata": {
+ "createdTimestamp": "2023-11-15T16:15:44.489498Z",
+ "resourceName": "crn://api.stag.cpdev.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/service-account=sa-wwn7mm/api-key=apiKeyId-123",
+ "self": "https://api.stag.cpdev.cloud/iam/v2/api-keys/apiKeyId-123",
+ "updatedTimestamp": "2023-11-15T16:15:44.489498Z"
+ },
+ "spec": {
+ "description": "This API key provides kafka access to cluster x",
+ "name": "CI kafka access key",
+ "owner": {
+ "id": "sa-wwn7mm",
+ "kind": "ServiceAccount",
+ "related": "https://api.stag.cpdev.cloud/iam/v2/service-accounts/sa-wwn7mm",
+ "resourceName": "crn://api.stag.cpdev.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/service-account=sa-wwn7mm"
+ },
+ "resource": {
+ "id": "lsrc-stgc1yrzz3",
+ "kind": "SchemaRegistry",
+ "related": "https://api.stag.cpdev.cloud/srcm/v2/schema-registries/lsrc-stgc1yrzz3",
+ "resourceName": "crn://api.stag.cpdev.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/schema-registry=lsrc-stgc1yrzz3",
+ "environment": "env-0000"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterById.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterById.json
new file mode 100644
index 000000000000..399955cc93c4
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetClusterById.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "Cluster",
+ "id": "dlz-f3a90de",
+ "properties": {
+ "metadata": {
+ "self": "https://api.confluent.cloud/cmk/v2/clusters/lkc-12345",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/cloud-cluster=lkc-12345",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ },
+ "spec": {
+ "name": "ProdKafkaCluster",
+ "availability": "SINGLE_ZONE",
+ "cloud": "GCP",
+ "region": "us-east4",
+ "config": {
+ "kind": "Basic"
+ },
+ "kafkaBootstrapEndpoint": "lkc-00000-00000.us-central1.gcp.glb.confluent.cloud:9092",
+ "httpEndpoint": "https://lkc-00000-00000.us-central1.gcp.glb.confluent.cloud",
+ "apiEndpoint": "https://pkac-00000.us-west-2.aws.confluent.cloud",
+ "environment": {
+ "id": "env-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/v2/environments/env-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-00000"
+ },
+ "network": {
+ "id": "n-00000",
+ "environment": "string",
+ "related": "https://api.confluent.cloud/networking/v1/networks/n-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=env-abc123/network=n-00000"
+ },
+ "byok": {
+ "id": "cck-00000",
+ "related": "https://api.confluent.cloud/byok/v1/keys/cck-00000",
+ "resourceName": "https://api.confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/key=cck-00000"
+ }
+ },
+ "status": {
+ "phase": "PROVISIONED",
+ "cku": 2
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetConnectorByName.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetConnectorByName.json
new file mode 100644
index 000000000000..c99becdcce9b
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetConnectorByName.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de",
+ "connectorName": "connector-1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "connector-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/connectors/connector-1",
+ "properties": {
+ "connectorBasicInfo": {
+ "connectorType": "SINK",
+ "connectorClass": "AZUREBLOBSTORAGESINK",
+ "connectorState": "RUNNING",
+ "connectorId": "lcc-l",
+ "connectorName": "connector-1"
+ },
+ "connectorServiceTypeInfo": {
+ "connectorServiceType": "AzureBlobStorageSinkConnector",
+ "storageAccountName": "stcfaccount-1",
+ "storageAccountKey": "*******",
+ "storageContainerName": "continer-1"
+ },
+ "partnerConnectorInfo": {
+ "partnerConnectorType": "KafkaAzureBlobStorageSink",
+ "flushSize": "1000",
+ "maxTasks": "2",
+ "timeInterval": "DAILY",
+ "apiKey": "xxxxxxx",
+ "apiSecret": "*******",
+ "authType": "KAFKA_API_KEY",
+ "inputFormat": "JSON",
+ "outputFormat": "JSON",
+ "topics": [
+ "topic-1"
+ ],
+ "topicsDir": "topicsDir"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetEnvironmentById.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetEnvironmentById.json
new file mode 100644
index 000000000000..54aae3e55ef8
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetEnvironmentById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "pageSize": 10,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "dlz-f3a90de"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "Environment",
+ "id": "dlz-f3a90de",
+ "properties": {
+ "metadata": {
+ "self": "https://api.confluent.cloud/org/v2/environments/e-12345",
+ "resourceName": "crn://confluent.cloud/organization=9bb441c4-edef-46ac-8a41-c49e44a3fd9a/environment=e-12345",
+ "createdTimestamp": "2006-01-02T15:04:05-07:00",
+ "updatedTimestamp": "2006-01-02T15:04:05-07:00",
+ "deletedTimestamp": "2006-01-02T15:04:05-07:00"
+ }
+ },
+ "name": "prod-finance01"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetSchemaRegistryClusterById.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetSchemaRegistryClusterById.json
new file mode 100644
index 000000000000..e594703bac3f
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_GetSchemaRegistryClusterById.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-stgcczjp2j3",
+ "clusterId": "lsrc-stgczkq22z"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "lsrc-stgczkq22z",
+ "kind": "Cluster",
+ "properties": {
+ "metadata": {
+ "createdTimestamp": "2023-11-08T07:37:14.309386Z",
+ "resourceName": "crn://confluent.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/environment=env-stgccnk2mgd/schema-registry=lsrc-stgczkq22z",
+ "self": "https://api.stag.cpdev.cloud/srcm/v2/clusters/lsrc-stgczkq22z",
+ "updatedTimestamp": "2023-11-08T07:37:14.309386Z",
+ "deletedTimestamp": "2023-11-08T07:37:14.309386Z"
+ },
+ "spec": {
+ "name": "Stream Governance Package",
+ "environment": {
+ "id": "env-stgccnk2mgd",
+ "related": "https://api.stag.cpdev.cloud/org/v2/environments/env-stgccnk2mgd",
+ "resourceName": "crn://confluent.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/environment=env-stgccnk2mgd"
+ },
+ "httpEndpoint": "https://psrc-57wzyg.centralus.azure.stag.cpdev.cloud",
+ "package": "ADVANCED",
+ "region": {
+ "id": "sgreg-7",
+ "related": "https://api.stag.cpdev.cloud/srcm/v2/regions/sgreg-7",
+ "resourceName": "crn://confluent.cloud/schema-registry-region=sgreg-7"
+ },
+ "cloud": "GCP"
+ },
+ "status": {
+ "phase": "PROVISIONED"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListByResourceGroup.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListByResourceGroup.json
new file mode 100644
index 000000000000..f23abce4d0e2
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListByResourceGroup.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2024-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.Confluent/organizations/myOrganizations",
+ "name": "myOrganizations",
+ "type": "Microsoft.Confluent/organizations",
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Accepted",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ],
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListBySubscription.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListBySubscription.json
new file mode 100644
index 000000000000..dd20c6249239
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListBySubscription.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganizations",
+ "name": "myOrganizations",
+ "type": "Microsoft.Confluent/organizations",
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Accepted",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ],
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListRegions.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListRegions.json
new file mode 100644
index 000000000000..dc4a2ce8c6ff
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListRegions.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "searchFilters": {
+ "cloud": "azure",
+ "region": "eastus",
+ "packages": "ADVANCED,ESSENTIALS"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "data": [
+ {
+ "id": "sgreg-7",
+ "kind": "Region",
+ "properties": {
+ "metadata": {
+ "createdTimestamp": "2023-04-06T10:24:09.840788Z",
+ "resourceName": "crn://confluent.cloud/schema-registry-region=sgreg-7",
+ "self": "https://api.stag.cpdev.cloud/srcm/v2/regions/sgreg-7",
+ "updatedTimestamp": "2023-04-06T10:24:09.840788Z"
+ },
+ "spec": {
+ "cloud": "AZURE",
+ "name": "Iowa (centralus)",
+ "packages": [
+ "ADVANCED"
+ ],
+ "regionName": "centralus"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListSchemaRegistryClusters.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListSchemaRegistryClusters.json
new file mode 100644
index 000000000000..967f6c172d15
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_ListSchemaRegistryClusters.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-stgcczjp2j3"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "lsrc-stgczkq22z",
+ "kind": "Cluster",
+ "properties": {
+ "metadata": {
+ "createdTimestamp": "2023-11-08T07:37:14.309386Z",
+ "resourceName": "crn://confluent.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/environment=env-stgccnk2mgd/schema-registry=lsrc-stgczkq22z",
+ "self": "https://api.stag.cpdev.cloud/srcm/v2/clusters/lsrc-stgczkq22z",
+ "updatedTimestamp": "2023-11-08T07:37:14.309386Z"
+ },
+ "spec": {
+ "name": "Stream Governance Package",
+ "environment": {
+ "id": "env-stgccnk2mgd",
+ "related": "https://api.stag.cpdev.cloud/org/v2/environments/env-stgccnk2mgd",
+ "resourceName": "crn://confluent.cloud/organization=37d1220b-93a6-43e3-a114-dd8a20a94a31/environment=env-stgccnk2mgd"
+ },
+ "httpEndpoint": "https://psrc-57wzyg.centralus.azure.stag.cpdev.cloud",
+ "package": "ADVANCED",
+ "region": {
+ "id": "sgreg-7",
+ "related": "https://api.stag.cpdev.cloud/srcm/v2/regions/sgreg-7",
+ "resourceName": "crn://confluent.cloud/schema-registry-region=sgreg-7"
+ },
+ "cloud": "GCP"
+ },
+ "status": {
+ "phase": "PROVISIONED"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_TopicList.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_TopicList.json
new file mode 100644
index 000000000000..8eaeb188174e
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_TopicList.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "pageSize": 10,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "topic-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/topics/topic-1",
+ "properties": {
+ "kind": "KafkaTopic",
+ "metadata": {
+ "self": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-1",
+ "resourceName": "crn:///kafka=cluster-1/topic=topic-1"
+ },
+ "partitions": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions"
+ },
+ "configs": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/configs"
+ },
+ "partitionsReassignments": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions/-/reassignments"
+ },
+ "replicationFactor": "3",
+ "partitionsCount": "1"
+ }
+ }
+ ],
+ "nextLink": "nextLink?pageToken=xoi3753asdfe&pageSize=10"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Update.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Update.json
new file mode 100644
index 000000000000..f4a5cde59a0c
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Organization_Update.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "tags": {
+ "env": "dev",
+ "client": "dev-client"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization",
+ "name": "myOrganization",
+ "type": "Microsoft.Confluent/organizations",
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-05-09T14:28:47.284Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-05-09T14:28:47.284Z"
+ },
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Succeeded",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "contoso@microsoft.com",
+ "userPrincipalName": "contoso@microsoft.com",
+ "aadEmail": "contoso@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Create.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Create.json
new file mode 100644
index 000000000000..48fac0f43fe7
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Create.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de",
+ "topicName": "topic-1",
+ "body": {
+ "properties": {
+ "partitionsCount": "1",
+ "replicationFactor": "3",
+ "inputConfigs": [
+ {
+ "name": "cleanup.policy",
+ "value": "compact"
+ },
+ {
+ "name": "retention.ms",
+ "value": "86400000"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "topic-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/topics/topic-1",
+ "properties": {
+ "kind": "KafkaTopic",
+ "topicId": "topic-1",
+ "metadata": {
+ "self": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-1",
+ "resourceName": "crn:///kafka=cluster-1/topic=topic-1"
+ },
+ "partitions": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions"
+ },
+ "configs": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/configs"
+ },
+ "partitionsReassignments": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions/-/reassignments"
+ },
+ "replicationFactor": "3",
+ "partitionsCount": "1"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "topic-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/topics/topic-1",
+ "properties": {
+ "kind": "KafkaTopic",
+ "topicId": "topic-1",
+ "metadata": {
+ "self": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-1",
+ "resourceName": "crn:///kafka=cluster-1/topic=topic-1"
+ },
+ "partitions": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions"
+ },
+ "configs": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/configs"
+ },
+ "partitionsReassignments": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions/-/reassignments"
+ },
+ "replicationFactor": "3",
+ "partitionsCount": "1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Delete.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Delete.json
new file mode 100644
index 000000000000..e16a38d82316
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Delete.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de",
+ "topicName": "topic-1"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ },
+ "204": {
+ "headers": {
+ "azure-AsyncOperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Get.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Get.json
new file mode 100644
index 000000000000..8c3fa80da63f
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Topics_Get.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "pageSize": 10,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "environmentId": "env-12132",
+ "clusterId": "dlz-f3a90de",
+ "topicName": "topic-1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "topic-1",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization/environments/env-12132/clusters/dlz-f3a90de/topics/topic-1",
+ "properties": {
+ "kind": "KafkaTopic",
+ "metadata": {
+ "self": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-1",
+ "resourceName": "crn:///kafka=cluster-1/topic=topic-1"
+ },
+ "partitions": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions"
+ },
+ "configs": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/configs"
+ },
+ "partitionsReassignments": {
+ "related": "https://pkc-00000.region.provider.confluent.cloud/kafka/v3/clusters/cluster-1/topics/topic-2/partitions/-/reassignments"
+ },
+ "replicationFactor": "3",
+ "partitionsCount": "1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizations.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizations.json
new file mode 100644
index 000000000000..331ac68fa87a
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizations.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "properties": {
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ]
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "abc@microsoft.com",
+ "userPrincipalName": "abc@microsoft.com",
+ "aadEmail": "abc@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Confluent/organizations/myOrganization",
+ "name": "myOrganization",
+ "type": "Microsoft.Confluent/organizations",
+ "properties": {
+ "createdTime": "2020-05-09T14:28:47.284Z",
+ "provisioningState": "Succeeded",
+ "organizationId": "string",
+ "ssoUrl": "string",
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ],
+ "status": "Started"
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "abc@microsoft.com",
+ "userPrincipalName": "abc@microsoft.com",
+ "aadEmail": "abc@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizationsV2.json b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizationsV2.json
new file mode 100644
index 000000000000..4ba642f8b6fe
--- /dev/null
+++ b/specification/confluent/resource-manager/Microsoft.Confluent/stable/2024-07-01/examples/Validations_ValidateOrganizationsV2.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-07-01",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "myResourceGroup",
+ "organizationName": "myOrganization",
+ "body": {
+ "properties": {
+ "offerDetail": {
+ "publisherId": "string",
+ "id": "string",
+ "planId": "string",
+ "planName": "string",
+ "termUnit": "string",
+ "privateOfferId": "string",
+ "privateOfferIds": [
+ "string"
+ ]
+ },
+ "userDetail": {
+ "firstName": "string",
+ "lastName": "string",
+ "emailAddress": "abc@microsoft.com",
+ "userPrincipalName": "abc@microsoft.com",
+ "aadEmail": "abc@microsoft.com"
+ }
+ },
+ "tags": {
+ "Environment": "Dev"
+ },
+ "location": "West US"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "info": {
+ "displayMessage": "This is display message"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confluent/resource-manager/readme.md b/specification/confluent/resource-manager/readme.md
index 528ade1fd9c3..02fa61987064 100644
--- a/specification/confluent/resource-manager/readme.md
+++ b/specification/confluent/resource-manager/readme.md
@@ -28,9 +28,17 @@ These are the global settings for the Confluent API.
title: ConfluentManagementClient
openapi-type: arm
openapi-subtype: rpaas
-tag: package-2024-02
+tag: package-2024-07
```
+### Tag: package-2024-07
+
+These settings apply only when `--tag=package-2024-07` is specified on the command line.
+
+```yaml $(tag) == 'package-2024-07'
+input-file:
+ - Microsoft.Confluent/stable/2024-07-01/confluent.json
+```
### Tag: package-2024-02
From 3890d974c2822a6f0f2d91e20cec7fa8b5fdda95 Mon Sep 17 00:00:00 2001
From: Heath Stewart
Date: Sun, 29 Dec 2024 16:42:45 -0800
Subject: [PATCH 043/128] Update CODEOWNERS for Key Vault (CP, DP) (#31881)
---
.github/CODEOWNERS | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 3fe34d6bc8f2..439549ddfd63 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -137,7 +137,10 @@
/specification/iothub/ @rkmanda
# PRLabel: %KeyVault
-/specification/keyvault/ @heaths @randallilama @jlichwa
+/specification/keyvault/ @vickm @chen-karen @cheathamb36 @lgonsoulin
+
+# PRLabel: %KeyVault
+/specification/keyvault/data-plane/ @vickm @chen-karen @cheathamb36 @lgonsoulin @heaths
# PRLabel: %Load Test Service
/specification/loadtestservice/data-plane/ @Azure/api-stewardship-board
From 45374f48f560b3337ed55735038f1e9bf8cbea65 Mon Sep 17 00:00:00 2001
From: radhikajain99 <86242402+radhikajain99@users.noreply.github.com>
Date: Mon, 30 Dec 2024 20:28:20 +0530
Subject: [PATCH 044/128] Adding API for notification rules in loadtesting
(#31078)
* Adding API for notification rules in loadtesting
* Update description
* Moving to new API version 2024-11-01-preview
* Updates
* Remove wrong files
* Update example to dict
* Update as per review
* Update key in example
* Add new trigger scope
* Add test run started/ended to trigger scope
* Change event name to trigger completed
* Update name
* Remove triggers scope
* Update spec
* Move notifications to 2024-12-01-preview
* Update api version in examples
* Update doc
---
.../CreateOrUpdateNotificationRule.json | 126 ++++
.../DeleteNotificationRule.json | 11 +
.../GetNotificationRule.json | 51 ++
.../ListNotificationRules.json | 87 +++
.../models.notificationrule.tsp | 161 +++++
.../LoadTestService/routes.tsp | 19 +
.../CreateOrUpdateNotificationRule.json | 126 ++++
.../examples/DeleteNotificationRule.json | 11 +
.../examples/GetNotificationRule.json | 51 ++
.../examples/ListNotificationRules.json | 87 +++
.../2024-12-01-preview/loadtestservice.json | 621 ++++++++++++++++++
11 files changed, 1351 insertions(+)
create mode 100644 specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/CreateOrUpdateNotificationRule.json
create mode 100644 specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/DeleteNotificationRule.json
create mode 100644 specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/GetNotificationRule.json
create mode 100644 specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/ListNotificationRules.json
create mode 100644 specification/loadtestservice/LoadTestService/models.notificationrule.tsp
create mode 100644 specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/CreateOrUpdateNotificationRule.json
create mode 100644 specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/DeleteNotificationRule.json
create mode 100644 specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/GetNotificationRule.json
create mode 100644 specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/ListNotificationRules.json
diff --git a/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/CreateOrUpdateNotificationRule.json b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/CreateOrUpdateNotificationRule.json
new file mode 100644
index 000000000000..890108b7b450
--- /dev/null
+++ b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/CreateOrUpdateNotificationRule.json
@@ -0,0 +1,126 @@
+{
+ "operationId": "NotificationRuleAdministration_CreateOrUpdateNotificationRule",
+ "title": "Create or update a notification rule for tests.",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "body": {
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ },
+ "201": {
+ "body": {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ }
+ }
+}
diff --git a/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/DeleteNotificationRule.json b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/DeleteNotificationRule.json
new file mode 100644
index 000000000000..5cf5ee5b0314
--- /dev/null
+++ b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/DeleteNotificationRule.json
@@ -0,0 +1,11 @@
+{
+ "operationId": "NotificationRuleAdministration_DeleteNotificationRule",
+ "title": "Delete a notification rule",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/GetNotificationRule.json b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/GetNotificationRule.json
new file mode 100644
index 000000000000..fb3c5bdce3c3
--- /dev/null
+++ b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/GetNotificationRule.json
@@ -0,0 +1,51 @@
+{
+ "operationId": "NotificationRuleAdministration_GetNotificationRule",
+ "title": "Get a notification rule.",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ }
+ }
+}
diff --git a/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/ListNotificationRules.json b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/ListNotificationRules.json
new file mode 100644
index 000000000000..dbb2b787ec0a
--- /dev/null
+++ b/specification/loadtestservice/LoadTestService/examples/2024-12-01-preview/ListNotificationRules.json
@@ -0,0 +1,87 @@
+{
+ "operationId": "NotificationRuleAdministration_ListNotificationRule",
+ "title": "Get all notification rules for the specified filters.",
+ "parameters": {
+ "maxPageSize": 30,
+ "lastModifiedStartTime": "2024-05-01T16:00:46.072Z",
+ "lastModifiedEndTime": "2024-05-01T16:50:46.072Z",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule1",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup1",
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup2"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012",
+ "12345678-1234-1234-1234-123456789013"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ },
+ {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789013",
+ "displayName": "Sample_Notification_Rule2",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup2"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED"
+ ],
+ "testRunResults": [
+ "FAILED"
+ ]
+ }
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/loadtestservice/LoadTestService/models.notificationrule.tsp b/specification/loadtestservice/LoadTestService/models.notificationrule.tsp
new file mode 100644
index 000000000000..c05a4f1ac08a
--- /dev/null
+++ b/specification/loadtestservice/LoadTestService/models.notificationrule.tsp
@@ -0,0 +1,161 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-client-generator-core";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using TypeSpec.Versioning;
+using Azure.ClientGenerator.Core;
+
+namespace Microsoft.LoadTestService;
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("Scope type of a notification rule.")
+union NotificationScopeType {
+ string,
+
+ @doc("Notification rule is for Tests.")
+ Tests: "Tests",
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("Notification event type.")
+union NotificationEventType {
+ string,
+
+ @doc("Test run ended event. This event would occur when a test run reaches terminal state.")
+ TestRunEnded: "TestRunEnded",
+
+ @doc("Test run started event. This event would occur when a new test run is triggered.")
+ TestRunStarted: "TestRunStarted",
+
+ @doc("Trigger completed event. This event would occur when a trigger completes.")
+ TriggerCompleted: "TriggerCompleted",
+
+ @doc("Trigger disabled event. This event would occur when a trigger is disabled.")
+ TriggerDisabled: "TriggerDisabled",
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@discriminator("kind")
+@doc("The notification event filter for Tests scope.")
+model TestsNotificationEventFilter {
+ @doc("The event type")
+ kind: NotificationEventType;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("The notification event filter when the event type is TestRunEnded and scope is Tests.")
+model TestRunEndedNotificationEventFilter extends TestsNotificationEventFilter {
+ @doc("Event type for test run ended event.")
+ kind: NotificationEventType.TestRunEnded;
+
+ @doc("Event filtering condition.")
+ condition?: TestRunEndedEventCondition;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("The notification event filter when the event type is TestRunStarted and scope is Tests.")
+model TestRunStartedNotificationEventFilter
+ extends TestsNotificationEventFilter {
+ @doc("Event type for test run started event.")
+ kind: NotificationEventType.TestRunStarted;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("The notification event filter when the event type is TriggerCompleted.")
+model TriggerCompletedNotificationEventFilter
+ extends TestsNotificationEventFilter {
+ @doc("Event type for trigger ended event.")
+ kind: NotificationEventType.TriggerCompleted;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("The notification event filter when the event type is TriggerDisabled.")
+model TriggerDisabledNotificationEventFilter
+ extends TestsNotificationEventFilter {
+ @doc("Event type for trigger disabled event.")
+ kind: NotificationEventType.TriggerDisabled;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("TestRunEnded Event condition.")
+model TestRunEndedEventCondition {
+ @doc("The test run statuses to send notification for.")
+ testRunStatuses?: Status[];
+
+ @doc("The test run results to send notification for.")
+ testRunResults?: PFTestResult[];
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@resource("notification-rules")
+@discriminator("scope")
+@doc("Notification rule model.")
+model NotificationRule {
+ @key
+ @maxLength(50)
+ @minLength(2)
+ @pattern("^[a-z0-9_-]*$")
+ @doc("The unique identifier of the notification rule.")
+ @visibility("read")
+ notificationRuleId: string;
+
+ @maxLength(50)
+ @minLength(2)
+ @doc("The name of the notification rule.")
+ displayName: string;
+
+ @doc("The action groups to notify.")
+ actionGroupIds: string[];
+
+ @doc("The scope of the notification rule.")
+ scope: NotificationScopeType;
+
+ ...SystemMetaData;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("Tests Notification rule model.")
+model TestsNotificationRule extends NotificationRule {
+ @doc("Scope of type Tests.")
+ scope: NotificationScopeType.Tests;
+
+ @doc("The test ids to include. If not provided, notification will be sent for all testIds.")
+ testIds?: string[];
+
+ @doc("""
+ The event to receive notifications for along with filtering conditions.
+ Key is a user-assigned identifier for the event filter.
+ """)
+ eventFilters: Record;
+}
+
+@added(APIVersions.v2024_12_01_preview)
+@doc("Parameters for list notification rule operation.")
+model ListNotificationRuleQueryParams {
+ @doc("Search based on notification rules associated with the provided test ids.")
+ @query
+ testIds?: string;
+
+ @doc("Search based on notification rules for the provided scopes.")
+ @query
+ scopes?: string;
+
+ @doc("""
+ Start DateTime(RFC 3339 literal format) of the last updated time range to filter notification rules.
+ """)
+ @query
+ lastModifiedStartTime?: utcDateTime;
+
+ @doc("""
+ End DateTime(RFC 3339 literal format) of the last updated time range to filter notification rules.
+ """)
+ @query
+ lastModifiedEndTime?: utcDateTime;
+
+ @doc("Number of results in response. Default page size is 50.")
+ @query
+ maxpagesize?: int32 = 50;
+}
diff --git a/specification/loadtestservice/LoadTestService/routes.tsp b/specification/loadtestservice/LoadTestService/routes.tsp
index 95a32f0d199b..f8d106994770 100644
--- a/specification/loadtestservice/LoadTestService/routes.tsp
+++ b/specification/loadtestservice/LoadTestService/routes.tsp
@@ -6,6 +6,7 @@ import "@azure-tools/typespec-client-generator-core";
import "./models.tsp";
import "./models.testprofile.tsp";
import "./models.trigger.tsp";
+import "./models.notificationrule.tsp";
using Azure.Core;
using Azure.Core.Traits;
@@ -530,3 +531,21 @@ interface TriggerAdministration {
ListQueryParametersTrait
>;
}
+
+@tag("NotificationRule")
+interface NotificationRuleAdministration {
+ @added(APIVersions.v2024_12_01_preview)
+ getNotificationRule is StandardResourceOperations.ResourceRead;
+
+ @added(APIVersions.v2024_12_01_preview)
+ createOrUpdateNotificationRule is StandardResourceOperations.ResourceCreateOrUpdate;
+
+ @added(APIVersions.v2024_12_01_preview)
+ deleteNotificationRule is StandardResourceOperations.ResourceDelete;
+
+ @added(APIVersions.v2024_12_01_preview)
+ listNotificationRule is StandardResourceOperations.ResourceList<
+ NotificationRule,
+ ListQueryParametersTrait
+ >;
+}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/CreateOrUpdateNotificationRule.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/CreateOrUpdateNotificationRule.json
new file mode 100644
index 000000000000..890108b7b450
--- /dev/null
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/CreateOrUpdateNotificationRule.json
@@ -0,0 +1,126 @@
+{
+ "operationId": "NotificationRuleAdministration_CreateOrUpdateNotificationRule",
+ "title": "Create or update a notification rule for tests.",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "body": {
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ },
+ "201": {
+ "body": {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ }
+ }
+}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/DeleteNotificationRule.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/DeleteNotificationRule.json
new file mode 100644
index 000000000000..5cf5ee5b0314
--- /dev/null
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/DeleteNotificationRule.json
@@ -0,0 +1,11 @@
+{
+ "operationId": "NotificationRuleAdministration_DeleteNotificationRule",
+ "title": "Delete a notification rule",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/GetNotificationRule.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/GetNotificationRule.json
new file mode 100644
index 000000000000..fb3c5bdce3c3
--- /dev/null
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/GetNotificationRule.json
@@ -0,0 +1,51 @@
+{
+ "operationId": "NotificationRuleAdministration_GetNotificationRule",
+ "title": "Get a notification rule.",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ }
+ }
+}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/ListNotificationRules.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/ListNotificationRules.json
new file mode 100644
index 000000000000..dbb2b787ec0a
--- /dev/null
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/examples/ListNotificationRules.json
@@ -0,0 +1,87 @@
+{
+ "operationId": "NotificationRuleAdministration_ListNotificationRule",
+ "title": "Get all notification rules for the specified filters.",
+ "parameters": {
+ "maxPageSize": 30,
+ "lastModifiedStartTime": "2024-05-01T16:00:46.072Z",
+ "lastModifiedEndTime": "2024-05-01T16:50:46.072Z",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789012",
+ "displayName": "Sample_Notification_Rule1",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup1",
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup2"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012",
+ "12345678-1234-1234-1234-123456789013"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED",
+ "DONE"
+ ],
+ "testRunResults": [
+ "PASSED",
+ "FAILED"
+ ]
+ }
+ },
+ "eventfilter2": {
+ "kind": "TestRunStarted"
+ },
+ "eventfilter3": {
+ "kind": "TriggerCompleted"
+ },
+ "eventfilter4": {
+ "kind": "TriggerDisabled"
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ },
+ {
+ "notificationRuleId": "12345678-1234-1234-1234-123456789013",
+ "displayName": "Sample_Notification_Rule2",
+ "actionGroupIds": [
+ "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/sampleRG/providers/microsoft.insights/actionGroups/sampleActionGroup2"
+ ],
+ "scope": "Tests",
+ "testIds": [
+ "12345678-1234-1234-1234-123456789012"
+ ],
+ "eventFilters": {
+ "eventfilter1": {
+ "kind": "TestRunEnded",
+ "condition": {
+ "testRunStatuses": [
+ "FAILED"
+ ],
+ "testRunResults": [
+ "FAILED"
+ ]
+ }
+ }
+ },
+ "createdDateTime": "2024-05-01T16:43:46.072Z",
+ "createdBy": "user@contoso.com",
+ "lastModifiedDateTime": "2024-05-01T16:43:46.072Z",
+ "lastModifiedBy": "user@contoso.com"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json
index 0908e8efbbe2..b2e583c76911 100644
--- a/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json
+++ b/specification/loadtestservice/data-plane/Microsoft.LoadTestService/preview/2024-12-01-preview/loadtestservice.json
@@ -64,9 +64,228 @@
},
{
"name": "Trigger"
+ },
+ {
+ "name": "NotificationRule"
}
],
"paths": {
+ "/notification-rules": {
+ "get": {
+ "operationId": "NotificationRuleAdministration_ListNotificationRule",
+ "tags": [
+ "NotificationRule"
+ ],
+ "description": "Resource list operation template.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ListNotificationRuleQueryParams.testIds"
+ },
+ {
+ "$ref": "#/parameters/ListNotificationRuleQueryParams.scopes"
+ },
+ {
+ "$ref": "#/parameters/ListNotificationRuleQueryParams.lastModifiedStartTime"
+ },
+ {
+ "$ref": "#/parameters/ListNotificationRuleQueryParams.lastModifiedEndTime"
+ },
+ {
+ "$ref": "#/parameters/ListNotificationRuleQueryParams.maxpagesize"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PagedNotificationRule"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get all notification rules for the specified filters.": {
+ "$ref": "./examples/ListNotificationRules.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/notification-rules/{notificationRuleId}": {
+ "get": {
+ "operationId": "NotificationRuleAdministration_GetNotificationRule",
+ "tags": [
+ "NotificationRule"
+ ],
+ "description": "Resource read operation template.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "notificationRuleId",
+ "in": "path",
+ "description": "The unique identifier of the notification rule.",
+ "required": true,
+ "type": "string",
+ "minLength": 2,
+ "maxLength": 50,
+ "pattern": "^[a-z0-9_-]*$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/NotificationRule"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a notification rule.": {
+ "$ref": "./examples/GetNotificationRule.json"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "NotificationRuleAdministration_CreateOrUpdateNotificationRule",
+ "tags": [
+ "NotificationRule"
+ ],
+ "description": "Create or update operation template.",
+ "consumes": [
+ "application/merge-patch+json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "notificationRuleId",
+ "in": "path",
+ "description": "The unique identifier of the notification rule.",
+ "required": true,
+ "type": "string",
+ "minLength": 2,
+ "maxLength": 50,
+ "pattern": "^[a-z0-9_-]*$"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "description": "The resource instance.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/NotificationRuleCreateOrUpdate"
+ },
+ "x-ms-client-name": "resource"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/NotificationRule"
+ }
+ },
+ "201": {
+ "description": "The request has succeeded and a new resource has been created as a result.",
+ "schema": {
+ "$ref": "#/definitions/NotificationRule"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update a notification rule for tests.": {
+ "$ref": "./examples/CreateOrUpdateNotificationRule.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "NotificationRuleAdministration_DeleteNotificationRule",
+ "tags": [
+ "NotificationRule"
+ ],
+ "description": "Resource delete operation template.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "notificationRuleId",
+ "in": "path",
+ "description": "The unique identifier of the notification rule.",
+ "required": true,
+ "type": "string",
+ "minLength": 2,
+ "maxLength": 50,
+ "pattern": "^[a-z0-9_-]*$"
+ }
+ ],
+ "responses": {
+ "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/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a notification rule": {
+ "$ref": "./examples/DeleteNotificationRule.json"
+ }
+ }
+ }
+ },
"/test-profile-runs": {
"get": {
"operationId": "TestProfileRunAdministration_ListTestProfileRuns",
@@ -3398,6 +3617,147 @@
}
}
},
+ "NotificationEventType": {
+ "type": "string",
+ "description": "Notification event type.",
+ "enum": [
+ "TestRunEnded",
+ "TestRunStarted",
+ "TriggerCompleted",
+ "TriggerDisabled"
+ ],
+ "x-ms-enum": {
+ "name": "NotificationEventType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "TestRunEnded",
+ "value": "TestRunEnded",
+ "description": "Test run ended event. This event would occur when a test run reaches terminal state."
+ },
+ {
+ "name": "TestRunStarted",
+ "value": "TestRunStarted",
+ "description": "Test run started event. This event would occur when a new test run is triggered."
+ },
+ {
+ "name": "TriggerCompleted",
+ "value": "TriggerCompleted",
+ "description": "Trigger completed event. This event would occur when a trigger completes."
+ },
+ {
+ "name": "TriggerDisabled",
+ "value": "TriggerDisabled",
+ "description": "Trigger disabled event. This event would occur when a trigger is disabled."
+ }
+ ]
+ }
+ },
+ "NotificationRule": {
+ "type": "object",
+ "description": "Notification rule model.",
+ "properties": {
+ "notificationRuleId": {
+ "type": "string",
+ "description": "The unique identifier of the notification rule.",
+ "minLength": 2,
+ "maxLength": 50,
+ "pattern": "^[a-z0-9_-]*$",
+ "readOnly": true
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The name of the notification rule.",
+ "minLength": 2,
+ "maxLength": 50
+ },
+ "actionGroupIds": {
+ "type": "array",
+ "description": "The action groups to notify.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "scope": {
+ "$ref": "#/definitions/NotificationScopeType",
+ "description": "The scope of the notification rule."
+ },
+ "createdDateTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The creation datetime(RFC 3339 literal format).",
+ "readOnly": true
+ },
+ "createdBy": {
+ "type": "string",
+ "description": "The user that created.",
+ "readOnly": true
+ },
+ "lastModifiedDateTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The last Modified datetime(RFC 3339 literal format).",
+ "readOnly": true
+ },
+ "lastModifiedBy": {
+ "type": "string",
+ "description": "The user that last modified.",
+ "readOnly": true
+ }
+ },
+ "discriminator": "scope",
+ "required": [
+ "notificationRuleId",
+ "displayName",
+ "actionGroupIds",
+ "scope"
+ ]
+ },
+ "NotificationRuleCreateOrUpdate": {
+ "type": "object",
+ "description": "Notification rule model.",
+ "properties": {
+ "displayName": {
+ "type": "string",
+ "description": "The name of the notification rule.",
+ "minLength": 2,
+ "maxLength": 50
+ },
+ "actionGroupIds": {
+ "type": "array",
+ "description": "The action groups to notify.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "scope": {
+ "$ref": "#/definitions/NotificationScopeType",
+ "description": "The scope of the notification rule."
+ }
+ },
+ "discriminator": "scope",
+ "required": [
+ "scope"
+ ]
+ },
+ "NotificationScopeType": {
+ "type": "string",
+ "description": "Scope type of a notification rule.",
+ "enum": [
+ "Tests"
+ ],
+ "x-ms-enum": {
+ "name": "NotificationScopeType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Tests",
+ "value": "Tests",
+ "description": "Notification rule is for Tests."
+ }
+ ]
+ }
+ },
"OptionalLoadTestConfig": {
"type": "object",
"description": "Configuration for quick load test",
@@ -3637,6 +3997,28 @@
]
}
},
+ "PagedNotificationRule": {
+ "type": "object",
+ "description": "Paged collection of NotificationRule items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The NotificationRule items on this page",
+ "items": {
+ "$ref": "#/definitions/NotificationRule"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
"PagedTest": {
"type": "object",
"description": "Paged collection of Test items",
@@ -5599,6 +5981,58 @@
"properties"
]
},
+ "TestRunEndedEventCondition": {
+ "type": "object",
+ "description": "TestRunEnded Event condition.",
+ "properties": {
+ "testRunStatuses": {
+ "type": "array",
+ "description": "The test run statuses to send notification for.",
+ "items": {
+ "$ref": "#/definitions/Status"
+ }
+ },
+ "testRunResults": {
+ "type": "array",
+ "description": "The test run results to send notification for.",
+ "items": {
+ "$ref": "#/definitions/PFTestResult"
+ }
+ }
+ }
+ },
+ "TestRunEndedNotificationEventFilter": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TestRunEnded and scope is Tests.",
+ "properties": {
+ "condition": {
+ "$ref": "#/definitions/TestRunEndedEventCondition",
+ "description": "Event filtering condition."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilter"
+ }
+ ],
+ "x-ms-discriminator-value": "TestRunEnded"
+ },
+ "TestRunEndedNotificationEventFilterCreateOrUpdate": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TestRunEnded and scope is Tests.",
+ "properties": {
+ "condition": {
+ "$ref": "#/definitions/TestRunEndedEventCondition",
+ "description": "Event filtering condition."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilterCreateOrUpdate"
+ }
+ ],
+ "x-ms-discriminator-value": "TestRunEnded"
+ },
"TestRunFileInfo": {
"type": "object",
"description": "Test run file info.",
@@ -5736,6 +6170,26 @@
}
}
},
+ "TestRunStartedNotificationEventFilter": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TestRunStarted and scope is Tests.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilter"
+ }
+ ],
+ "x-ms-discriminator-value": "TestRunStarted"
+ },
+ "TestRunStartedNotificationEventFilterCreateOrUpdate": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TestRunStarted and scope is Tests.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilterCreateOrUpdate"
+ }
+ ],
+ "x-ms-discriminator-value": "TestRunStarted"
+ },
"TestRunStatistics": {
"type": "object",
"description": "Test run statistics.",
@@ -5917,6 +6371,89 @@
}
}
},
+ "TestsNotificationEventFilter": {
+ "type": "object",
+ "description": "The notification event filter for Tests scope.",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/NotificationEventType",
+ "description": "The event type"
+ }
+ },
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ]
+ },
+ "TestsNotificationEventFilterCreateOrUpdate": {
+ "type": "object",
+ "description": "The notification event filter for Tests scope.",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/NotificationEventType",
+ "description": "The event type"
+ }
+ },
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ]
+ },
+ "TestsNotificationRule": {
+ "type": "object",
+ "description": "Tests Notification rule model.",
+ "properties": {
+ "testIds": {
+ "type": "array",
+ "description": "The test ids to include. If not provided, notification will be sent for all testIds.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "eventFilters": {
+ "type": "object",
+ "description": "The event to receive notifications for along with filtering conditions.\nKey is a user-assigned identifier for the event filter.",
+ "additionalProperties": {
+ "$ref": "#/definitions/TestsNotificationEventFilter"
+ }
+ }
+ },
+ "required": [
+ "eventFilters"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/NotificationRule"
+ }
+ ],
+ "x-ms-discriminator-value": "Tests"
+ },
+ "TestsNotificationRuleCreateOrUpdate": {
+ "type": "object",
+ "description": "Tests Notification rule model.",
+ "properties": {
+ "testIds": {
+ "type": "array",
+ "description": "The test ids to include. If not provided, notification will be sent for all testIds.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "eventFilters": {
+ "type": "object",
+ "description": "The event to receive notifications for along with filtering conditions.\nKey is a user-assigned identifier for the event filter.",
+ "additionalProperties": {
+ "$ref": "#/definitions/TestsNotificationEventFilterCreateOrUpdate"
+ }
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/NotificationRuleCreateOrUpdate"
+ }
+ ],
+ "x-ms-discriminator-value": "Tests"
+ },
"TimeGrain": {
"type": "string",
"description": "Time Grain",
@@ -6047,6 +6584,26 @@
"kind"
]
},
+ "TriggerCompletedNotificationEventFilter": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TriggerCompleted.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilter"
+ }
+ ],
+ "x-ms-discriminator-value": "TriggerCompleted"
+ },
+ "TriggerCompletedNotificationEventFilterCreateOrUpdate": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TriggerCompleted.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilterCreateOrUpdate"
+ }
+ ],
+ "x-ms-discriminator-value": "TriggerCompleted"
+ },
"TriggerCreateOrUpdate": {
"type": "object",
"description": "Trigger model.",
@@ -6076,6 +6633,26 @@
"kind"
]
},
+ "TriggerDisabledNotificationEventFilter": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TriggerDisabled.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilter"
+ }
+ ],
+ "x-ms-discriminator-value": "TriggerDisabled"
+ },
+ "TriggerDisabledNotificationEventFilterCreateOrUpdate": {
+ "type": "object",
+ "description": "The notification event filter when the event type is TriggerDisabled.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TestsNotificationEventFilterCreateOrUpdate"
+ }
+ ],
+ "x-ms-discriminator-value": "TriggerDisabled"
+ },
"TriggerState": {
"type": "string",
"description": "Current state of a trigger.",
@@ -6244,6 +6821,50 @@
"x-ms-parameter-location": "method",
"x-ms-client-name": "apiVersion"
},
+ "ListNotificationRuleQueryParams.lastModifiedEndTime": {
+ "name": "lastModifiedEndTime",
+ "in": "query",
+ "description": "End DateTime(RFC 3339 literal format) of the last updated time range to filter notification rules.",
+ "required": false,
+ "type": "string",
+ "format": "date-time",
+ "x-ms-parameter-location": "method"
+ },
+ "ListNotificationRuleQueryParams.lastModifiedStartTime": {
+ "name": "lastModifiedStartTime",
+ "in": "query",
+ "description": "Start DateTime(RFC 3339 literal format) of the last updated time range to filter notification rules.",
+ "required": false,
+ "type": "string",
+ "format": "date-time",
+ "x-ms-parameter-location": "method"
+ },
+ "ListNotificationRuleQueryParams.maxpagesize": {
+ "name": "maxpagesize",
+ "in": "query",
+ "description": "Number of results in response. Default page size is 50.",
+ "required": false,
+ "type": "integer",
+ "format": "int32",
+ "default": 50,
+ "x-ms-parameter-location": "method"
+ },
+ "ListNotificationRuleQueryParams.scopes": {
+ "name": "scopes",
+ "in": "query",
+ "description": "Search based on notification rules for the provided scopes.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ListNotificationRuleQueryParams.testIds": {
+ "name": "testIds",
+ "in": "query",
+ "description": "Search based on notification rules associated with the provided test ids.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
"ListTestProfileQueryParams.lastModifiedEndTime": {
"name": "lastModifiedEndTime",
"in": "query",
From b4144eef7a3a812bfa5bd664da15a188d3f19ad0 Mon Sep 17 00:00:00 2001
From: Yuchao Yan
Date: Thu, 2 Jan 2025 10:10:43 +0800
Subject: [PATCH 045/128] fix enum name breaking in python SDK with directive
(#31959)
---
.../resource-manager/readme.python.md | 200 +++++++++++++++++-
1 file changed, 198 insertions(+), 2 deletions(-)
diff --git a/specification/recoveryservicesbackup/resource-manager/readme.python.md b/specification/recoveryservicesbackup/resource-manager/readme.python.md
index 863b2e0a63af..e821a464e192 100644
--- a/specification/recoveryservicesbackup/resource-manager/readme.python.md
+++ b/specification/recoveryservicesbackup/resource-manager/readme.python.md
@@ -54,5 +54,201 @@ directive:
where: $.definitions.FeatureSupportRequest
transform: >
$['required'] = ['featureType'];
-
-```
+ - from: swagger-document
+ where: $.definitions.OperationWorkerResponse.properties.statusCode
+ transform: >
+ $['x-ms-enum'] = {
+ "name": "HttpStatusCode",
+ "modelAsString": false,
+ "values": [
+ {
+ 'name': 'CONTINUE_ENUM',
+ 'value': 'Continue'
+ },
+ {
+ 'name': 'SWITCHING_PROTOCOLS',
+ 'value': 'SwitchingProtocols'
+ },
+ {
+ 'name': 'OK',
+ 'value': 'OK'
+ },
+ {
+ 'name': 'CREATED',
+ 'value': 'Created'
+ },
+ {
+ 'name': 'ACCEPTED',
+ 'value': 'Accepted'
+ },
+ {
+ 'name': 'NON_AUTHORITATIVE_INFORMATION',
+ 'value': 'NonAuthoritativeInformation'
+ },
+ {
+ 'name': 'NO_CONTENT',
+ 'value': 'NoContent'
+ },
+ {
+ 'name': 'RESET_CONTENT',
+ 'value': 'ResetContent'
+ },
+ {
+ 'name': 'PARTIAL_CONTENT',
+ 'value': 'PartialContent'
+ },
+ {
+ 'name': 'MULTIPLE_CHOICES',
+ 'value': 'MultipleChoices'
+ },
+ {
+ 'name': 'AMBIGUOUS',
+ 'value': 'Ambiguous'
+ },
+ {
+ 'name': 'MOVED_PERMANENTLY',
+ 'value': 'MovedPermanently'
+ },
+ {
+ 'name': 'MOVED',
+ 'value': 'Moved'
+ },
+ {
+ 'name': 'FOUND',
+ 'value': 'Found'
+ },
+ {
+ 'name': 'REDIRECT',
+ 'value': 'Redirect'
+ },
+ {
+ 'name': 'SEE_OTHER',
+ 'value': 'SeeOther'
+ },
+ {
+ 'name': 'REDIRECT_METHOD',
+ 'value': 'RedirectMethod'
+ },
+ {
+ 'name': 'NOT_MODIFIED',
+ 'value': 'NotModified'
+ },
+ {
+ 'name': 'USE_PROXY',
+ 'value': 'UseProxy'
+ },
+ {
+ 'name': 'UNUSED',
+ 'value': 'Unused'
+ },
+ {
+ 'name': 'TEMPORARY_REDIRECT',
+ 'value': 'TemporaryRedirect'
+ },
+ {
+ 'name': 'REDIRECT_KEEP_VERB',
+ 'value': 'RedirectKeepVerb'
+ },
+ {
+ 'name': 'BAD_REQUEST',
+ 'value': 'BadRequest'
+ },
+ {
+ 'name': 'UNAUTHORIZED',
+ 'value': 'Unauthorized'
+ },
+ {
+ 'name': 'PAYMENT_REQUIRED',
+ 'value': 'PaymentRequired'
+ },
+ {
+ 'name': 'FORBIDDEN',
+ 'value': 'Forbidden'
+ },
+ {
+ 'name': 'NOT_FOUND',
+ 'value': 'NotFound'
+ },
+ {
+ 'name': 'METHOD_NOT_ALLOWED',
+ 'value': 'MethodNotAllowed'
+ },
+ {
+ 'name': 'NOT_ACCEPTABLE',
+ 'value': 'NotAcceptable'
+ },
+ {
+ 'name': 'PROXY_AUTHENTICATION_REQUIRED',
+ 'value': 'ProxyAuthenticationRequired'
+ },
+ {
+ 'name': 'REQUEST_TIMEOUT',
+ 'value': 'RequestTimeout'
+ },
+ {
+ 'name': 'CONFLICT',
+ 'value': 'Conflict'
+ },
+ {
+ 'name': 'GONE',
+ 'value': 'Gone'
+ },
+ {
+ 'name': 'LENGTH_REQUIRED',
+ 'value': 'LengthRequired'
+ },
+ {
+ 'name': 'PRECONDITION_FAILED',
+ 'value': 'PreconditionFailed'
+ },
+ {
+ 'name': 'REQUEST_ENTITY_TOO_LARGE',
+ 'value': 'RequestEntityTooLarge'
+ },
+ {
+ 'name': 'REQUEST_URI_TOO_LONG',
+ 'value': 'RequestUriTooLong'
+ },
+ {
+ 'name': 'UNSUPPORTED_MEDIA_TYPE',
+ 'value': 'UnsupportedMediaType'
+ },
+ {
+ 'name': 'REQUESTED_RANGE_NOT_SATISFIABLE',
+ 'value': 'RequestedRangeNotSatisfiable'
+ },
+ {
+ 'name': 'EXPECTATION_FAILED',
+ 'value': 'ExpectationFailed'
+ },
+ {
+ 'name': 'UPGRADE_REQUIRED',
+ 'value': 'UpgradeRequired'
+ },
+ {
+ 'name': 'INTERNAL_SERVER_ERROR',
+ 'value': 'InternalServerError'
+ },
+ {
+ 'name': 'NOT_IMPLEMENTED',
+ 'value': 'NotImplemented'
+ },
+ {
+ 'name': 'BAD_GATEWAY',
+ 'value': 'BadGateway'
+ },
+ {
+ 'name': 'SERVICE_UNAVAILABLE',
+ 'value': 'ServiceUnavailable'
+ },
+ {
+ 'name': 'GATEWAY_TIMEOUT',
+ 'value': 'GatewayTimeout'
+ },
+ {
+ 'name': 'HTTP_VERSION_NOT_SUPPORTED',
+ 'value': 'HttpVersionNotSupported'
+ }
+ ]
+ }
+```
\ No newline at end of file
From 10925e3dec73699b950f256576cd6983947faaa3 Mon Sep 17 00:00:00 2001
From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com>
Date: Thu, 2 Jan 2025 17:16:09 -0800
Subject: [PATCH 046/128] Fix incorrect variable name (#31988)
Co-authored-by: Wes Haggard
---
eng/common/pipelines/templates/jobs/prepare-pipelines.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/eng/common/pipelines/templates/jobs/prepare-pipelines.yml b/eng/common/pipelines/templates/jobs/prepare-pipelines.yml
index 2192c1ebfbf8..799b10785300 100644
--- a/eng/common/pipelines/templates/jobs/prepare-pipelines.yml
+++ b/eng/common/pipelines/templates/jobs/prepare-pipelines.yml
@@ -130,7 +130,7 @@ jobs:
Write-Host "##vso[task.setvariable variable=InternalVariableGroups]$internalVariableGroups"
Write-Host "##vso[task.setvariable variable=TestVariableGroups]$testVariableGroups"
Write-Host "##vso[task.setvariable variable=TestServiceConnections]$testServiceConnections"
- Write-Host "##vso[task.setvariable variable=InternalServiceConnections]$internalServviceConnections"
+ Write-Host "##vso[task.setvariable variable=InternalServiceConnections]$internalServiceConnections"
Write-host "##vso[task.setvariable variable=GeneratePublicCIPipeline]$generatePublicCIPipeline"
Write-Host "##vso[task.setvariable variable=GenerateUnifiedWeekly]$generateUnifiedWeekly"
displayName: Setup pipeline generation variables
From 6b36ccd2c672a57f8a31174561bc01d603fa48b5 Mon Sep 17 00:00:00 2001
From: gfitzgerald42 <55882575+gfitzgerald42@users.noreply.github.com>
Date: Sun, 5 Jan 2025 12:09:40 -0500
Subject: [PATCH 047/128] Add SyndicatedRegistries to registries.json (#31644)
* Update registries.json
* Update readme.md
* Update readme.md
* Update readme.md
* Change syndicatedRegistries from dictionary to array of tuples
* Fix casing for item1 and item2 properties - lint diff
* Rename JSON properties in registries.json
* remove unused suppression
---
.../2024-10-01-preview/registries.json | 32 +++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/registries.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/registries.json
index 240ad6261308..a911af03db4b 100644
--- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/registries.json
+++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/registries.json
@@ -637,6 +637,26 @@
"$ref": "#/definitions/ManagedResourceGroupSettings",
"x-nullable": true
},
+ "syndicatedRegistries": {
+ "description": "List of tuples containing Guid and SyndicatedRegistry",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "syndicatedRegistryGuid": {
+ "description": "The Guid of the syndicated registry",
+ "type": "string",
+ "x-nullable": true
+ },
+ "syndicatedRegistry": {
+ "$ref": "#/definitions/SyndicatedRegistry",
+ "x-nullable": true
+ }
+ },
+ "x-nullable": true
+ },
+ "x-nullable": true
+ },
"mlFlowRegistryUri": {
"description": "MLFlow Registry URI for the Registry",
"type": "string",
@@ -714,6 +734,18 @@
},
"additionalProperties": false
},
+ "SyndicatedRegistry": {
+ "description": "A registry that is syndicated",
+ "type": "object",
+ "properties": {
+ "registryId": {
+ "description": "The Registry Id of the syndicated Registry",
+ "type": "string",
+ "x-nullable": true
+ }
+ },
+ "x-nullable": true
+ },
"ManagedResourceGroupAssignedIdentities": {
"description": "Details for managed resource group assigned identities.",
"type": "object",
From c852a76b96e5c71972cdc62a303665fec7c867b6 Mon Sep 17 00:00:00 2001
From: Wanpeng Li
Date: Mon, 6 Jan 2025 10:49:55 +0800
Subject: [PATCH 048/128] And tspconfig-java-package-dir Rule for TypeSpec
Validation (#31951)
* Add tspconfig java namespace rule
* .
* .
* .
* Change to packge-dir rule
* Revert
* .
---------
Co-authored-by: albertxavier100
---
.vscode/settings.json | 14 ++-
eng/tools/typespec-validation/src/rule.ts | 4 +
.../src/rules/tspconfig-java-package-dir.ts | 54 ++++++++++
.../test/tspconfig.test.ts | 100 ++++++++++++++++++
4 files changed, 169 insertions(+), 3 deletions(-)
create mode 100644 eng/tools/typespec-validation/src/rules/tspconfig-java-package-dir.ts
create mode 100644 eng/tools/typespec-validation/test/tspconfig.test.ts
diff --git a/.vscode/settings.json b/.vscode/settings.json
index ec907b484778..233fe74a6c32 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -34,7 +34,15 @@
},
"[markdown]": {
"editor.rulers": [
- { "column": 120, "color": "#ff0000c0" }
+ {
+ "column": 120,
+ "color": "#ff0000c0"
+ }
]
-},
-}
+ },
+ "workbench.colorCustomizations": {
+ "activityBar.background": "#501B29",
+ "titleBar.activeBackground": "#702639",
+ "titleBar.activeForeground": "#FEFBFC"
+ },
+}
\ No newline at end of file
diff --git a/eng/tools/typespec-validation/src/rule.ts b/eng/tools/typespec-validation/src/rule.ts
index 88d1da787d16..b0f2494dd2f6 100644
--- a/eng/tools/typespec-validation/src/rule.ts
+++ b/eng/tools/typespec-validation/src/rule.ts
@@ -4,5 +4,9 @@ import { TsvHost } from "./tsv-host.js";
export interface Rule {
readonly name: string;
readonly description: string;
+ // TODO: required when all rules apply it
+ readonly action?: string;
+ // TODO: required when all rules apply it
+ readonly link?: string;
execute(host?: TsvHost, folder?: string): Promise;
}
diff --git a/eng/tools/typespec-validation/src/rules/tspconfig-java-package-dir.ts b/eng/tools/typespec-validation/src/rules/tspconfig-java-package-dir.ts
new file mode 100644
index 000000000000..28c8d544f13b
--- /dev/null
+++ b/eng/tools/typespec-validation/src/rules/tspconfig-java-package-dir.ts
@@ -0,0 +1,54 @@
+import { join } from "path";
+import { parse as yamlParse } from "yaml";
+import { Rule } from "../rule.js";
+import { RuleResult } from "../rule-result.js";
+import { TsvHost } from "../tsv-host.js";
+
+export class TspConfigJavaPackageDirectoryRule implements Rule {
+ pattern = new RegExp(/^azure(-\w+)+$/);
+
+ readonly name = "tspconfig-java-package-dir";
+ readonly description = `"options.@azure-tools/typespec-java.package-dir" must match ${this.pattern}.`;
+ readonly action = `Please update "options.@azure-tools/typespec-java.package-dir" to start with "azure", followed by one or more "-" segments. Each segment can contains letters, digits, or underscores. For example: "azure-test".`;
+ // TODO: provide link to the rule details and full sample
+ readonly link = "";
+ async execute(host: TsvHost, folder: string): Promise {
+ const tspconfigExists = await host.checkFileExists(join(folder, "tspconfig.yaml"));
+ if (!tspconfigExists)
+ return this.createFailedResult(`Failed to find ${join(folder, "tspconfig.yaml")}`);
+
+ let config = undefined;
+ try {
+ const configText = await host.readTspConfig(folder);
+ config = yamlParse(configText);
+ } catch (error) {
+ // TODO: append content " Check tpsconfig-file-exists rule for more details." when it's ready
+ return this.createFailedResult(`Failed to parse ${join(folder, "tspconfig.yaml")}`);
+ }
+
+ const javaEmitterOptions = config?.options?.["@azure-tools/typespec-java"];
+
+ if (!javaEmitterOptions)
+ return this.createFailedResult(`Failed to find "options.@azure-tools/typespec-java"`);
+
+ const packageDir = javaEmitterOptions?.["package-dir"];
+ if (!packageDir)
+ return this.createFailedResult(
+ `Failed to find "options.@azure-tools/typespec-java.package-dir"`,
+ );
+
+ if (!this.pattern.test(packageDir)) {
+ return this.createFailedResult(
+ `package-dir "${packageDir}" does not match "${this.pattern}"`,
+ );
+ }
+ return { success: true, stdOutput: `[${this.name}]: validation passed.` };
+ }
+
+ createFailedResult(errorMessage: string): RuleResult {
+ return {
+ success: false,
+ errorOutput: `[${this.name}]: ${errorMessage}. ${this.description} ${this.action} For more information and full samples, see ${this.link}.`,
+ };
+ }
+}
diff --git a/eng/tools/typespec-validation/test/tspconfig.test.ts b/eng/tools/typespec-validation/test/tspconfig.test.ts
new file mode 100644
index 000000000000..3be4e4f1deb3
--- /dev/null
+++ b/eng/tools/typespec-validation/test/tspconfig.test.ts
@@ -0,0 +1,100 @@
+import { describe, it } from "vitest";
+import { join } from "path";
+import { TspConfigJavaPackageDirectoryRule } from "../src/rules/tspconfig-java-package-dir.js";
+import { TsvTestHost } from "./tsv-test-host.js";
+import { strict as assert, strictEqual } from "node:assert";
+import { Rule } from "../src/rule.js";
+
+interface TestCase {
+ tspconfig: string;
+ expectedResult: boolean;
+ rule: Rule;
+ when: string;
+ folder: string;
+}
+
+const testCases: TestCase[] = [
+ {
+ rule: new TspConfigJavaPackageDirectoryRule(),
+ folder: TsvTestHost.folder,
+ when: "package-dir \"azure-abc\" is valid",
+ tspconfig: `
+options:
+ "@azure-tools/typespec-java":
+ package-dir: azure-abc
+`,
+ expectedResult: true,
+ },
+ {
+ rule: new TspConfigJavaPackageDirectoryRule(),
+ folder: TsvTestHost.folder,
+ when: "tspconfig.yaml is not a valid yaml",
+ tspconfig: `aaa`,
+ expectedResult: false,
+ },
+ {
+ rule: new TspConfigJavaPackageDirectoryRule(),
+ folder: TsvTestHost.folder,
+ when: "java emitter has no options",
+ tspconfig: `
+options:
+ "@azure-tools/typespec-ts":
+ package-dir: com.azure.test
+`,
+ expectedResult: false,
+ },
+ {
+ rule: new TspConfigJavaPackageDirectoryRule(),
+ folder: TsvTestHost.folder,
+ when: "java emitter options have no package-dir",
+ tspconfig: `
+options:
+ "@azure-tools/typespec-java":
+ x: com.azure.test
+`,
+ expectedResult: false,
+ },
+ {
+ rule: new TspConfigJavaPackageDirectoryRule(),
+ folder: TsvTestHost.folder,
+ when: "package-dir \"azure.test\" is invalid",
+ tspconfig: `
+options:
+ "@azure-tools/typespec-java":
+ package-dir: azure.test
+`,
+ expectedResult: false,
+ },
+ {
+ rule: new TspConfigJavaPackageDirectoryRule(),
+ folder: TsvTestHost.folder,
+ when: "package-dir \"azure-\" is invalid",
+ tspconfig: `
+options:
+ "@azure-tools/typespec-java":
+ package-dir: azure-
+`,
+ expectedResult: false,
+ },
+];
+
+describe("tspconfig", function () {
+ it.each(testCases)(
+ `should be $expectedResult for rule $rule.name when $when`,
+ async (c: TestCase) => {
+ let host = new TsvTestHost();
+ host.checkFileExists = async (file: string) => {
+ return file === join(TsvTestHost.folder, "tspconfig.yaml");
+ };
+ host.readTspConfig = async (_folder: string) => c.tspconfig;
+ const result = await c.rule.execute(host, TsvTestHost.folder);
+ strictEqual(result.success, c.expectedResult);
+ if (!c.expectedResult) {
+ // TODO: assert link when ready
+ assert(result.errorOutput?.includes(c.rule.name));
+ assert(result.errorOutput?.includes(c.rule.description));
+ assert(result.errorOutput?.includes(c.rule.action!));
+ }
+ },
+ );
+});
From c326a242f0211388079304c119a80aad8c032434 Mon Sep 17 00:00:00 2001
From: Priyanshi Jain <87351063+priyjain358@users.noreply.github.com>
Date: Mon, 6 Jan 2025 14:20:36 +0530
Subject: [PATCH 049/128] [AzureStackHCI] Public preview - 2024-12-01-preview
(#31977)
* Copy files from preview/2024-09-01-preview
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to preview/2024-12-01-preview
Updated the API version from preview/2024-09-01-preview to preview/2024-12-01-preview.
* Added tag for 2024-12-01-preview in readme file
* correct readme changes
* operations
* add poolable disk count
* cvm changes
* custom location for cluster
* prettier
* update cvm
* remove customlocation
---
.../2024-12-01-preview/arcSettings.json | 819 ++++++++
.../preview/2024-12-01-preview/clusters.json | 1686 +++++++++++++++++
.../deploymentSettings.json | 1004 ++++++++++
.../2024-12-01-preview/edgeDeviceJobs.json | 1150 +++++++++++
.../2024-12-01-preview/edgeDevices.json | 1296 +++++++++++++
.../Clusters_UpdateSecretsLocations.json | 93 +
.../examples/ConfigureRemoteSupport.json | 113 ++
.../ConsentAndInstallDefaultExtensions.json | 52 +
.../examples/CreateArcIdentity.json | 26 +
.../examples/CreateCluster.json | 60 +
.../examples/CreateClusterIdentity.json | 25 +
.../examples/CreateHciEdgeDevice.json | 257 +++
.../examples/DeleteArcSetting.json | 18 +
.../examples/DeleteCluster.json | 17 +
.../examples/DeleteDeploymentSettings.json | 17 +
.../examples/DeleteEdgeDevices.json | 15 +
.../examples/DeleteExtension.json | 19 +
.../examples/DeleteSecuritySettings.json | 17 +
.../examples/DeleteUpdateRuns.json | 19 +
.../examples/DeleteUpdateSummaries.json | 17 +
.../examples/DeleteUpdates.json | 18 +
...eDeviceJobs_CreateOrUpdate_CollectLog.json | 65 +
...viceJobs_CreateOrUpdate_RemoteSupport.json | 68 +
.../examples/EdgeDeviceJobs_Delete.json | 18 +
.../EdgeDeviceJobs_Get_RemoteSupport.json | 34 +
.../EdgeDeviceJobs_ListByEdgeDevice.json | 38 +
.../ExtendSoftwareAssuranceBenefit.json | 82 +
.../examples/Extensions_Upgrade.json | 22 +
.../examples/GeneratePassword.json | 19 +
.../examples/GetArcSetting.json | 61 +
.../examples/GetCluster.json | 122 ++
.../examples/GetDeploymentSettings.json | 270 +++
.../examples/GetEdgeDevices.json | 46 +
.../examples/GetExtension.json | 80 +
.../2024-12-01-preview/examples/GetOffer.json | 34 +
.../examples/GetPublisher.json | 18 +
.../examples/GetSecuritySettings.json | 38 +
.../2024-12-01-preview/examples/GetSku.json | 36 +
.../examples/GetUpdateRuns.json | 43 +
.../examples/GetUpdateSummaries.json | 41 +
.../examples/GetUpdates.json | 44 +
.../examples/InitializeDisableProcess.json | 19 +
.../examples/ListArcSettingsByCluster.json | 64 +
.../examples/ListClustersByResourceGroup.json | 131 ++
.../examples/ListClustersBySubscription.json | 130 ++
.../ListDeploymentSettingsByCluster.json | 202 ++
.../examples/ListEdgeDevices.json | 72 +
.../examples/ListExtensionsByArcSetting.json | 95 +
.../examples/ListOffersByCluster.json | 36 +
.../examples/ListOffersByPublisher.json | 37 +
.../examples/ListPublishersByCluster.json | 21 +
.../ListSecuritySettingsByCluster.json | 41 +
.../examples/ListSkusByOffer.json | 39 +
.../examples/ListUpdateRuns.json | 46 +
.../examples/ListUpdateSummaries.json | 45 +
.../examples/ListUpdates.json | 47 +
.../examples/PatchArcSetting.json | 74 +
.../examples/PatchExtension.json | 99 +
.../examples/PostUpdates.json | 17 +
.../examples/PutArcSetting.json | 53 +
.../examples/PutDeploymentSettings.json | 730 +++++++
.../examples/PutExtension.json | 164 ++
.../examples/PutSecuritySettings.json | 72 +
.../examples/PutUpdateRuns.json | 68 +
.../examples/PutUpdateSummaries.json | 52 +
.../examples/PutUpdates.json | 71 +
.../examples/TriggerLogCollection.json | 95 +
.../examples/UpdateCluster.json | 125 ++
.../examples/UploadCertificate.json | 23 +
.../examples/ValidateEdgeDevices.json | 26 +
.../2024-12-01-preview/extensions.json | 707 +++++++
.../preview/2024-12-01-preview/hciCommon.json | 417 ++++
.../preview/2024-12-01-preview/offers.json | 302 +++
.../2024-12-01-preview/publishers.json | 188 ++
.../2024-12-01-preview/securitySettings.json | 502 +++++
.../preview/2024-12-01-preview/skus.json | 275 +++
.../2024-12-01-preview/updateRuns.json | 412 ++++
.../2024-12-01-preview/updateSummaries.json | 408 ++++
.../preview/2024-12-01-preview/updates.json | 577 ++++++
.../StackHCI/readme.md | 25 +-
.../examples/ListOperations.json | 453 +++++
.../2024-12-01-preview/operations.json | 73 +
82 files changed, 14949 insertions(+), 1 deletion(-)
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/arcSettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/clusters.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/deploymentSettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDeviceJobs.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDevices.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Clusters_UpdateSecretsLocations.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConfigureRemoteSupport.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConsentAndInstallDefaultExtensions.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateArcIdentity.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateClusterIdentity.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateHciEdgeDevice.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteArcSetting.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteDeploymentSettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteEdgeDevices.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteExtension.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteSecuritySettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateRuns.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateSummaries.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdates.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_CollectLog.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_RemoteSupport.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Delete.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Get_RemoteSupport.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_ListByEdgeDevice.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ExtendSoftwareAssuranceBenefit.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Extensions_Upgrade.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GeneratePassword.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetArcSetting.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetDeploymentSettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetEdgeDevices.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetExtension.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetOffer.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetPublisher.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSecuritySettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSku.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateRuns.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateSummaries.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdates.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/InitializeDisableProcess.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListArcSettingsByCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersByResourceGroup.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersBySubscription.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListDeploymentSettingsByCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListEdgeDevices.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListExtensionsByArcSetting.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByPublisher.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListPublishersByCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSecuritySettingsByCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSkusByOffer.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateRuns.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateSummaries.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdates.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchArcSetting.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchExtension.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PostUpdates.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutArcSetting.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutDeploymentSettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutExtension.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutSecuritySettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateRuns.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateSummaries.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdates.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/TriggerLogCollection.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UpdateCluster.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UploadCertificate.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ValidateEdgeDevices.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/extensions.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/hciCommon.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/offers.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/publishers.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/securitySettings.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/skus.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateRuns.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateSummaries.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updates.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/examples/ListOperations.json
create mode 100644 specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/operations.json
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/arcSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/arcSettings.json
new file mode 100644
index 000000000000..5fb6e7361a55
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/arcSettings.json
@@ -0,0 +1,819 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/arcSettings": {
+ "get": {
+ "operationId": "ArcSettings_ListByCluster",
+ "description": "Get ArcSetting resources of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ArcSettingList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List ArcSetting resources by HCI Cluster": {
+ "$ref": "./examples/ListArcSettingsByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}": {
+ "get": {
+ "operationId": "ArcSettings_Get",
+ "description": "Get ArcSetting resource details of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ArcSetting"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get ArcSetting": {
+ "$ref": "./examples/GetArcSetting.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "ArcSettings_Create",
+ "description": "Create ArcSetting for HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "name": "arcSetting",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ArcSetting"
+ },
+ "description": "Parameters supplied to the Create ArcSetting resource for this HCI cluster."
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ArcSetting"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create ArcSetting": {
+ "$ref": "./examples/PutArcSetting.json"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "ArcSettings_Update",
+ "description": "Update ArcSettings for HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "name": "arcSetting",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ArcSettingsPatch"
+ },
+ "description": "ArcSettings parameters that needs to be updated"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ArcSetting"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch ArcSetting": {
+ "$ref": "./examples/PatchArcSetting.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "ArcSettings_Delete",
+ "description": "Delete ArcSetting resource details of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.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/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-examples": {
+ "Delete ArcSetting": {
+ "$ref": "./examples/DeleteArcSetting.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/generatePassword": {
+ "post": {
+ "tags": [
+ "ArcSettings"
+ ],
+ "operationId": "ArcSettings_GeneratePassword",
+ "description": "Generate password for arc settings.",
+ "x-ms-examples": {
+ "Generate Password": {
+ "$ref": "./examples/GeneratePassword.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/PasswordCredential"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/createArcIdentity": {
+ "post": {
+ "tags": [
+ "ArcSettings"
+ ],
+ "operationId": "ArcSettings_CreateIdentity",
+ "description": "Create Aad identity for arc settings.",
+ "x-ms-examples": {
+ "Create Arc Identity": {
+ "$ref": "./examples/CreateArcIdentity.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/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ArcIdentityResponse"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/consentAndInstallDefaultExtensions": {
+ "post": {
+ "tags": [
+ "ArcSettings"
+ ],
+ "operationId": "ArcSettings_ConsentAndInstallDefaultExtensions",
+ "description": "Add consent time for default extensions and initiate extensions installation",
+ "x-ms-examples": {
+ "Consent And Install Default Extensions": {
+ "$ref": "./examples/ConsentAndInstallDefaultExtensions.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ArcSetting"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/initializeDisableProcess": {
+ "post": {
+ "tags": [
+ "ArcSettings"
+ ],
+ "operationId": "ArcSettings_InitializeDisableProcess",
+ "description": "Initializes ARC Disable process on the cluster",
+ "x-ms-examples": {
+ "Trigger ARC Disable": {
+ "$ref": "./examples/InitializeDisableProcess.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ArcSettingList": {
+ "description": "List of ArcSetting proxy resources for the HCI cluster.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of ArcSetting proxy resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ArcSetting"
+ },
+ "readOnly": true
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ArcSettingsPatch": {
+ "description": "ArcSetting details to update.",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "description": "ArcSettings properties.",
+ "$ref": "#/definitions/ArcSettingsPatchProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ArcSettingsPatchProperties": {
+ "description": "ArcSettings properties.",
+ "type": "object",
+ "properties": {
+ "connectivityProperties": {
+ "description": "contains connectivity related configuration for ARC resources",
+ "type": "object",
+ "items": {
+ "$ref": "#/definitions/ArcConnectivityProperties"
+ }
+ }
+ }
+ },
+ "ArcSetting": {
+ "description": "ArcSetting details.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "ArcSetting properties.",
+ "$ref": "#/definitions/ArcSettingProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ArcSettingProperties": {
+ "description": "ArcSetting properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the ArcSetting proxy resource.",
+ "type": "string",
+ "enum": [
+ "NotSpecified",
+ "Error",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Connected",
+ "Disconnected",
+ "Deleted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "PartiallySucceeded",
+ "PartiallyConnected",
+ "InProgress",
+ "Accepted",
+ "Provisioning",
+ "DisableInProgress"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "arcInstanceResourceGroup": {
+ "description": "The resource group that hosts the Arc agents, ie. Hybrid Compute Machine resources.",
+ "type": "string"
+ },
+ "arcApplicationClientId": {
+ "description": "App id of arc AAD identity.",
+ "type": "string"
+ },
+ "arcApplicationTenantId": {
+ "description": "Tenant id of arc AAD identity.",
+ "type": "string"
+ },
+ "arcServicePrincipalObjectId": {
+ "description": "Object id of arc AAD service principal.",
+ "type": "string"
+ },
+ "arcApplicationObjectId": {
+ "description": "Object id of arc AAD identity.",
+ "type": "string"
+ },
+ "aggregateState": {
+ "description": "Aggregate state of Arc agent across the nodes in this HCI cluster.",
+ "type": "string",
+ "enum": [
+ "NotSpecified",
+ "Error",
+ "Succeeded",
+ "Canceled",
+ "Failed",
+ "Connected",
+ "Disconnected",
+ "Deleted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "PartiallySucceeded",
+ "PartiallyConnected",
+ "InProgress",
+ "Accepted",
+ "Provisioning",
+ "DisableInProgress"
+ ],
+ "x-ms-enum": {
+ "name": "ArcSettingAggregateState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "perNodeDetails": {
+ "description": "State of Arc agent in each of the nodes.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PerNodeState"
+ },
+ "readOnly": true
+ },
+ "connectivityProperties": {
+ "description": "contains connectivity related configuration for ARC resources",
+ "type": "object",
+ "items": {
+ "$ref": "#/definitions/ArcConnectivityProperties"
+ }
+ },
+ "defaultExtensions": {
+ "description": "Properties for each of the default extensions category",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DefaultExtensionDetails"
+ },
+ "x-ms-identifiers": [
+ "category"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "PerNodeState": {
+ "description": "Status of Arc agent for a particular node in HCI Cluster.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Name of the Node in HCI Cluster"
+ },
+ "arcInstance": {
+ "description": "Fully qualified resource ID for the Arc agent of this node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "arcNodeServicePrincipalObjectId": {
+ "description": "The service principal id of the arc for server node",
+ "type": "string",
+ "readOnly": true
+ },
+ "state": {
+ "description": "State of Arc agent in this node.",
+ "type": "string",
+ "enum": [
+ "NotSpecified",
+ "Error",
+ "Succeeded",
+ "Canceled",
+ "Failed",
+ "Connected",
+ "Disconnected",
+ "Deleted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "PartiallySucceeded",
+ "PartiallyConnected",
+ "InProgress",
+ "Accepted",
+ "Provisioning",
+ "DisableInProgress"
+ ],
+ "x-ms-enum": {
+ "name": "NodeArcState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "DefaultExtensionDetails": {
+ "description": "Properties for a particular default extension category.",
+ "type": "object",
+ "properties": {
+ "category": {
+ "description": "Default extension category",
+ "type": "string",
+ "readOnly": true
+ },
+ "consentTime": {
+ "description": "Consent time for extension category",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "ArcConnectivityProperties": {
+ "description": "Connectivity related configuration required by arc server.",
+ "type": "object",
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "True indicates ARC connectivity is enabled"
+ },
+ "serviceConfigurations": {
+ "type": "array",
+ "description": "Service configurations associated with the connectivity resource. They are only processed by the server if 'enabled' property is set to 'true'.",
+ "items": {
+ "$ref": "#/definitions/ServiceConfiguration"
+ },
+ "x-ms-identifiers": [
+ "serviceName"
+ ]
+ }
+ },
+ "additionalProperties": false
+ },
+ "ServiceConfiguration": {
+ "type": "object",
+ "description": "Service configuration details",
+ "required": [
+ "serviceName",
+ "port"
+ ],
+ "properties": {
+ "serviceName": {
+ "type": "string",
+ "description": "Name of the service.",
+ "enum": [
+ "WAC"
+ ],
+ "x-ms-enum": {
+ "name": "serviceName",
+ "modelAsString": true
+ }
+ },
+ "port": {
+ "type": "integer",
+ "format": "int64",
+ "description": "The port on which service is enabled."
+ }
+ }
+ },
+ "PasswordCredential": {
+ "type": "object",
+ "properties": {
+ "secretText": {
+ "type": "string"
+ },
+ "keyId": {
+ "type": "string"
+ },
+ "startDateTime": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "endDateTime": {
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "additionalProperties": false,
+ "readOnly": true
+ },
+ "ArcIdentityResponse": {
+ "description": "ArcIdentity details.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "ArcIdentity properties.",
+ "$ref": "#/definitions/ArcIdentityResponseProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ArcIdentityResponseProperties": {
+ "type": "object",
+ "properties": {
+ "arcApplicationClientId": {
+ "type": "string"
+ },
+ "arcApplicationTenantId": {
+ "type": "string"
+ },
+ "arcServicePrincipalObjectId": {
+ "type": "string"
+ },
+ "arcApplicationObjectId": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "readOnly": true
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "ArcSettingNameParameter": {
+ "name": "arcSettingName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the proxy resource holding details of HCI ArcSetting information.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/clusters.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/clusters.json
new file mode 100644
index 000000000000..f053ec444c34
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/clusters.json
@@ -0,0 +1,1686 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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.AzureStackHCI/clusters": {
+ "get": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_ListBySubscription",
+ "x-ms-examples": {
+ "List clusters in a given subscription": {
+ "$ref": "./examples/ListClustersBySubscription.json"
+ }
+ },
+ "description": "List all HCI clusters in a subscription.",
+ "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",
+ "schema": {
+ "$ref": "#/definitions/ClusterList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters": {
+ "get": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_ListByResourceGroup",
+ "x-ms-examples": {
+ "List clusters in a given resource group": {
+ "$ref": "./examples/ListClustersByResourceGroup.json"
+ }
+ },
+ "description": "List all HCI clusters in a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ClusterList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}": {
+ "get": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Get",
+ "x-ms-examples": {
+ "Get cluster": {
+ "$ref": "./examples/GetCluster.json"
+ }
+ },
+ "description": "Get HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Create",
+ "x-ms-examples": {
+ "Create cluster": {
+ "$ref": "./examples/CreateCluster.json"
+ }
+ },
+ "description": "Create an HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "cluster",
+ "in": "body",
+ "description": "Details of the HCI cluster.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Update",
+ "x-ms-examples": {
+ "Update cluster": {
+ "$ref": "./examples/UpdateCluster.json"
+ }
+ },
+ "description": "Update an HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "cluster",
+ "in": "body",
+ "description": "Details of the HCI cluster.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterPatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Clusters"
+ ],
+ "operationId": "Clusters_Delete",
+ "x-ms-examples": {
+ "Delete cluster": {
+ "$ref": "./examples/DeleteCluster.json"
+ }
+ },
+ "description": "Delete an HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.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/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/updateSecretsLocations": {
+ "post": {
+ "operationId": "Clusters_UpdateSecretsLocations",
+ "tags": [
+ "Clusters"
+ ],
+ "description": "Update cluster secrets locations.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "clusterName",
+ "in": "path",
+ "description": "The name of the cluster.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "body",
+ "in": "body",
+ "description": "The content of the action request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecretsLocationsChangeRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "202": {
+ "description": "Resource operation accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update secrets locations for a Cluster": {
+ "$ref": "./examples/Clusters_UpdateSecretsLocations.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/uploadCertificate": {
+ "post": {
+ "tags": [
+ "Cluster"
+ ],
+ "operationId": "Clusters_UploadCertificate",
+ "x-ms-examples": {
+ "Upload certificate": {
+ "$ref": "./examples/UploadCertificate.json"
+ }
+ },
+ "description": "Upload certificate.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "uploadCertificateRequest",
+ "in": "body",
+ "description": "Upload certificate request.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UploadCertificateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/createClusterIdentity": {
+ "post": {
+ "tags": [
+ "Cluster"
+ ],
+ "operationId": "Clusters_CreateIdentity",
+ "description": "Create cluster identity.",
+ "x-ms-examples": {
+ "Create cluster Identity": {
+ "$ref": "./examples/CreateClusterIdentity.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ClusterIdentityResponse"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/extendSoftwareAssuranceBenefit": {
+ "post": {
+ "tags": [
+ "Cluster"
+ ],
+ "operationId": "Clusters_ExtendSoftwareAssuranceBenefit",
+ "description": "Extends Software Assurance Benefit to a cluster",
+ "x-ms-examples": {
+ "Create cluster Identity": {
+ "$ref": "./examples/ExtendSoftwareAssuranceBenefit.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "softwareAssuranceChangeRequest",
+ "in": "body",
+ "description": "Software Assurance Change Request Payload",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SoftwareAssuranceChangeRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/triggerLogCollection": {
+ "post": {
+ "tags": [
+ "Cluster"
+ ],
+ "operationId": "Clusters_TriggerLogCollection",
+ "description": "Trigger Log Collection on a cluster",
+ "x-ms-examples": {
+ "Trigger Log Collection": {
+ "$ref": "./examples/TriggerLogCollection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "logCollectionRequest",
+ "in": "body",
+ "description": "Trigger Log Collection Request Payload",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/LogCollectionRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/configureRemoteSupport": {
+ "post": {
+ "tags": [
+ "Cluster"
+ ],
+ "operationId": "Clusters_ConfigureRemoteSupport",
+ "description": "Configure RemoteSupport on a cluster",
+ "x-ms-examples": {
+ "Configure Remote Support": {
+ "$ref": "./examples/ConfigureRemoteSupport.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "remoteSupportRequest",
+ "in": "body",
+ "description": "Configure Remote Support Request Payload",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RemoteSupportRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ClusterList": {
+ "description": "List of clusters.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of clusters.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Cluster": {
+ "description": "Cluster details.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "identity": {
+ "description": "Identity of Cluster resource",
+ "$ref": "../../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "x-ms-client-flatten": true
+ },
+ "properties": {
+ "description": "Cluster properties.",
+ "$ref": "#/definitions/ClusterProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ClusterPatch": {
+ "description": "Cluster details to update.",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "identity": {
+ "description": "Identity of Cluster resource",
+ "$ref": "../../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "x-ms-client-flatten": true
+ },
+ "properties": {
+ "description": "Cluster properties.",
+ "$ref": "#/definitions/ClusterPatchProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ClusterProperties": {
+ "description": "Cluster properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning",
+ "NotSpecified",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "Deleted",
+ "PartiallySucceeded",
+ "InProgress",
+ "DisableInProgress",
+ "Connected",
+ "PartiallyConnected",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "status": {
+ "description": "Status of the cluster agent.",
+ "type": "string",
+ "enum": [
+ "NotYetRegistered",
+ "ConnectedRecently",
+ "NotConnectedRecently",
+ "Disconnected",
+ "Error",
+ "NotSpecified",
+ "ValidationInProgress",
+ "ValidationSuccess",
+ "ValidationFailed",
+ "DeploymentInProgress",
+ "DeploymentFailed",
+ "DeploymentSuccess"
+ ],
+ "x-ms-enum": {
+ "name": "Status",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "connectivityStatus": {
+ "description": "Overall connectivity status for the cluster resource.",
+ "type": "string",
+ "enum": [
+ "NotYetRegistered",
+ "Connected",
+ "NotConnectedRecently",
+ "PartiallyConnected",
+ "Disconnected",
+ "NotSpecified"
+ ],
+ "x-ms-enum": {
+ "name": "ConnectivityStatus",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "cloudId": {
+ "description": "Unique, immutable resource id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "cloudManagementEndpoint": {
+ "description": "Endpoint configured for management from the Azure portal.",
+ "type": "string"
+ },
+ "aadClientId": {
+ "description": "App id of cluster AAD identity.",
+ "type": "string"
+ },
+ "aadTenantId": {
+ "description": "Tenant id of cluster AAD identity.",
+ "type": "string"
+ },
+ "aadApplicationObjectId": {
+ "description": "Object id of cluster AAD identity.",
+ "type": "string"
+ },
+ "aadServicePrincipalObjectId": {
+ "description": "Id of cluster identity service principal.",
+ "type": "string"
+ },
+ "softwareAssuranceProperties": {
+ "description": "Software Assurance properties of the cluster.",
+ "$ref": "#/definitions/SoftwareAssuranceProperties"
+ },
+ "logCollectionProperties": {
+ "description": "Log Collection properties of the cluster.",
+ "$ref": "#/definitions/LogCollectionProperties"
+ },
+ "remoteSupportProperties": {
+ "description": "RemoteSupport properties of the cluster.",
+ "$ref": "#/definitions/RemoteSupportProperties"
+ },
+ "desiredProperties": {
+ "description": "Desired properties of the cluster.",
+ "$ref": "#/definitions/ClusterDesiredProperties"
+ },
+ "reportedProperties": {
+ "description": "Properties reported by cluster agent.",
+ "$ref": "#/definitions/ClusterReportedProperties",
+ "readOnly": true
+ },
+ "isolatedVmAttestationConfiguration": {
+ "description": "Attestation configurations for isolated VM (e.g. TVM, CVM) of the cluster.",
+ "$ref": "#/definitions/IsolatedVmAttestationConfiguration",
+ "readOnly": true
+ },
+ "trialDaysRemaining": {
+ "description": "Number of days remaining in the trial period.",
+ "type": "number",
+ "readOnly": true
+ },
+ "billingModel": {
+ "description": "Type of billing applied to the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "registrationTimestamp": {
+ "description": "First cluster sync timestamp.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "lastSyncTimestamp": {
+ "description": "Most recent cluster sync timestamp.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "lastBillingTimestamp": {
+ "description": "Most recent billing meter timestamp.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "serviceEndpoint": {
+ "description": "Region specific DataPath Endpoint of the cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resourceProviderObjectId": {
+ "description": "Object id of RP Service Principal",
+ "type": "string",
+ "readOnly": true
+ },
+ "secretsLocations": {
+ "type": "array",
+ "description": "List of secret locations.",
+ "items": {
+ "$ref": "#/definitions/SecretsLocationDetails"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "ClusterPatchProperties": {
+ "description": "Cluster properties.",
+ "type": "object",
+ "properties": {
+ "cloudManagementEndpoint": {
+ "description": "Endpoint configured for management from the Azure portal",
+ "type": "string"
+ },
+ "aadClientId": {
+ "description": "App id of cluster AAD identity.",
+ "type": "string"
+ },
+ "aadTenantId": {
+ "description": "Tenant id of cluster AAD identity.",
+ "type": "string"
+ },
+ "desiredProperties": {
+ "description": "Desired properties of the cluster.",
+ "$ref": "#/definitions/ClusterDesiredProperties"
+ }
+ }
+ },
+ "LogCollectionProperties": {
+ "description": "Log Collection properties of the cluster.",
+ "type": "object",
+ "properties": {
+ "fromDate": {
+ "description": "From DateTimeStamp from when logs need to be connected",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "toDate": {
+ "description": "To DateTimeStamp till when logs need to be connected",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "lastLogGenerated": {
+ "description": "Recent DateTimeStamp where logs are successfully generated",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "logCollectionSessionDetails": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LogCollectionSession"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "LogCollectionSession": {
+ "description": "Log Collection Session details of the cluster.",
+ "type": "object",
+ "properties": {
+ "logStartTime": {
+ "description": "Start Time of the logs when it was collected",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "logEndTime": {
+ "description": "End Time of the logs when it was collected",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "timeCollected": {
+ "description": "Duration of logs collected",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "logSize": {
+ "description": "Size of the logs collected",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "logCollectionStatus": {
+ "description": "LogCollection status",
+ "type": "string",
+ "enum": [
+ "None",
+ "InProgress",
+ "Failed",
+ "Succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "LogCollectionStatus",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "correlationId": {
+ "description": "CorrelationId of the log collection",
+ "type": "string",
+ "readOnly": true
+ },
+ "logCollectionJobType": {
+ "description": "LogCollection job type",
+ "type": "string",
+ "enum": [
+ "OnDemand",
+ "Scheduled"
+ ],
+ "x-ms-enum": {
+ "name": "LogCollectionJobType",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "endTimeCollected": {
+ "description": "End Time of the logs when it was collected",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "logCollectionError": {
+ "$ref": "#/definitions/LogCollectionError",
+ "readOnly": true
+ }
+ }
+ },
+ "AccessLevel": {
+ "description": "Remote Support Access Level",
+ "type": "string",
+ "enum": [
+ "Diagnostics",
+ "DiagnosticsAndRepair"
+ ],
+ "x-ms-enum": {
+ "name": "AccessLevel",
+ "modelAsString": true
+ }
+ },
+ "LogCollectionError": {
+ "description": "Log Collection Error details of the cluster.",
+ "type": "object",
+ "properties": {
+ "errorCode": {
+ "description": "Error Code of the log collection",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorMessage": {
+ "description": "Error Message of the log collection",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "RemoteSupportProperties": {
+ "description": "Remote Support properties of the cluster.",
+ "type": "object",
+ "properties": {
+ "accessLevel": {
+ "$ref": "#/definitions/AccessLevel",
+ "readOnly": true
+ },
+ "expirationTimeStamp": {
+ "description": "Expiration DateTimeStamp when Remote Support Access will be expired",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "remoteSupportType": {
+ "description": "Remote Support Type for cluster",
+ "type": "string",
+ "enum": [
+ "Enable",
+ "Revoke"
+ ],
+ "x-ms-enum": {
+ "name": "RemoteSupportType",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "remoteSupportNodeSettings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RemoteSupportNodeSettings"
+ },
+ "readOnly": true
+ },
+ "remoteSupportSessionDetails": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PerNodeRemoteSupportSession"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "RemoteSupportNodeSettings": {
+ "description": "Remote Support Node Settings of the cluster.",
+ "type": "object",
+ "properties": {
+ "arcResourceId": {
+ "description": "Arc ResourceId of the Node",
+ "type": "string",
+ "readOnly": true
+ },
+ "state": {
+ "description": "Remote Support Access Connection State on the Node",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdAt": {
+ "description": "Remote Support Enablement Request Created TimeStamp on the Node",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "updatedAt": {
+ "description": "Remote Support Enablement Request Updated TimeStamp on the Node",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "connectionStatus": {
+ "description": "Remote Support Access Connection Status on the Node",
+ "type": "string",
+ "readOnly": true
+ },
+ "connectionErrorMessage": {
+ "description": "Remote Support Access Connection Error Message on the Node",
+ "type": "string",
+ "readOnly": true
+ },
+ "transcriptLocation": {
+ "description": "Remote Support Transcript location on the node",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PerNodeRemoteSupportSession": {
+ "description": "Remote Support Node Session Details on the Node.",
+ "type": "object",
+ "properties": {
+ "sessionStartTime": {
+ "description": "Remote Support Session StartTime on the Node",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "sessionEndTime": {
+ "description": "Remote Support Session EndTime on the Node",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "nodeName": {
+ "description": "Name of the node",
+ "type": "string",
+ "readOnly": true
+ },
+ "duration": {
+ "description": "Duration of Remote Support Enablement",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "accessLevel": {
+ "$ref": "#/definitions/AccessLevel",
+ "readOnly": true
+ }
+ }
+ },
+ "SoftwareAssuranceProperties": {
+ "description": "Software Assurance properties of the cluster.",
+ "type": "object",
+ "properties": {
+ "softwareAssuranceStatus": {
+ "description": "Status of the Software Assurance for the cluster.",
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "SoftwareAssuranceStatus",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "softwareAssuranceIntent": {
+ "description": "Customer Intent for Software Assurance Benefit.",
+ "type": "string",
+ "enum": [
+ "Enable",
+ "Disable"
+ ],
+ "x-ms-enum": {
+ "name": "SoftwareAssuranceIntent",
+ "modelAsString": true
+ }
+ },
+ "lastUpdated": {
+ "description": "TimeStamp denoting the latest SA benefit applicability is validated.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "IsolatedVmAttestationConfiguration": {
+ "description": "Attestation configurations for isolated VM (e.g. TVM, CVM) of the cluster.",
+ "type": "object",
+ "properties": {
+ "attestationResourceId": {
+ "description": "Fully qualified Azure resource id of the Microsoft Azure attestation resource associated with this cluster.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Attestation/attestationProviders",
+ "scopes": [
+ "Tenant"
+ ]
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "relyingPartyServiceEndpoint": {
+ "description": "Region specific endpoint for relying party service.",
+ "type": "string",
+ "readOnly": true
+ },
+ "attestationServiceEndpoint": {
+ "description": "Region specific endpoint for Microsoft Azure Attestation service for the cluster",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterDesiredProperties": {
+ "description": "Desired properties of the cluster.",
+ "type": "object",
+ "properties": {
+ "windowsServerSubscription": {
+ "description": "Desired state of Windows Server Subscription.",
+ "type": "string",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "name": "WindowsServerSubscription",
+ "modelAsString": true
+ }
+ },
+ "diagnosticLevel": {
+ "description": "Desired level of diagnostic data emitted by the cluster.",
+ "type": "string",
+ "enum": [
+ "Off",
+ "Basic",
+ "Enhanced"
+ ],
+ "x-ms-enum": {
+ "name": "DiagnosticLevel",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ClusterReportedProperties": {
+ "description": "Properties reported by cluster agent.",
+ "type": "object",
+ "properties": {
+ "clusterName": {
+ "description": "Name of the on-prem cluster connected to this resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "Unique id generated by the on-prem cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "clusterVersion": {
+ "description": "Version of the cluster software.",
+ "type": "string",
+ "readOnly": true
+ },
+ "nodes": {
+ "description": "List of nodes reported by the cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClusterNode"
+ },
+ "readOnly": true
+ },
+ "lastUpdated": {
+ "description": "Last time the cluster reported the data.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "imdsAttestation": {
+ "description": "IMDS attestation status of the cluster.",
+ "type": "string",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "name": "ImdsAttestation",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "diagnosticLevel": {
+ "description": "Level of diagnostic data emitted by the cluster.",
+ "type": "string",
+ "enum": [
+ "Off",
+ "Basic",
+ "Enhanced"
+ ],
+ "x-ms-enum": {
+ "name": "DiagnosticLevel",
+ "modelAsString": true
+ }
+ },
+ "supportedCapabilities": {
+ "description": "Capabilities supported by the cluster.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "type": "string"
+ }
+ },
+ "clusterType": {
+ "description": "The node type of all the nodes of the cluster.",
+ "type": "string",
+ "enum": [
+ "FirstParty",
+ "ThirdParty"
+ ],
+ "x-ms-enum": {
+ "name": "ClusterNodeType",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "manufacturer": {
+ "description": "The manufacturer of all the nodes of the cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "oemActivation": {
+ "description": "OEM activation status of the cluster.",
+ "type": "string",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "name": "OemActivation",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "hardwareClass": {
+ "$ref": "./hciCommon.json#/definitions/HardwareClass",
+ "description": "Hardware class of the cluster.",
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterNode": {
+ "description": "Cluster node details.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the cluster node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Id of the node in the cluster.",
+ "type": "number",
+ "readOnly": true
+ },
+ "windowsServerSubscription": {
+ "description": "State of Windows Server Subscription.",
+ "type": "string",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "name": "WindowsServerSubscription",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "nodeType": {
+ "description": "Type of the cluster node hardware.",
+ "type": "string",
+ "enum": [
+ "FirstParty",
+ "ThirdParty"
+ ],
+ "x-ms-enum": {
+ "name": "ClusterNodeType",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "ehcResourceId": {
+ "description": "Edge Hardware Center Resource Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "manufacturer": {
+ "description": "Manufacturer of the cluster node hardware.",
+ "type": "string",
+ "readOnly": true
+ },
+ "model": {
+ "description": "Model name of the cluster node hardware.",
+ "type": "string",
+ "readOnly": true
+ },
+ "osName": {
+ "description": "Operating system running on the cluster node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "osVersion": {
+ "description": "Version of the operating system running on the cluster node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "osDisplayVersion": {
+ "description": "Display version of the operating system running on the cluster node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "serialNumber": {
+ "description": "Immutable id of the cluster node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "coreCount": {
+ "description": "Number of physical cores on the cluster node.",
+ "type": "number",
+ "readOnly": true
+ },
+ "memoryInGiB": {
+ "description": "Total available memory on the cluster node (in GiB).",
+ "type": "number",
+ "readOnly": true
+ },
+ "lastLicensingTimestamp": {
+ "description": "Most recent licensing timestamp.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "oemActivation": {
+ "description": "OEM activation status of the node.",
+ "type": "string",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "name": "OemActivation",
+ "modelAsString": true
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "RawCertificateData": {
+ "type": "object",
+ "properties": {
+ "certificates": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "UploadCertificateRequest": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RawCertificateData"
+ }
+ },
+ "additionalProperties": false
+ },
+ "LogCollectionRequestProperties": {
+ "description": "Properties for Log Collection Request",
+ "type": "object",
+ "properties": {
+ "fromDate": {
+ "description": "From DateTimeStamp from when logs need to be connected",
+ "type": "string",
+ "format": "date-time"
+ },
+ "toDate": {
+ "description": "To DateTimeStamp till when logs need to be connected",
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "required": [
+ "fromDate",
+ "toDate"
+ ],
+ "additionalProperties": false
+ },
+ "RemoteSupportRequestProperties": {
+ "description": "Properties for Remote Support Request",
+ "type": "object",
+ "properties": {
+ "accessLevel": {
+ "$ref": "#/definitions/AccessLevel",
+ "readOnly": true
+ },
+ "expirationTimeStamp": {
+ "description": "Expiration DateTimeStamp when Remote Support Access will be expired",
+ "type": "string",
+ "format": "date-time"
+ },
+ "remoteSupportType": {
+ "description": "Remote Support Type for cluster",
+ "type": "string",
+ "enum": [
+ "Enable",
+ "Revoke"
+ ],
+ "x-ms-enum": {
+ "name": "RemoteSupportType",
+ "modelAsString": true
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "SecretsLocationDetails": {
+ "type": "object",
+ "description": "Secrets location details",
+ "properties": {
+ "secretsType": {
+ "$ref": "#/definitions/SecretsType",
+ "description": "Type of secrets to store"
+ },
+ "secretsLocation": {
+ "type": "string",
+ "description": "secrets location"
+ }
+ },
+ "required": [
+ "secretsType",
+ "secretsLocation"
+ ]
+ },
+ "SecretsLocationsChangeRequest": {
+ "type": "object",
+ "description": "Update secrets locations change Request.",
+ "properties": {
+ "properties": {
+ "type": "array",
+ "description": "List of secret locations",
+ "items": {
+ "$ref": "#/definitions/SecretsLocationDetails"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "SecretsType": {
+ "type": "string",
+ "description": "Type of secrets to store",
+ "enum": [
+ "BackupSecrets"
+ ],
+ "x-ms-enum": {
+ "name": "SecretsType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "BackupSecrets",
+ "value": "BackupSecrets",
+ "description": "Backup secrets type"
+ }
+ ]
+ }
+ },
+ "SoftwareAssuranceChangeRequestProperties": {
+ "type": "object",
+ "properties": {
+ "softwareAssuranceIntent": {
+ "type": "string",
+ "enum": [
+ "Enable",
+ "Disable"
+ ],
+ "x-ms-enum": {
+ "name": "SoftwareAssuranceIntent",
+ "modelAsString": true
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "SoftwareAssuranceChangeRequest": {
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SoftwareAssuranceChangeRequestProperties"
+ }
+ },
+ "additionalProperties": false
+ },
+ "LogCollectionRequest": {
+ "description": "Log Collection Request",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/LogCollectionRequestProperties"
+ }
+ },
+ "additionalProperties": false
+ },
+ "RemoteSupportRequest": {
+ "description": "Remote Support Request",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RemoteSupportRequestProperties"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ClusterIdentityResponse": {
+ "description": "Cluster Identity details.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "Cluster identity properties.",
+ "$ref": "#/definitions/ClusterIdentityResponseProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ClusterIdentityResponseProperties": {
+ "type": "object",
+ "properties": {
+ "aadClientId": {
+ "type": "string"
+ },
+ "aadTenantId": {
+ "type": "string"
+ },
+ "aadServicePrincipalObjectId": {
+ "type": "string"
+ },
+ "aadApplicationObjectId": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "readOnly": true
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/deploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/deploymentSettings.json
new file mode 100644
index 000000000000..ab0c0b76ed9f
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/deploymentSettings.json
@@ -0,0 +1,1004 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Deployment Settings",
+ "version": "2024-12-01-preview",
+ "description": "Azure Stack HCI Deployment Settings."
+ },
+ "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": "DeploymentSettings"
+ }
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/deploymentSettings": {
+ "get": {
+ "operationId": "DeploymentSettings_ListByClusters",
+ "tags": [
+ "DeploymentSettings"
+ ],
+ "description": "List DeploymentSetting resources by Clusters",
+ "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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/DeploymentSettingListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Deployment Settings": {
+ "$ref": "./examples/ListDeploymentSettingsByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/deploymentSettings/{deploymentSettingsName}": {
+ "get": {
+ "operationId": "DeploymentSettings_Get",
+ "tags": [
+ "DeploymentSettings"
+ ],
+ "description": "Get a DeploymentSetting",
+ "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/ClusterNameParameter"
+ },
+ {
+ "name": "deploymentSettingsName",
+ "in": "path",
+ "description": "Name of Deployment Setting",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/DeploymentSetting"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Deployment Settings": {
+ "$ref": "./examples/GetDeploymentSettings.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "DeploymentSettings_CreateOrUpdate",
+ "tags": [
+ "DeploymentSettings"
+ ],
+ "description": "Create a DeploymentSetting",
+ "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/ClusterNameParameter"
+ },
+ {
+ "name": "deploymentSettingsName",
+ "in": "path",
+ "description": "Name of Deployment Setting",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DeploymentSetting"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'DeploymentSetting' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/DeploymentSetting"
+ }
+ },
+ "201": {
+ "description": "Resource 'DeploymentSetting' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/DeploymentSetting"
+ },
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create Deployment Settings": {
+ "$ref": "./examples/PutDeploymentSettings.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "DeploymentSettings_Delete",
+ "tags": [
+ "DeploymentSettings"
+ ],
+ "description": "Delete a DeploymentSetting",
+ "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/ClusterNameParameter"
+ },
+ {
+ "name": "deploymentSettingsName",
+ "in": "path",
+ "description": "Name of Deployment Setting",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Deployment Settings": {
+ "$ref": "./examples/DeleteDeploymentSettings.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "AdapterPropertyOverrides": {
+ "type": "object",
+ "description": "The AdapterPropertyOverrides of a cluster.",
+ "properties": {
+ "jumboPacket": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation."
+ },
+ "networkDirect": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation."
+ },
+ "networkDirectTechnology": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. Expected values are 'iWARP', 'RoCEv2', 'RoCE'"
+ }
+ }
+ },
+ "DeploymentCluster": {
+ "type": "object",
+ "description": "AzureStackHCI Cluster deployment properties.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The cluster name provided when preparing Active Directory."
+ },
+ "witnessType": {
+ "type": "string",
+ "description": "Use a cloud witness if you have internet access and if you use an Azure Storage account to provide a vote on cluster quorum. A cloud witness uses Azure Blob Storage to read or write a blob file and then uses it to arbitrate in split-brain resolution. Only allowed values are 'Cloud', 'FileShare'. "
+ },
+ "witnessPath": {
+ "type": "string",
+ "description": "Specify the fileshare path for the local witness for your Azure Stack HCI cluster."
+ },
+ "cloudAccountName": {
+ "type": "string",
+ "description": "Specify the Azure Storage account name for cloud witness for your Azure Stack HCI cluster."
+ },
+ "azureServiceEndpoint": {
+ "type": "string",
+ "description": "For Azure blob service endpoint type, select either Default or Custom domain. If you selected **Custom domain, enter the domain for the blob service in this format core.windows.net."
+ },
+ "hardwareClass": {
+ "$ref": "./hciCommon.json#/definitions/HardwareClass",
+ "description": "Hardware class of the cluster.",
+ "readOnly": true
+ }
+ }
+ },
+ "DeploymentConfiguration": {
+ "type": "object",
+ "description": "Deployment Configuration",
+ "properties": {
+ "version": {
+ "type": "string",
+ "description": "deployment template version "
+ },
+ "scaleUnits": {
+ "type": "array",
+ "description": "Scale units will contains list of deployment data",
+ "items": {
+ "$ref": "#/definitions/ScaleUnits"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "required": [
+ "scaleUnits"
+ ]
+ },
+ "DeploymentData": {
+ "type": "object",
+ "description": "The Deployment data of AzureStackHCI Cluster.",
+ "properties": {
+ "securitySettings": {
+ "$ref": "#/definitions/DeploymentSecuritySettings",
+ "description": "SecuritySettings to deploy AzureStackHCI Cluster."
+ },
+ "observability": {
+ "$ref": "#/definitions/Observability",
+ "description": "Observability config to deploy AzureStackHCI Cluster."
+ },
+ "cluster": {
+ "$ref": "#/definitions/DeploymentCluster",
+ "description": "Observability config to deploy AzureStackHCI Cluster."
+ },
+ "storage": {
+ "$ref": "#/definitions/Storage",
+ "description": "Storage config to deploy AzureStackHCI Cluster."
+ },
+ "namingPrefix": {
+ "type": "string",
+ "description": "naming prefix to deploy cluster.",
+ "pattern": "^[a-zA-Z0-9-]{1,8}$"
+ },
+ "domainFqdn": {
+ "type": "string",
+ "description": "FQDN to deploy cluster"
+ },
+ "infrastructureNetwork": {
+ "type": "array",
+ "description": "InfrastructureNetwork config to deploy AzureStackHCI Cluster.",
+ "items": {
+ "$ref": "#/definitions/InfrastructureNetwork"
+ },
+ "x-ms-identifiers": []
+ },
+ "physicalNodes": {
+ "type": "array",
+ "description": "list of physical nodes config to deploy AzureStackHCI Cluster.",
+ "items": {
+ "$ref": "#/definitions/PhysicalNodes"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "hostNetwork": {
+ "$ref": "#/definitions/HostNetwork",
+ "description": "HostNetwork config to deploy AzureStackHCI Cluster."
+ },
+ "sdnIntegration": {
+ "$ref": "#/definitions/SdnIntegration",
+ "description": "SDN Integration config to deploy AzureStackHCI Cluster."
+ },
+ "adouPath": {
+ "type": "string",
+ "description": "The path to the Active Directory Organizational Unit container object prepared for the deployment. "
+ },
+ "secretsLocation": {
+ "type": "string",
+ "description": "Azure keyvault endpoint. This property is deprecated from 2023-12-01-preview. Please use secrets property instead."
+ },
+ "secrets": {
+ "type": "array",
+ "description": "secrets used for cloud deployment.",
+ "items": {
+ "$ref": "./hciCommon.json#/definitions/EceDeploymentSecrets"
+ },
+ "x-ms-identifiers": [
+ "secretName"
+ ]
+ },
+ "optionalServices": {
+ "$ref": "#/definitions/OptionalServices",
+ "description": "OptionalServices config to deploy AzureStackHCI Cluster."
+ }
+ }
+ },
+ "DeploymentSetting": {
+ "type": "object",
+ "description": "Edge device resource",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/DeploymentSettingsProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "DeploymentSettingListResult": {
+ "type": "object",
+ "description": "The response of a DeploymentSetting list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The DeploymentSetting items on this page",
+ "items": {
+ "$ref": "#/definitions/DeploymentSetting"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "DeploymentSettingsProperties": {
+ "type": "object",
+ "description": "DeploymentSetting properties",
+ "properties": {
+ "provisioningState": {
+ "$ref": "./hciCommon.json#/definitions/ProvisioningState",
+ "description": "DeploymentSetting provisioning state",
+ "readOnly": true
+ },
+ "arcNodeResourceIds": {
+ "type": "array",
+ "description": "Azure resource ids of Arc machines to be part of cluster.",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-identifiers": []
+ },
+ "deploymentMode": {
+ "$ref": "./hciCommon.json#/definitions/DeploymentMode",
+ "description": "The deployment mode for cluster deployment."
+ },
+ "operationType": {
+ "type": "string",
+ "description": "The intended operation for a cluster.",
+ "enum": [
+ "ClusterProvisioning",
+ "ClusterUpgrade"
+ ],
+ "default": "ClusterProvisioning",
+ "x-ms-enum": {
+ "name": "OperationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "ClusterProvisioning",
+ "value": "ClusterProvisioning",
+ "description": "Cluster provisioning operation."
+ },
+ {
+ "name": "ClusterUpgrade",
+ "value": "ClusterUpgrade",
+ "description": "Cluster upgrade operation."
+ }
+ ]
+ }
+ },
+ "deploymentConfiguration": {
+ "$ref": "#/definitions/DeploymentConfiguration",
+ "description": "Scale units will contains list of deployment data",
+ "x-ms-identifiers": []
+ },
+ "reportedProperties": {
+ "$ref": "./hciCommon.json#/definitions/EceReportedProperties",
+ "description": "Deployment Status reported from cluster.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "arcNodeResourceIds",
+ "deploymentMode",
+ "deploymentConfiguration"
+ ]
+ },
+ "HostNetwork": {
+ "type": "object",
+ "description": "The HostNetwork of a cluster.",
+ "properties": {
+ "intents": {
+ "type": "array",
+ "description": "The network intents assigned to the network reference pattern used for the deployment. Each intent will define its own name, traffic type, adapter names, and overrides as recommended by your OEM.",
+ "items": {
+ "$ref": "#/definitions/Intents"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "storageNetworks": {
+ "type": "array",
+ "description": "List of StorageNetworks config to deploy AzureStackHCI Cluster.",
+ "items": {
+ "$ref": "#/definitions/StorageNetworks"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "storageConnectivitySwitchless": {
+ "type": "boolean",
+ "description": "Defines how the storage adapters between nodes are connected either switch or switch less..",
+ "default": false
+ },
+ "enableStorageAutoIp": {
+ "type": "boolean",
+ "description": "Optional parameter required only for 3 Nodes Switchless deployments. This allows users to specify IPs and Mask for Storage NICs when Network ATC is not assigning the IPs for storage automatically.",
+ "default": false
+ }
+ }
+ },
+ "InfrastructureNetwork": {
+ "type": "object",
+ "description": "The InfrastructureNetwork of a AzureStackHCI Cluster.",
+ "properties": {
+ "subnetMask": {
+ "type": "string",
+ "description": "Subnet mask that matches the provided IP address space."
+ },
+ "gateway": {
+ "type": "string",
+ "description": "Default gateway that should be used for the provided IP address space."
+ },
+ "ipPools": {
+ "type": "array",
+ "description": "Range of IP addresses from which addresses are allocated for nodes within a subnet.",
+ "items": {
+ "$ref": "#/definitions/IpPools"
+ },
+ "x-ms-identifiers": []
+ },
+ "dnsServers": {
+ "type": "array",
+ "description": "IPv4 address of the DNS servers in your environment.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "useDhcp": {
+ "type": "boolean",
+ "description": "Allows customers to use DHCP for Hosts and Cluster IPs. If not declared, the deployment will default to static IPs. When true, GW and DNS servers are not required"
+ }
+ }
+ },
+ "Intents": {
+ "type": "object",
+ "description": "The Intents of a cluster.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of the network intent you wish to create."
+ },
+ "trafficType": {
+ "type": "array",
+ "description": "List of network traffic types. Only allowed values are 'Compute', 'Storage', 'Management'.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "adapter": {
+ "type": "array",
+ "description": "Array of network interfaces used for the network intent.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "overrideVirtualSwitchConfiguration": {
+ "type": "boolean",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "default": false
+ },
+ "virtualSwitchConfigurationOverrides": {
+ "$ref": "#/definitions/VirtualSwitchConfigurationOverrides",
+ "description": "Set virtualSwitch ConfigurationOverrides for cluster."
+ },
+ "overrideQosPolicy": {
+ "type": "boolean",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "default": false
+ },
+ "qosPolicyOverrides": {
+ "$ref": "#/definitions/QosPolicyOverrides",
+ "description": "Set QoS PolicyOverrides for cluster."
+ },
+ "overrideAdapterProperty": {
+ "type": "boolean",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "default": false
+ },
+ "adapterPropertyOverrides": {
+ "$ref": "#/definitions/AdapterPropertyOverrides",
+ "description": "Set Adapter PropertyOverrides for cluster."
+ }
+ }
+ },
+ "IpPools": {
+ "type": "object",
+ "description": "The dnsServers of a device.",
+ "properties": {
+ "startingAddress": {
+ "type": "string",
+ "description": "Starting IP address for the management network. A minimum of six free, contiguous IPv4 addresses (excluding your host IPs) are needed for infrastructure services such as clustering."
+ },
+ "endingAddress": {
+ "type": "string",
+ "description": "Ending IP address for the management network. A minimum of six free, contiguous IPv4 addresses (excluding your host IPs) are needed for infrastructure services such as clustering."
+ }
+ }
+ },
+ "NetworkController": {
+ "type": "object",
+ "description": "network controller config for SDN Integration to deploy AzureStackHCI Cluster.",
+ "properties": {
+ "macAddressPoolStart": {
+ "type": "string",
+ "description": "macAddressPoolStart of network controller used for SDN Integration."
+ },
+ "macAddressPoolStop": {
+ "type": "string",
+ "description": "macAddressPoolStop of network controller used for SDN Integration."
+ },
+ "networkVirtualizationEnabled": {
+ "type": "boolean",
+ "description": "NetworkVirtualizationEnabled of network controller used for SDN Integration."
+ }
+ }
+ },
+ "Observability": {
+ "type": "object",
+ "description": "The Observability of AzureStackHCI Cluster.",
+ "properties": {
+ "streamingDataClient": {
+ "type": "boolean",
+ "description": "Enables telemetry data to be sent to Microsoft",
+ "default": true
+ },
+ "euLocation": {
+ "type": "boolean",
+ "description": "Location of your cluster. The log and diagnostic data is sent to the appropriate diagnostics servers depending upon where your cluster resides. Setting this to false results in all data sent to Microsoft to be stored outside of the EU.",
+ "default": false
+ },
+ "episodicDataUpload": {
+ "type": "boolean",
+ "description": "When set to true, collects log data to facilitate quicker issue resolution.",
+ "default": true
+ }
+ }
+ },
+ "OptionalServices": {
+ "type": "object",
+ "description": "The OptionalServices of AzureStackHCI Cluster.",
+ "properties": {
+ "customLocation": {
+ "type": "string",
+ "description": "The name of custom location."
+ }
+ }
+ },
+ "PhysicalNodes": {
+ "type": "object",
+ "description": "The PhysicalNodes of a cluster.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "NETBIOS name of each physical server on your Azure Stack HCI cluster."
+ },
+ "ipv4Address": {
+ "type": "string",
+ "description": "The IPv4 address assigned to each physical server on your Azure Stack HCI cluster."
+ }
+ }
+ },
+ "QosPolicyOverrides": {
+ "type": "object",
+ "description": "The QoSPolicyOverrides of a cluster.",
+ "properties": {
+ "priorityValue8021Action_Cluster": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation."
+ },
+ "priorityValue8021Action_SMB": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation."
+ },
+ "bandwidthPercentage_SMB": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation."
+ }
+ }
+ },
+ "SbePartnerInfo": {
+ "type": "object",
+ "description": "The solution builder extension (SBE) partner deployment info for cluster.",
+ "properties": {
+ "sbeDeploymentInfo": {
+ "$ref": "#/definitions/SbeDeploymentInfo",
+ "description": "SBE package and manifest information for the solution Builder Extension staged for AzureStackHCI cluster deployment."
+ },
+ "partnerProperties": {
+ "type": "array",
+ "description": "List of SBE partner properties for AzureStackHCI cluster deployment.",
+ "items": {
+ "$ref": "#/definitions/SbePartnerProperties"
+ },
+ "x-ms-identifiers": []
+ },
+ "credentialList": {
+ "type": "array",
+ "description": "SBE credentials list for AzureStackHCI cluster deployment.",
+ "items": {
+ "$ref": "#/definitions/SbeCredentials"
+ },
+ "x-ms-identifiers": [
+ "secretName"
+ ]
+ }
+ }
+ },
+ "SbeDeploymentInfo": {
+ "type": "object",
+ "description": "Solution builder extension (SBE) package and manifest information for the solution builder extension staged for AzureStackHCI cluster deployment.",
+ "properties": {
+ "version": {
+ "type": "string",
+ "description": "SBE package version."
+ },
+ "family": {
+ "type": "string",
+ "description": "SBE family name."
+ },
+ "publisher": {
+ "type": "string",
+ "description": "SBE manifest publisher."
+ },
+ "sbeManifestSource": {
+ "type": "string",
+ "description": "SBE Manifest Source."
+ },
+ "sbeManifestCreationDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "SBE Manifest Creation Date."
+ }
+ }
+ },
+ "SbePartnerProperties": {
+ "type": "object",
+ "description": "Solution builder extension (SBE) partner properties object.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "SBE partner property name."
+ },
+ "value": {
+ "type": "string",
+ "description": "SBE partner property value."
+ }
+ }
+ },
+ "SbeCredentials": {
+ "type": "object",
+ "description": "secrets used for solution builder extension (SBE) partner extensibility.",
+ "properties": {
+ "secretName": {
+ "type": "string",
+ "description": "secret name stored in keyvault."
+ },
+ "eceSecretName": {
+ "type": "string",
+ "description": "secret name expected for Enterprise Cloud Engine (ECE)."
+ },
+ "secretLocation": {
+ "type": "string",
+ "format": "uri",
+ "description": "secret URI stored in keyvault."
+ }
+ }
+ },
+ "ScaleUnits": {
+ "type": "object",
+ "description": "Scale units will contains list of deployment data",
+ "properties": {
+ "deploymentData": {
+ "$ref": "#/definitions/DeploymentData",
+ "description": "Deployment Data to deploy AzureStackHCI Cluster."
+ },
+ "sbePartnerInfo": {
+ "$ref": "#/definitions/SbePartnerInfo",
+ "description": "Solution builder extension (SBE) partner properties"
+ }
+ },
+ "required": [
+ "deploymentData"
+ ],
+ "externalDocs": {
+ "description": "Deploy Azure Stack HCI using an existing configuration file",
+ "url": "https://learn.microsoft.com/en-us/azure-stack/hci/deploy/deployment-tool-existing-file"
+ }
+ },
+ "SdnIntegration": {
+ "type": "object",
+ "description": "SDN Integration config to deploy AzureStackHCI Cluster.",
+ "properties": {
+ "networkController": {
+ "$ref": "#/definitions/NetworkController",
+ "description": "network controller config for SDN Integration to deploy AzureStackHCI Cluster."
+ }
+ }
+ },
+ "DeploymentSecuritySettings": {
+ "type": "object",
+ "description": "The SecuritySettings of AzureStackHCI Cluster.",
+ "properties": {
+ "hvciProtection": {
+ "type": "boolean",
+ "description": "By default, Hypervisor-protected Code Integrity is enabled on your Azure HCI cluster.",
+ "default": true
+ },
+ "drtmProtection": {
+ "type": "boolean",
+ "description": "By default, Secure Boot is enabled on your Azure HCI cluster. This setting is hardware dependent.",
+ "default": true
+ },
+ "driftControlEnforced": {
+ "type": "boolean",
+ "description": "When set to true, the security baseline is re-applied regularly.",
+ "default": true
+ },
+ "credentialGuardEnforced": {
+ "type": "boolean",
+ "description": "When set to true, Credential Guard is enabled.",
+ "default": false
+ },
+ "smbSigningEnforced": {
+ "type": "boolean",
+ "description": "When set to true, the SMB default instance requires sign in for the client and server services.",
+ "default": true
+ },
+ "smbClusterEncryption": {
+ "type": "boolean",
+ "description": "When set to true, cluster east-west traffic is encrypted.",
+ "default": false
+ },
+ "sideChannelMitigationEnforced": {
+ "type": "boolean",
+ "description": "When set to true, all the side channel mitigations are enabled",
+ "default": true
+ },
+ "bitlockerBootVolume": {
+ "type": "boolean",
+ "description": "When set to true, BitLocker XTS_AES 256-bit encryption is enabled for all data-at-rest on the OS volume of your Azure Stack HCI cluster. This setting is TPM-hardware dependent. ",
+ "default": true
+ },
+ "bitlockerDataVolumes": {
+ "type": "boolean",
+ "description": "When set to true, BitLocker XTS-AES 256-bit encryption is enabled for all data-at-rest on your Azure Stack HCI cluster shared volumes.",
+ "default": true
+ },
+ "wdacEnforced": {
+ "type": "boolean",
+ "description": "WDAC is enabled by default and limits the applications and the code that you can run on your Azure Stack HCI cluster.",
+ "default": true
+ }
+ }
+ },
+ "Storage": {
+ "type": "object",
+ "description": "The Storage config of AzureStackHCI Cluster.",
+ "properties": {
+ "configurationMode": {
+ "type": "string",
+ "description": "By default, this mode is set to Express and your storage is configured as per best practices based on the number of nodes in the cluster. Allowed values are 'Express','InfraOnly', 'KeepStorage'",
+ "default": "Express"
+ }
+ }
+ },
+ "StorageAdapterIPInfo": {
+ "type": "object",
+ "description": "The StorageAdapter physical nodes of a cluster.",
+ "properties": {
+ "physicalNode": {
+ "type": "string",
+ "description": "storage adapter physical node name."
+ },
+ "ipv4Address": {
+ "type": "string",
+ "description": "The IPv4 address assigned to each storage adapter physical node on your Azure Stack HCI cluster."
+ },
+ "subnetMask": {
+ "type": "string",
+ "description": "The SubnetMask address assigned to each storage adapter physical node on your Azure Stack HCI cluster."
+ }
+ }
+ },
+ "StorageNetworks": {
+ "type": "object",
+ "description": "The StorageNetworks of a cluster.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of the storage network."
+ },
+ "networkAdapterName": {
+ "type": "string",
+ "description": "Name of the storage network adapter."
+ },
+ "vlanId": {
+ "type": "string",
+ "description": "ID specified for the VLAN storage network. This setting is applied to the network interfaces that route the storage and VM migration traffic. "
+ },
+ "storageAdapterIPInfo": {
+ "type": "array",
+ "description": "List of Storage adapter physical nodes config to deploy AzureStackHCI Cluster.",
+ "items": {
+ "$ref": "#/definitions/StorageAdapterIPInfo"
+ },
+ "x-ms-identifiers": [
+ "physicalNode"
+ ]
+ }
+ }
+ },
+ "VirtualSwitchConfigurationOverrides": {
+ "type": "object",
+ "description": "The VirtualSwitchConfigurationOverrides of a cluster.",
+ "properties": {
+ "enableIov": {
+ "type": "string",
+ "description": "Enable IoV for Virtual Switch"
+ },
+ "loadBalancingAlgorithm": {
+ "type": "string",
+ "description": "Load Balancing Algorithm for Virtual Switch"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDeviceJobs.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDeviceJobs.json
new file mode 100644
index 000000000000..d2e92e0aebe1
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDeviceJobs.json
@@ -0,0 +1,1150 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft.AzureStackHCI",
+ "version": "2024-12-01-preview",
+ "description": "A EdgeDevice"
+ },
+ "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": "EdgeDeviceJobs"
+ }
+ ],
+ "paths": {
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/edgeDevices/{edgeDeviceName}/jobs": {
+ "get": {
+ "operationId": "EdgeDeviceJobs_ListByEdgeDevice",
+ "tags": [
+ "EdgeDeviceJobs"
+ ],
+ "description": "List EdgeDeviceJob resources by EdgeDevice",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "The name of the EdgeDevice",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/EdgeDeviceJobListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "EdgeDeviceJobs_ListByEdgeDevice": {
+ "$ref": "./examples/EdgeDeviceJobs_ListByEdgeDevice.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/edgeDevices/{edgeDeviceName}/jobs/{jobsName}": {
+ "get": {
+ "operationId": "EdgeDeviceJobs_Get",
+ "tags": [
+ "EdgeDeviceJobs"
+ ],
+ "description": "Get a EdgeDeviceJob",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "The name of the EdgeDevice",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "jobsName",
+ "in": "path",
+ "description": "Name of EdgeDevice Job",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/EdgeDeviceJob"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "EdgeDeviceJobs_Get_RemoteSupport": {
+ "$ref": "./examples/EdgeDeviceJobs_Get_RemoteSupport.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "EdgeDeviceJobs_CreateOrUpdate",
+ "tags": [
+ "EdgeDeviceJobs"
+ ],
+ "description": "Create a EdgeDeviceJob",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "The name of the EdgeDevice",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "jobsName",
+ "in": "path",
+ "description": "Name of EdgeDevice Job",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EdgeDeviceJob"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'EdgeDeviceJob' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/EdgeDeviceJob"
+ }
+ },
+ "201": {
+ "description": "Resource 'EdgeDeviceJob' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/EdgeDeviceJob"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "A link to the status monitor"
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "EdgeDeviceJobs_CreateOrUpdate_CollectLog": {
+ "$ref": "./examples/EdgeDeviceJobs_CreateOrUpdate_CollectLog.json"
+ },
+ "EdgeDeviceJobs_CreateOrUpdate_RemoteSupport": {
+ "$ref": "./examples/EdgeDeviceJobs_CreateOrUpdate_RemoteSupport.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "EdgeDeviceJobs_Delete",
+ "tags": [
+ "EdgeDeviceJobs"
+ ],
+ "description": "Delete a EdgeDeviceJob",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "The name of the EdgeDevice",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "jobsName",
+ "in": "path",
+ "description": "Name of EdgeDevice Job",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "EdgeDeviceJobs_Delete": {
+ "$ref": "./examples/EdgeDeviceJobs_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "CollectLogJobProperties": {
+ "type": "object",
+ "description": "Represents the properties of a log collection job.",
+ "properties": {
+ "fromDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "From date for log collection."
+ },
+ "toDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "To date for log collection."
+ },
+ "lastLogGenerated": {
+ "type": "string",
+ "format": "date-time",
+ "description": "To date for log collection.",
+ "readOnly": true
+ },
+ "reportedProperties": {
+ "$ref": "#/definitions/LogCollectionReportedProperties",
+ "description": "log collection job reported properties.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "fromDate",
+ "toDate"
+ ]
+ },
+ "DeploymentMode": {
+ "type": "string",
+ "description": "Deployment mode to trigger job.",
+ "enum": [
+ "Validate",
+ "Deploy"
+ ],
+ "x-ms-enum": {
+ "name": "DeploymentMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Validate",
+ "value": "Validate",
+ "description": "Validate ECE action deployment for a cluster."
+ },
+ {
+ "name": "Deploy",
+ "value": "Deploy",
+ "description": "Deploy ECE action deployment for a cluster."
+ }
+ ]
+ }
+ },
+ "DeviceLogCollectionStatus": {
+ "type": "string",
+ "description": "Represents the status of a log collection operation.",
+ "enum": [
+ "NotStarted",
+ "Running",
+ "Failed",
+ "Succeeded",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "DeviceLogCollectionStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "NotStarted",
+ "value": "NotStarted",
+ "description": "Log collection operation has not been initiated."
+ },
+ {
+ "name": "Running",
+ "value": "Running",
+ "description": "Indicates that the log collection operation is currently running."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "Indicates that the log collection operation has failed."
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "Indicates that the log collection operation has completed successfully."
+ },
+ {
+ "name": "Canceled",
+ "value": "Canceled",
+ "description": "Indicates that the log collection operation has completed successfully."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "EdgeDeviceJob": {
+ "type": "object",
+ "description": "EdgeDevice Jobs resource",
+ "properties": {
+ "kind": {
+ "$ref": "./hciCommon.json#/definitions/EdgeDeviceKind",
+ "description": "Edge Solution type to support polymorphic resource.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "EdgeDeviceJobListResult": {
+ "type": "object",
+ "description": "The response of a EdgeDeviceJob list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The EdgeDeviceJob items on this page",
+ "items": {
+ "$ref": "#/definitions/EdgeDeviceJob"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "EdgeDeviceJobProperties": {
+ "type": "object",
+ "description": "Edge device job properties",
+ "properties": {
+ "deploymentMode": {
+ "$ref": "#/definitions/DeploymentMode",
+ "description": "Deployment mode to trigger job."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Job provisioning state",
+ "readOnly": true
+ },
+ "jobId": {
+ "type": "string",
+ "description": "Unique, immutable job id.",
+ "readOnly": true
+ },
+ "startTimeUtc": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The UTC date and time at which the job started.",
+ "readOnly": true
+ },
+ "endTimeUtc": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The UTC date and time at which the job completed.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/JobStatus",
+ "description": "Status of Edge device job.",
+ "readOnly": true
+ }
+ }
+ },
+ "EdgeDeviceJobType": {
+ "type": "string",
+ "description": "Common Job Types supported.",
+ "enum": [
+ "CollectLog",
+ "RemoteSupport"
+ ],
+ "x-ms-enum": {
+ "name": "EdgeDeviceJobType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "CollectLog",
+ "value": "CollectLog",
+ "description": "Job to collect logs from the device."
+ },
+ {
+ "name": "RemoteSupport",
+ "value": "RemoteSupport",
+ "description": "Job to provide remote support to the device."
+ }
+ ]
+ }
+ },
+ "EdgeSolutionType": {
+ "type": "string",
+ "description": "Edge solution type.",
+ "enum": [
+ "WindowsServer"
+ ],
+ "x-ms-enum": {
+ "name": "EdgeSolutionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "WindowsServer",
+ "value": "WindowsServer",
+ "description": "Edge solution for Windows based edge devices."
+ }
+ ]
+ }
+ },
+ "HciCollectLogJobProperties": {
+ "type": "object",
+ "description": "Represents the properties of an HCI Collect Log job.",
+ "properties": {
+ "fromDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "From date for log collection."
+ },
+ "toDate": {
+ "type": "string",
+ "format": "date-time",
+ "description": "To date for log collection."
+ },
+ "lastLogGenerated": {
+ "type": "string",
+ "format": "date-time",
+ "description": "To date for log collection.",
+ "readOnly": true
+ },
+ "reportedProperties": {
+ "$ref": "#/definitions/LogCollectionReportedProperties",
+ "description": "log collection job reported properties.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "fromDate",
+ "toDate"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/HciEdgeDeviceJobProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "CollectLog"
+ },
+ "HciEdgeDeviceJob": {
+ "type": "object",
+ "description": "Edge device job for Azure Stack HCI solution.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HciEdgeDeviceJobProperties",
+ "description": "HCI Edge device job properties"
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/EdgeDeviceJob"
+ }
+ ],
+ "x-ms-discriminator-value": "HCI"
+ },
+ "HciEdgeDeviceJobProperties": {
+ "type": "object",
+ "description": "HCI Edge device job properties",
+ "properties": {
+ "deploymentMode": {
+ "$ref": "#/definitions/DeploymentMode",
+ "description": "Deployment mode to trigger job."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Job provisioning state",
+ "readOnly": true
+ },
+ "jobId": {
+ "type": "string",
+ "description": "Unique, immutable job id.",
+ "readOnly": true
+ },
+ "startTimeUtc": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The UTC date and time at which the job started.",
+ "readOnly": true
+ },
+ "endTimeUtc": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The UTC date and time at which the job completed.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/JobStatus",
+ "description": "Status of Edge device job.",
+ "readOnly": true
+ },
+ "jobType": {
+ "$ref": "#/definitions/HciEdgeDeviceJobType",
+ "description": "Job Type to support polymorphic resource.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "discriminator": "jobType",
+ "required": [
+ "jobType"
+ ]
+ },
+ "HciEdgeDeviceJobType": {
+ "type": "string",
+ "description": "Job Type supported.",
+ "enum": [
+ "CollectLog",
+ "RemoteSupport"
+ ],
+ "x-ms-enum": {
+ "name": "HciEdgeDeviceJobType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "CollectLog",
+ "value": "CollectLog",
+ "description": "Job to collect logs from the device."
+ },
+ {
+ "name": "RemoteSupport",
+ "value": "RemoteSupport",
+ "description": "Job to provide remote support to the device."
+ }
+ ]
+ }
+ },
+ "HciRemoteSupportJobProperties": {
+ "type": "object",
+ "description": "Represents the properties of a remote support job for HCI.",
+ "properties": {
+ "accessLevel": {
+ "$ref": "#/definitions/RemoteSupportAccessLevel",
+ "description": "Remote support access level."
+ },
+ "expirationTimestamp": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Remote support expiration timestamp."
+ },
+ "type": {
+ "$ref": "#/definitions/RemoteSupportType",
+ "description": "Remote support type."
+ },
+ "reportedProperties": {
+ "$ref": "#/definitions/RemoteSupportJobReportedProperties",
+ "description": "log collection job reported properties.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "accessLevel",
+ "expirationTimestamp",
+ "type"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/HciEdgeDeviceJobProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "RemoteSupport"
+ },
+ "JobReportedProperties": {
+ "type": "object",
+ "description": "Reported Properties for job triggered from cloud.",
+ "properties": {
+ "percentComplete": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The percentage of the job that is complete.",
+ "readOnly": true
+ },
+ "validationStatus": {
+ "$ref": "./hciCommon.json#/definitions/EceActionStatus",
+ "description": "Validation status of job.",
+ "readOnly": true
+ },
+ "deploymentStatus": {
+ "$ref": "./hciCommon.json#/definitions/EceActionStatus",
+ "description": "Deployment status of job.",
+ "readOnly": true
+ }
+ }
+ },
+ "JobStatus": {
+ "type": "string",
+ "description": "Represents the various statuses a job can have throughout its lifecycle.",
+ "enum": [
+ "NotSpecified",
+ "ValidationInProgress",
+ "ValidationSuccess",
+ "ValidationFailed",
+ "DeploymentInProgress",
+ "DeploymentFailed",
+ "DeploymentSuccess",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Paused",
+ "Scheduled"
+ ],
+ "x-ms-enum": {
+ "name": "JobStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "NotSpecified",
+ "value": "NotSpecified",
+ "description": "The job status has not been specified."
+ },
+ {
+ "name": "ValidationInProgress",
+ "value": "ValidationInProgress",
+ "description": "The job is currently undergoing validation."
+ },
+ {
+ "name": "ValidationSuccess",
+ "value": "ValidationSuccess",
+ "description": "The job has successfully passed validation."
+ },
+ {
+ "name": "ValidationFailed",
+ "value": "ValidationFailed",
+ "description": "The job has failed validation."
+ },
+ {
+ "name": "DeploymentInProgress",
+ "value": "DeploymentInProgress",
+ "description": "The job's deployment is currently in progress."
+ },
+ {
+ "name": "DeploymentFailed",
+ "value": "DeploymentFailed",
+ "description": "The job's deployment has failed."
+ },
+ {
+ "name": "DeploymentSuccess",
+ "value": "DeploymentSuccess",
+ "description": "The job has been successfully deployed."
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "The job has succeeded."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "The job has failed."
+ },
+ {
+ "name": "Canceled",
+ "value": "Canceled",
+ "description": "The job has been canceled."
+ },
+ {
+ "name": "Paused",
+ "value": "Paused",
+ "description": "The job is paused."
+ },
+ {
+ "name": "Scheduled",
+ "value": "Scheduled",
+ "description": "The job is scheduled to run."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "LogCollectionReportedProperties": {
+ "type": "object",
+ "description": "Represents the reported properties of a log collection job.",
+ "properties": {
+ "percentComplete": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The percentage of the job that is complete.",
+ "readOnly": true
+ },
+ "validationStatus": {
+ "$ref": "./hciCommon.json#/definitions/EceActionStatus",
+ "description": "Validation status of job.",
+ "readOnly": true
+ },
+ "deploymentStatus": {
+ "$ref": "./hciCommon.json#/definitions/EceActionStatus",
+ "description": "Deployment status of job.",
+ "readOnly": true
+ },
+ "logCollectionSessionDetails": {
+ "type": "array",
+ "description": "Details of the log collection session.",
+ "items": {
+ "$ref": "#/definitions/LogCollectionJobSession"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "correlationId"
+ ]
+ }
+ }
+ },
+ "LogCollectionJobSession": {
+ "type": "object",
+ "description": "Represents a session for collecting logs from an edge device.",
+ "properties": {
+ "startTime": {
+ "type": "string",
+ "description": "The timestamp when log collection started, in ISO 8601 format.",
+ "readOnly": true
+ },
+ "endTime": {
+ "type": "string",
+ "description": "The timestamp when log collection ended, in ISO 8601 format.",
+ "readOnly": true
+ },
+ "timeCollected": {
+ "type": "string",
+ "description": "The total time logs were collected for, in ISO 8601 duration format.",
+ "readOnly": true
+ },
+ "logSize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The size of the collected logs in bytes.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/DeviceLogCollectionStatus",
+ "description": "The status of the log collection session.",
+ "readOnly": true
+ },
+ "correlationId": {
+ "type": "string",
+ "description": "A unique identifier for correlating this log collection session with other operations or sessions.",
+ "readOnly": true
+ }
+ }
+ },
+ "LogCollectionStatus": {
+ "type": "string",
+ "description": "Represents the status of a log collection operation.",
+ "enum": [
+ "None",
+ "InProgress",
+ "Failed",
+ "Succeeded"
+ ],
+ "x-ms-enum": {
+ "name": "LogCollectionStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "None",
+ "value": "None",
+ "description": "Indicates that no log collection operation has been initiated."
+ },
+ {
+ "name": "InProgress",
+ "value": "InProgress",
+ "description": "Indicates that the log collection operation is currently in progress."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "Indicates that the log collection operation has failed."
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "Indicates that the log collection operation has completed successfully."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "The provisioning state of a resource.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "NotSpecified",
+ "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": "NotSpecified",
+ "value": "NotSpecified",
+ "description": "The resource provision state is not specified"
+ },
+ {
+ "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"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "RemoteSupportAccessLevel": {
+ "type": "string",
+ "description": "Defines the level of remote support access granted.",
+ "enum": [
+ "None",
+ "Diagnostics",
+ "DiagnosticsAndRepair"
+ ],
+ "x-ms-enum": {
+ "name": "RemoteSupportAccessLevel",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "None",
+ "value": "None",
+ "description": "No remote support access is granted."
+ },
+ {
+ "name": "Diagnostics",
+ "value": "Diagnostics",
+ "description": "Access is limited to diagnostics information only."
+ },
+ {
+ "name": "DiagnosticsAndRepair",
+ "value": "DiagnosticsAndRepair",
+ "description": "Access includes diagnostics information and the ability to perform repairs."
+ }
+ ]
+ }
+ },
+ "RemoteSupportJobProperties": {
+ "type": "object",
+ "description": "Represents the properties of a remote support job.",
+ "properties": {
+ "accessLevel": {
+ "$ref": "#/definitions/RemoteSupportAccessLevel",
+ "description": "Remote support access level."
+ },
+ "expirationTimestamp": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Remote support expiration timestamp."
+ },
+ "type": {
+ "$ref": "#/definitions/RemoteSupportType",
+ "description": "Remote support type."
+ },
+ "reportedProperties": {
+ "$ref": "#/definitions/RemoteSupportJobReportedProperties",
+ "description": "log collection job reported properties.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "accessLevel",
+ "expirationTimestamp",
+ "type"
+ ]
+ },
+ "RemoteSupportJobNodeSettings": {
+ "type": "object",
+ "description": "Represents the settings of a remote support node.",
+ "properties": {
+ "state": {
+ "type": "string",
+ "description": "The state of the remote support node.",
+ "readOnly": true
+ },
+ "createdAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp when the node settings were created, in UTC.",
+ "readOnly": true
+ },
+ "updatedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp when the node settings were last updated, in UTC.",
+ "readOnly": true
+ },
+ "connectionStatus": {
+ "type": "string",
+ "description": "The current connection status of the remote support session.",
+ "readOnly": true
+ },
+ "connectionErrorMessage": {
+ "type": "string",
+ "description": "The error message, if any, from the last connection attempt.",
+ "readOnly": true
+ }
+ }
+ },
+ "RemoteSupportJobReportedProperties": {
+ "type": "object",
+ "description": "Represents the reported properties of a remote support job.",
+ "properties": {
+ "percentComplete": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The percentage of the job that is complete.",
+ "readOnly": true
+ },
+ "validationStatus": {
+ "$ref": "./hciCommon.json#/definitions/EceActionStatus",
+ "description": "Validation status of job.",
+ "readOnly": true
+ },
+ "deploymentStatus": {
+ "$ref": "./hciCommon.json#/definitions/EceActionStatus",
+ "description": "Deployment status of job.",
+ "readOnly": true
+ },
+ "nodeSettings": {
+ "$ref": "#/definitions/RemoteSupportJobNodeSettings",
+ "description": "Optional settings for configuring the node for remote support.",
+ "readOnly": true
+ },
+ "sessionDetails": {
+ "type": "array",
+ "description": "Details of the remote support session.",
+ "items": {
+ "$ref": "#/definitions/RemoteSupportSession"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "sessionId"
+ ]
+ }
+ }
+ },
+ "RemoteSupportSession": {
+ "type": "object",
+ "description": "Represents a remote support session.",
+ "properties": {
+ "sessionId": {
+ "type": "string",
+ "description": "Unique session Id.",
+ "readOnly": true
+ },
+ "sessionStartTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The start time of the remote support session, in UTC.",
+ "readOnly": true
+ },
+ "sessionEndTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The end time of the remote support session, in UTC.",
+ "readOnly": true
+ },
+ "accessLevel": {
+ "$ref": "#/definitions/RemoteSupportAccessLevel",
+ "description": "The level of access granted during the remote support session.",
+ "readOnly": true
+ },
+ "transcriptLocation": {
+ "type": "string",
+ "description": "The location where the session transcript is stored.",
+ "readOnly": true
+ }
+ }
+ },
+ "RemoteSupportType": {
+ "type": "string",
+ "description": "Defines the type of remote support action to be performed on an edge device.",
+ "enum": [
+ "Enable",
+ "Revoke"
+ ],
+ "x-ms-enum": {
+ "name": "RemoteSupportType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enable",
+ "value": "Enable",
+ "description": "Enables remote support for the edge device."
+ },
+ {
+ "name": "Revoke",
+ "value": "Revoke",
+ "description": "Revokes previously granted remote support access for the edge device."
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "Azure.ResourceManager.ResourceUriParameter": {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource manager identifier of the resource.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDevices.json
new file mode 100644
index 000000000000..23c9553c608b
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/edgeDevices.json
@@ -0,0 +1,1296 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Edge Devices",
+ "version": "2024-12-01-preview",
+ "description": "Azure Arc-enabled Edge Device."
+ },
+ "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": "EdgeDevices"
+ }
+ ],
+ "paths": {
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/edgeDevices": {
+ "get": {
+ "operationId": "EdgeDevices_List",
+ "tags": [
+ "EdgeDevices"
+ ],
+ "description": "List EdgeDevice resources by parent",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/EdgeDeviceListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Edge Devices": {
+ "$ref": "./examples/ListEdgeDevices.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/edgeDevices/{edgeDeviceName}": {
+ "get": {
+ "operationId": "EdgeDevices_Get",
+ "tags": [
+ "EdgeDevices"
+ ],
+ "description": "Get a EdgeDevice",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "Name of Device",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/EdgeDevice"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Edge Device": {
+ "$ref": "./examples/GetEdgeDevices.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "EdgeDevices_CreateOrUpdate",
+ "tags": [
+ "EdgeDevices"
+ ],
+ "description": "Create a EdgeDevice",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "Name of Device",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EdgeDevice"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/EdgeDevice"
+ }
+ },
+ "201": {
+ "description": "Resource successfully created.",
+ "schema": {
+ "$ref": "#/definitions/EdgeDevice"
+ },
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create HCI Edge Device": {
+ "$ref": "./examples/CreateHciEdgeDevice.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "EdgeDevices_Delete",
+ "tags": [
+ "EdgeDevices"
+ ],
+ "description": "Delete a EdgeDevice",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "Name of Device",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Edge Devices": {
+ "$ref": "./examples/DeleteEdgeDevices.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/{resourceUri}/providers/Microsoft.AzureStackHCI/edgeDevices/{edgeDeviceName}/validate": {
+ "post": {
+ "operationId": "EdgeDevices_Validate",
+ "tags": [
+ "EdgeDevices"
+ ],
+ "description": "A long-running resource action.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter"
+ },
+ {
+ "name": "edgeDeviceName",
+ "in": "path",
+ "description": "Name of Device",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "ValidateRequest",
+ "in": "body",
+ "description": "The content of the action request",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ValidateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ValidateResponse"
+ }
+ },
+ "202": {
+ "description": "Resource operation 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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validate Edge Devices": {
+ "$ref": "./examples/ValidateEdgeDevices.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "AdapterPropertyOverrides": {
+ "type": "object",
+ "description": "The AdapterPropertyOverrides of a cluster.",
+ "properties": {
+ "jumboPacket": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "readOnly": true
+ },
+ "networkDirect": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "readOnly": true
+ },
+ "networkDirectTechnology": {
+ "type": "string",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation. Expected values are 'iWARP', 'RoCEv2', 'RoCE'",
+ "readOnly": true
+ }
+ }
+ },
+ "ArcExtensionState": {
+ "type": "string",
+ "description": "Arc extension installation state.",
+ "enum": [
+ "NotSpecified",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Creating",
+ "Updating",
+ "Moving",
+ "Deleting",
+ "Deleted"
+ ],
+ "x-ms-enum": {
+ "name": "ArcExtensionState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "NotSpecified",
+ "value": "NotSpecified",
+ "description": "Arc extension state is not specified."
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "Arc extension state is Succeeded."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "Arc extension state is Failed."
+ },
+ {
+ "name": "Canceled",
+ "value": "Canceled",
+ "description": "Arc extension state is Canceled."
+ },
+ {
+ "name": "Accepted",
+ "value": "Accepted",
+ "description": "Arc extension state is Accepted when extension installation triggered."
+ },
+ {
+ "name": "Creating",
+ "value": "Creating",
+ "description": "Arc extension is in Creating State."
+ },
+ {
+ "name": "Updating",
+ "value": "Updating",
+ "description": "Arc extension is in Updating State."
+ },
+ {
+ "name": "Moving",
+ "value": "Moving",
+ "description": "Arc extension is in Moving State."
+ },
+ {
+ "name": "Deleting",
+ "value": "Deleting",
+ "description": "Arc extension is in Deleting State."
+ },
+ {
+ "name": "Deleted",
+ "value": "Deleted",
+ "description": "Arc extension is in Deleted State."
+ }
+ ]
+ }
+ },
+ "DeviceConfiguration": {
+ "type": "object",
+ "description": "The device Configuration for edge device.",
+ "properties": {
+ "nicDetails": {
+ "type": "array",
+ "description": "NIC Details of device",
+ "items": {
+ "$ref": "#/definitions/NicDetail"
+ },
+ "x-ms-identifiers": [
+ "adapterName"
+ ]
+ },
+ "deviceMetadata": {
+ "type": "string",
+ "description": "Device metadata details."
+ }
+ }
+ },
+ "DeviceKind": {
+ "type": "string",
+ "description": "Edge device kind.",
+ "enum": [
+ "HCI"
+ ],
+ "default": "HCI",
+ "x-ms-enum": {
+ "name": "DeviceKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "HCI",
+ "value": "HCI",
+ "description": "Arc-enabled edge device with HCI OS."
+ }
+ ]
+ }
+ },
+ "DeviceState": {
+ "type": "string",
+ "description": "The edge device state.",
+ "enum": [
+ "NotSpecified",
+ "Connected",
+ "Disconnected",
+ "Repairing",
+ "Draining",
+ "InMaintenance",
+ "Resuming",
+ "Processing"
+ ],
+ "x-ms-enum": {
+ "name": "DeviceState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "NotSpecified",
+ "value": "NotSpecified",
+ "description": "The edge device state is not specified."
+ },
+ {
+ "name": "Connected",
+ "value": "Connected",
+ "description": "The edge device state is in connected state."
+ },
+ {
+ "name": "Disconnected",
+ "value": "Disconnected",
+ "description": "The edge device state is in disconnected state."
+ },
+ {
+ "name": "Repairing",
+ "value": "Repairing",
+ "description": "The edge device state is in repairing state."
+ },
+ {
+ "name": "Draining",
+ "value": "Draining",
+ "description": "The edge device state is in draining state."
+ },
+ {
+ "name": "InMaintenance",
+ "value": "InMaintenance",
+ "description": "The edge device state is in maintenance state."
+ },
+ {
+ "name": "Resuming",
+ "value": "Resuming",
+ "description": "The edge device state is in resuming state."
+ },
+ {
+ "name": "Processing",
+ "value": "Processing",
+ "description": "The edge device state is in processing state."
+ }
+ ]
+ }
+ },
+ "EdgeDevice": {
+ "type": "object",
+ "description": "Edge device resource.",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/DeviceKind",
+ "description": "Device kind to support polymorphic resource.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ }
+ },
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "EdgeDeviceListResult": {
+ "type": "object",
+ "description": "The response of a EdgeDevice list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The EdgeDevice items on this page",
+ "items": {
+ "$ref": "#/definitions/EdgeDevice"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "EdgeDeviceProperties": {
+ "type": "object",
+ "description": "Edge Device properties",
+ "properties": {
+ "deviceConfiguration": {
+ "$ref": "#/definitions/DeviceConfiguration",
+ "description": "Device Configuration"
+ },
+ "provisioningState": {
+ "$ref": "./hciCommon.json#/definitions/ProvisioningState",
+ "description": "Provisioning state of edgeDevice resource",
+ "readOnly": true
+ }
+ }
+ },
+ "ErrorDetail": {
+ "type": "object",
+ "description": "details of validation failure",
+ "properties": {
+ "exception": {
+ "type": "string",
+ "description": "Exception details while installing extension.",
+ "readOnly": true
+ }
+ }
+ },
+ "Extension": {
+ "type": "object",
+ "description": "Arc extension installed on edge device.",
+ "properties": {
+ "extensionName": {
+ "type": "string",
+ "description": "Arc extension name installed on edge device.",
+ "readOnly": true
+ },
+ "state": {
+ "$ref": "#/definitions/ArcExtensionState",
+ "description": "Arc extension state from arc machine extension.",
+ "readOnly": true
+ },
+ "errorDetails": {
+ "type": "array",
+ "description": "Error details while installing Arc extension.",
+ "items": {
+ "$ref": "#/definitions/ErrorDetail"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ },
+ "extensionResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "Arc Extension Azure resource id.",
+ "readOnly": true
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Extension version installed.",
+ "readOnly": true
+ },
+ "managedBy": {
+ "type": "string",
+ "description": "Extension managed by user or Azure.",
+ "default": "Azure",
+ "enum": [
+ "User",
+ "Azure"
+ ],
+ "x-ms-enum": {
+ "name": "ExtensionManagedBy",
+ "modelAsString": true
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ExtensionManagedBy": {
+ "type": "string",
+ "description": "Arc extension managed by Azure or User.",
+ "enum": [
+ "User",
+ "Azure"
+ ],
+ "x-ms-enum": {
+ "name": "ExtensionManagedBy",
+ "modelAsString": true
+ }
+ },
+ "ExtensionProfile": {
+ "type": "object",
+ "description": "Extensions details for edge device.",
+ "properties": {
+ "extensions": {
+ "type": "array",
+ "description": "List of Arc extensions installed on edge device.",
+ "items": {
+ "$ref": "#/definitions/Extension"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "extensionName"
+ ]
+ }
+ }
+ },
+ "HciEdgeDevice": {
+ "type": "object",
+ "description": "Arc-enabled edge device with HCI OS.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HciEdgeDeviceProperties",
+ "description": "properties for Arc-enabled edge device with HCI OS."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/EdgeDevice"
+ }
+ ],
+ "x-ms-discriminator-value": "HCI"
+ },
+ "HciEdgeDeviceProperties": {
+ "type": "object",
+ "description": "properties for Arc-enabled edge device with HCI OS.",
+ "properties": {
+ "reportedProperties": {
+ "$ref": "#/definitions/HciReportedProperties",
+ "description": "The instance view of all current configurations on HCI device.",
+ "readOnly": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/EdgeDeviceProperties"
+ }
+ ]
+ },
+ "HciNetworkProfile": {
+ "type": "object",
+ "description": "The network profile of a device.",
+ "properties": {
+ "nicDetails": {
+ "type": "array",
+ "description": "List of NIC Details of device.",
+ "items": {
+ "$ref": "#/definitions/HciNicDetail"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "adapterName"
+ ]
+ },
+ "switchDetails": {
+ "type": "array",
+ "description": "List of switch details for edge device.",
+ "items": {
+ "$ref": "#/definitions/SwitchDetail"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "switchName"
+ ]
+ },
+ "hostNetwork": {
+ "$ref": "#/definitions/HostNetwork",
+ "description": "HostNetwork config to deploy AzureStackHCI Cluster.",
+ "readOnly": true
+ }
+ }
+ },
+ "HciNicDetail": {
+ "type": "object",
+ "description": "The NIC Detail of a device.",
+ "properties": {
+ "adapterName": {
+ "type": "string",
+ "description": "Adapter Name of NIC",
+ "readOnly": true
+ },
+ "interfaceDescription": {
+ "type": "string",
+ "description": "Interface Description of NIC",
+ "readOnly": true
+ },
+ "componentId": {
+ "type": "string",
+ "description": "Component Id of NIC",
+ "readOnly": true
+ },
+ "driverVersion": {
+ "type": "string",
+ "description": "Driver Version of NIC",
+ "readOnly": true
+ },
+ "ip4Address": {
+ "type": "string",
+ "description": "Subnet Mask of NIC",
+ "readOnly": true
+ },
+ "subnetMask": {
+ "type": "string",
+ "description": "Subnet Mask of NIC",
+ "readOnly": true
+ },
+ "defaultGateway": {
+ "type": "string",
+ "description": "Default Gateway of NIC",
+ "readOnly": true
+ },
+ "dnsServers": {
+ "type": "array",
+ "description": "DNS Servers for NIC",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ },
+ "defaultIsolationId": {
+ "type": "string",
+ "description": "Default Isolation of Management NIC",
+ "readOnly": true
+ },
+ "macAddress": {
+ "type": "string",
+ "description": "MAC address information of NIC.",
+ "readOnly": true
+ },
+ "slot": {
+ "type": "string",
+ "description": "The slot attached to the NIC.",
+ "readOnly": true
+ },
+ "switchName": {
+ "type": "string",
+ "description": "The switch attached to the NIC, if any.",
+ "readOnly": true
+ },
+ "nicType": {
+ "type": "string",
+ "description": "The type of NIC, physical, virtual, management.",
+ "readOnly": true
+ },
+ "vlanId": {
+ "type": "string",
+ "description": "The VLAN ID of the physical NIC.",
+ "readOnly": true
+ },
+ "nicStatus": {
+ "type": "string",
+ "description": "The status of NIC, up, disconnected.",
+ "readOnly": true
+ },
+ "rdmaCapability": {
+ "type": "string",
+ "description": "Describes the RDMA capability of the network adapter.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "default": "Disabled",
+ "x-ms-enum": {
+ "name": "RdmaCapability",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enabled",
+ "value": "Enabled",
+ "description": "Network Adapter on the device is RDMA Capable"
+ },
+ {
+ "name": "Disabled",
+ "value": "Disabled",
+ "description": "Network Adapter on the device is RDMA Capable"
+ }
+ ]
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "HciOsProfile": {
+ "type": "object",
+ "description": "OS configurations for HCI device.",
+ "properties": {
+ "bootType": {
+ "type": "string",
+ "description": "The boot type of the device. e.g. UEFI, Legacy etc",
+ "readOnly": true
+ },
+ "assemblyVersion": {
+ "type": "string",
+ "description": "Version of assembly present on device",
+ "readOnly": true
+ }
+ }
+ },
+ "HciStorageProfile": {
+ "type": "object",
+ "description": "Storage configurations for HCI device.",
+ "properties": {
+ "poolableDisksCount": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Number of storage disks in the device with $CanPool as true.",
+ "readOnly": true
+ }
+ }
+ },
+ "HciHardwareProfile": {
+ "type": "object",
+ "description": "Hardware configurations for HCI device.",
+ "properties": {
+ "processorType": {
+ "type": "string",
+ "description": "Process type of the device",
+ "readOnly": true
+ }
+ }
+ },
+ "HciReportedProperties": {
+ "type": "object",
+ "description": "The device Configuration for HCI device.",
+ "properties": {
+ "networkProfile": {
+ "$ref": "#/definitions/HciNetworkProfile",
+ "description": "HCI device network information.",
+ "readOnly": true
+ },
+ "osProfile": {
+ "$ref": "#/definitions/HciOsProfile",
+ "description": "HCI device OS specific information.",
+ "readOnly": true
+ },
+ "sbeDeploymentPackageInfo": {
+ "$ref": "#/definitions/SbeDeploymentPackageInfo",
+ "description": "Solution builder extension (SBE) deployment package information.",
+ "readOnly": true
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/HciStorageProfile",
+ "description": "Hci device storage specific information.",
+ "readOnly": true
+ },
+ "hardwareProfile": {
+ "$ref": "#/definitions/HciHardwareProfile",
+ "description": "Hci device hardware specific information.",
+ "readOnly": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ReportedProperties"
+ }
+ ]
+ },
+ "HostNetwork": {
+ "type": "object",
+ "description": "The HostNetwork of a cluster.",
+ "properties": {
+ "intents": {
+ "type": "array",
+ "description": "The network intents assigned to the network reference pattern used for the deployment. Each intent will define its own name, traffic type, adapter names, and overrides as recommended by your OEM.",
+ "items": {
+ "$ref": "#/definitions/Intents"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "intentName"
+ ]
+ },
+ "storageNetworks": {
+ "type": "array",
+ "description": "List of StorageNetworks config to deploy AzureStackHCI Cluster.",
+ "items": {
+ "$ref": "#/definitions/StorageNetworks"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "networkAdapterName"
+ ]
+ },
+ "storageConnectivitySwitchless": {
+ "type": "boolean",
+ "description": "Defines how the storage adapters between nodes are connected either switch or switch less.",
+ "readOnly": true
+ },
+ "enableStorageAutoIp": {
+ "type": "boolean",
+ "description": "Optional parameter required only for 3 Nodes Switchless deployments. This allows users to specify IPs and Mask for Storage NICs when Network ATC is not assigning the IPs for storage automatically.",
+ "readOnly": true
+ }
+ }
+ },
+ "Intents": {
+ "type": "object",
+ "description": "The Intents of a cluster.",
+ "properties": {
+ "scope": {
+ "type": "integer",
+ "format": "int64",
+ "description": "Scope for host network intent.",
+ "readOnly": true
+ },
+ "intentType": {
+ "type": "integer",
+ "format": "int64",
+ "description": "IntentType for host network intent.",
+ "readOnly": true
+ },
+ "isComputeIntentSet": {
+ "type": "boolean",
+ "description": "IsComputeIntentSet for host network intent.",
+ "readOnly": true
+ },
+ "isStorageIntentSet": {
+ "type": "boolean",
+ "description": "IsStorageIntentSet for host network intent.",
+ "readOnly": true
+ },
+ "isOnlyStorage": {
+ "type": "boolean",
+ "description": "IntentType for host network intent.",
+ "readOnly": true
+ },
+ "isManagementIntentSet": {
+ "type": "boolean",
+ "description": "IsManagementIntentSet for host network intent.",
+ "readOnly": true
+ },
+ "isStretchIntentSet": {
+ "type": "boolean",
+ "description": "IsStretchIntentSet for host network intent.",
+ "readOnly": true
+ },
+ "isOnlyStretch": {
+ "type": "boolean",
+ "description": "IsOnlyStretch for host network intent.",
+ "readOnly": true
+ },
+ "isNetworkIntentType": {
+ "type": "boolean",
+ "description": "IsNetworkIntentType for host network intent.",
+ "readOnly": true
+ },
+ "intentName": {
+ "type": "string",
+ "description": "Name of the network intent you wish to create.",
+ "readOnly": true
+ },
+ "intentAdapters": {
+ "type": "array",
+ "description": "Array of adapters used for the network intent.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "overrideVirtualSwitchConfiguration": {
+ "type": "boolean",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "readOnly": true
+ },
+ "virtualSwitchConfigurationOverrides": {
+ "$ref": "#/definitions/VirtualSwitchConfigurationOverrides",
+ "description": "Set virtualSwitch ConfigurationOverrides for cluster.",
+ "readOnly": true
+ },
+ "overrideQosPolicy": {
+ "type": "boolean",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "readOnly": true
+ },
+ "qosPolicyOverrides": {
+ "$ref": "./deploymentSettings.json#/definitions/QosPolicyOverrides",
+ "description": "Set QoS PolicyOverrides for cluster.",
+ "readOnly": true
+ },
+ "overrideAdapterProperty": {
+ "type": "boolean",
+ "description": "This parameter should only be modified based on your OEM guidance. Do not modify this parameter without OEM validation.",
+ "readOnly": true
+ },
+ "adapterPropertyOverrides": {
+ "$ref": "#/definitions/AdapterPropertyOverrides",
+ "description": "Set Adapter PropertyOverrides for cluster.",
+ "readOnly": true
+ }
+ }
+ },
+ "NicDetail": {
+ "type": "object",
+ "description": "The NIC Detail of a device.",
+ "properties": {
+ "adapterName": {
+ "type": "string",
+ "description": "Adapter Name of NIC"
+ },
+ "interfaceDescription": {
+ "type": "string",
+ "description": "Interface Description of NIC"
+ },
+ "componentId": {
+ "type": "string",
+ "description": "Component Id of NIC"
+ },
+ "driverVersion": {
+ "type": "string",
+ "description": "Driver Version of NIC"
+ },
+ "ip4Address": {
+ "type": "string",
+ "description": "Subnet Mask of NIC"
+ },
+ "subnetMask": {
+ "type": "string",
+ "description": "Subnet Mask of NIC"
+ },
+ "defaultGateway": {
+ "type": "string",
+ "description": "Default Gateway of NIC"
+ },
+ "dnsServers": {
+ "type": "array",
+ "description": "DNS Servers for NIC",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-identifiers": []
+ },
+ "defaultIsolationId": {
+ "type": "string",
+ "description": "Default Isolation of Management NIC"
+ }
+ }
+ },
+ "ReportedProperties": {
+ "type": "object",
+ "description": "Reported properties pushed from edge device.",
+ "properties": {
+ "deviceState": {
+ "$ref": "#/definitions/DeviceState",
+ "description": "edge device state.",
+ "readOnly": true
+ },
+ "extensionProfile": {
+ "$ref": "#/definitions/ExtensionProfile",
+ "description": "Extensions details for edge device.",
+ "readOnly": true
+ }
+ }
+ },
+ "SbeDeploymentPackageInfo": {
+ "type": "object",
+ "description": "Solution builder extension (SBE) deployment package information.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "SBE deployment validation code.",
+ "readOnly": true
+ },
+ "message": {
+ "type": "string",
+ "description": "A detailed message that explains the SBE package validation result.",
+ "readOnly": true
+ },
+ "sbeManifest": {
+ "type": "string",
+ "description": "This represents discovered update results for matching updates and store it as SBE manifest.",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageAdapterIPInfo": {
+ "type": "object",
+ "description": "The StorageAdapter physical nodes of a cluster.",
+ "properties": {
+ "physicalNode": {
+ "type": "string",
+ "description": "storage adapter physical node name.",
+ "readOnly": true
+ },
+ "ipv4Address": {
+ "type": "string",
+ "description": "The IPv4 address assigned to each storage adapter physical node on your Azure Stack HCI cluster.",
+ "readOnly": true
+ },
+ "subnetMask": {
+ "type": "string",
+ "description": "The SubnetMask address assigned to each storage adapter physical node on your Azure Stack HCI cluster.",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageNetworks": {
+ "type": "object",
+ "description": "The StorageNetworks of a cluster.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of the storage network.",
+ "readOnly": true
+ },
+ "networkAdapterName": {
+ "type": "string",
+ "description": "Name of the storage network adapter.",
+ "readOnly": true
+ },
+ "storageVlanId": {
+ "type": "string",
+ "description": "ID specified for the VLAN storage network. This setting is applied to the network interfaces that route the storage and VM migration traffic. ",
+ "readOnly": true
+ },
+ "storageAdapterIPInfo": {
+ "type": "array",
+ "description": "List of Storage adapter physical nodes config to deploy AzureStackHCI Cluster.",
+ "items": {
+ "$ref": "#/definitions/StorageAdapterIPInfo"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "physicalNode"
+ ]
+ }
+ }
+ },
+ "SwitchDetail": {
+ "type": "object",
+ "description": "List of switch details for edge device.",
+ "properties": {
+ "switchName": {
+ "type": "string",
+ "description": "The name of the switch.",
+ "readOnly": true
+ },
+ "switchType": {
+ "type": "string",
+ "description": "The type of the switch. e.g. external, internal.",
+ "readOnly": true
+ },
+ "extensions": {
+ "type": "array",
+ "description": "This represents extensions installed on virtualSwitch.",
+ "items": {
+ "$ref": "#/definitions/SwitchExtension"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "extensionName"
+ ]
+ }
+ }
+ },
+ "SwitchExtension": {
+ "type": "object",
+ "description": "This represents extensions installed on virtualSwitch.",
+ "properties": {
+ "switchId": {
+ "type": "string",
+ "description": "Unique identifier for virtualSwitch.",
+ "readOnly": true
+ },
+ "extensionName": {
+ "type": "string",
+ "description": "This will show extension name for virtualSwitch.",
+ "readOnly": true
+ },
+ "extensionEnabled": {
+ "type": "boolean",
+ "description": "This represents whether extension is enabled on virtualSwitch.",
+ "readOnly": true
+ }
+ }
+ },
+ "ValidateRequest": {
+ "type": "object",
+ "description": "The validate request for Edge Device.",
+ "properties": {
+ "edgeDeviceIds": {
+ "type": "array",
+ "description": "Node Ids against which, current node has to be validated.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "additionalInfo": {
+ "type": "string",
+ "description": "Additional info required for validation."
+ }
+ },
+ "required": [
+ "edgeDeviceIds"
+ ]
+ },
+ "ValidateResponse": {
+ "type": "object",
+ "description": "An Accepted response with an Operation-Location header.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "description": "edge device validation status",
+ "readOnly": true
+ }
+ }
+ },
+ "VirtualSwitchConfigurationOverrides": {
+ "type": "object",
+ "description": "The VirtualSwitchConfigurationOverrides of a cluster.",
+ "properties": {
+ "enableIov": {
+ "type": "string",
+ "description": "Enable IoV for Virtual Switch",
+ "readOnly": true
+ },
+ "loadBalancingAlgorithm": {
+ "type": "string",
+ "description": "Load Balancing Algorithm for Virtual Switch",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "Azure.ResourceManager.ResourceUriParameter": {
+ "name": "resourceUri",
+ "in": "path",
+ "description": "The fully qualified Azure Resource manager identifier of the resource.",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "x-ms-skip-url-encoding": true
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Clusters_UpdateSecretsLocations.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Clusters_UpdateSecretsLocations.json
new file mode 100644
index 000000000000..eca18923b0c1
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Clusters_UpdateSecretsLocations.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview",
+ "body": {
+ "properties": [
+ {
+ "secretsType": "BackupSecrets",
+ "secretsLocation": "https://kvname.vault.azure.net/"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "softwareAssuranceProperties": {
+ "softwareAssuranceStatus": "Enabled",
+ "lastUpdated": "2022-08-18T22:01:12.4191603Z",
+ "softwareAssuranceIntent": "Enable"
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "nodeType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z",
+ "secretsLocations": [
+ {
+ "secretsType": "BackupSecrets",
+ "secretsLocation": "https://kvname.vault.azure.net/"
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ }
+ },
+ "operationId": "Clusters_UpdateSecretsLocations",
+ "title": "Update secrets locations for a Cluster"
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConfigureRemoteSupport.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConfigureRemoteSupport.json
new file mode 100644
index 000000000000..21cdd7950914
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConfigureRemoteSupport.json
@@ -0,0 +1,113 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "mycluster",
+ "api-version": "2024-12-01-preview",
+ "remoteSupportRequest": {
+ "properties": {
+ "accessLevel": "Diagnostics",
+ "expirationTimeStamp": "2020-01-01T17:18:19.1234567Z",
+ "remoteSupportType": "Enable"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "remoteSupportProperties": {
+ "accessLevel": "Diagnostics",
+ "expirationTimeStamp": "2020-01-01T17:18:19.1234567Z",
+ "remoteSupportType": "Enable",
+ "remoteSupportNodeSettings": [
+ {
+ "arcResourceId": "/subscriptions//resourcegroups//Microsoft.HybridCompute/machines/arcNode0",
+ "state": "Active",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "updatedAt": "2020-01-01T17:18:19.1234567Z",
+ "connectionStatus": "Connected",
+ "connectionErrorMessage": "test",
+ "transcriptLocation": "test"
+ },
+ {
+ "arcResourceId": "/subscriptions//resourcegroups//Microsoft.HybridCompute/machines/arcNode1",
+ "state": "Active",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "updatedAt": "2020-01-01T17:18:19.1234567Z",
+ "connectionStatus": "Connected",
+ "connectionErrorMessage": "test",
+ "transcriptLocation": "test"
+ }
+ ],
+ "remoteSupportSessionDetails": [
+ {
+ "sessionStartTime": "2020-01-01T17:18:19.1234567Z",
+ "sessionEndTime": "2020-01-01T17:18:19.1234567Z",
+ "nodeName": "arcNode0",
+ "duration": 120,
+ "accessLevel": "Diagnostics"
+ }
+ ]
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "nodeType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConsentAndInstallDefaultExtensions.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConsentAndInstallDefaultExtensions.json
new file mode 100644
index 000000000000..961a87e2394d
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ConsentAndInstallDefaultExtensions.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "arcInstanceResourceGroup": "ArcInstance-rg",
+ "aggregateState": "Creating",
+ "perNodeDetails": [
+ {
+ "name": "Node-1",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "state": "Creating"
+ },
+ {
+ "name": "Node-2",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2",
+ "state": "Creating"
+ }
+ ],
+ "connectivityProperties": {
+ "enabled": false,
+ "serviceConfigurations": []
+ },
+ "defaultExtensions": [
+ {
+ "category": "Telemetry",
+ "consentTime": "2023-01-01T17:18:19.1234567Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateArcIdentity.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateArcIdentity.json
new file mode 100644
index 000000000000..7edcfa8587ba
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateArcIdentity.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "arcApplicationClientId": "7b93bf67-60ac-4909-a987-ac438e69f9ba",
+ "arcApplicationTenantId": "bdb2c88c-9cfd-4e19-927d-51e875f6912b",
+ "arcApplicationObjectId": "400bd05f-395f-45a6-ba75-72601df80107",
+ "arcServicePrincipalObjectId": "00cc4014-482e-4de9-9932-83415cc75f45"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateCluster.json
new file mode 100644
index 000000000000..5c887dde3121
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateCluster.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview",
+ "cluster": {
+ "location": "East US",
+ "properties": {
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "identity": {
+ "principalId": "87a834db-2e45-409e-911b-e16a44562ec3",
+ "tenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "type": "SystemAssigned"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "NotYetRegistered",
+ "connectivityStatus": "NotYetRegistered",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "reportedProperties": {},
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "serviceEndpoint": "https://azurestackhci.azurefd.net/eastus"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateClusterIdentity.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateClusterIdentity.json
new file mode 100644
index 000000000000..80a2ae5b373d
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateClusterIdentity.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "aadClientId": "7b93bf67-60ac-4909-a987-ac438e69f9ba",
+ "aadTenantId": "bdb2c88c-9cfd-4e19-927d-51e875f6912b",
+ "aadServicePrincipalObjectId": "400bd05f-395f-45a6-ba75-72601df80107",
+ "aadApplicationObjectId": "00cc4014-482e-4de9-9932-83415cc75f45"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateHciEdgeDevice.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateHciEdgeDevice.json
new file mode 100644
index 000000000000..8b0b8052e5fc
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/CreateHciEdgeDevice.json
@@ -0,0 +1,257 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "api-version": "2024-12-01-preview",
+ "resource": {
+ "kind": "HCI",
+ "properties": {
+ "deviceConfiguration": {
+ "nicDetails": [
+ {
+ "adapterName": "ethernet",
+ "interfaceDescription": "NDIS 6.70 ",
+ "componentId": "VMBUS{f8615163-df3e-46c5-913f-f2d2f965ed0g} ",
+ "driverVersion": "10.0.20348.1547 ",
+ "ip4Address": "10.10.10.10",
+ "subnetMask": "255.255.255.0",
+ "defaultGateway": "10.10.10.1",
+ "dnsServers": [
+ "100.10.10.1"
+ ],
+ "defaultIsolationId": "0"
+ }
+ ],
+ "deviceMetadata": ""
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/edgeDevices",
+ "kind": "HCI",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "reportedProperties": {
+ "deviceState": "Connected",
+ "networkProfile": {
+ "nicDetails": [
+ {
+ "adapterName": "vmanagement",
+ "interfaceDescription": "Hyper-V Virtual Ethernet Adapter",
+ "componentId": "vms_mp",
+ "driverVersion": "10.0.25398.1",
+ "ip4Address": "192.168.200.92",
+ "subnetMask": "255.255.255.0",
+ "defaultGateway": "192.168.200.1",
+ "dnsServers": [
+ "192.168.200.222"
+ ],
+ "defaultIsolationId": "0",
+ "slot": "0",
+ "macAddress": "000000000041",
+ "switchName": null,
+ "nicType": "Virtual",
+ "vlanId": "0",
+ "nicStatus": "Up"
+ }
+ ],
+ "switchDetails": [
+ {
+ "switchName": "vmanagement",
+ "switchType": "External"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "intentName": "managementcomputestorage",
+ "scope": 0,
+ "intentType": 14,
+ "isComputeIntentSet": true,
+ "isStorageIntentSet": true,
+ "isOnlyStorage": false,
+ "isManagementIntentSet": true,
+ "isStretchIntentSet": false,
+ "isOnlyStretch": false,
+ "isNetworkIntentType": true,
+ "intentAdapters": [
+ "ethernet",
+ "ethernet2"
+ ],
+ "overrideVirtualSwitchConfiguration": true,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": true,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": null,
+ "priorityValue8021Action_SMB": null,
+ "bandwidthPercentage_SMB": null
+ },
+ "overrideAdapterProperty": true,
+ "adapterPropertyOverrides": {
+ "jumboPacket": null,
+ "networkDirect": "0",
+ "networkDirectTechnology": null
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "StorageIntent1",
+ "networkAdapterName": "ethernet",
+ "storageVlanId": "8",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "v-host1",
+ "ipv4Address": "192.168.120.192",
+ "subnetMask": "255.255.244.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": false,
+ "enableStorageAutoIp": false
+ }
+ },
+ "osProfile": {
+ "bootType": "UEFI",
+ "assemblyVersion": "2402.1"
+ },
+ "sbeDeploymentPackageInfo": {
+ "code": "NewerThanLatestPublished",
+ "message": "The SBE package at path 'C:\\SBE' with version 4.1.2312.10 is published later than the latest SBE manifest published for online discovery. ",
+ "sbeManifest": "PEFwcGxpY2Fi"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/edgeDevices",
+ "kind": "HCI",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "reportedProperties": {
+ "deviceState": "Connected",
+ "networkProfile": {
+ "nicDetails": [
+ {
+ "adapterName": "vmanagement",
+ "interfaceDescription": "Hyper-V Virtual Ethernet Adapter",
+ "componentId": "vms_mp",
+ "driverVersion": "10.0.25398.1",
+ "ip4Address": "192.168.200.92",
+ "subnetMask": "255.255.255.0",
+ "defaultGateway": "192.168.200.1",
+ "dnsServers": [
+ "192.168.200.222"
+ ],
+ "defaultIsolationId": "0",
+ "slot": "0",
+ "macAddress": "000000000041",
+ "switchName": null,
+ "nicType": "Virtual",
+ "vlanId": "0",
+ "nicStatus": "Up"
+ }
+ ],
+ "switchDetails": [
+ {
+ "switchName": "vmanagement",
+ "switchType": "External"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "intentName": "managementcomputestorage",
+ "scope": 0,
+ "intentType": 14,
+ "isComputeIntentSet": true,
+ "isStorageIntentSet": true,
+ "isOnlyStorage": false,
+ "isManagementIntentSet": true,
+ "isStretchIntentSet": false,
+ "isOnlyStretch": false,
+ "intentAdapters": [
+ "ethernet",
+ "ethernet2"
+ ],
+ "overrideVirtualSwitchConfiguration": true,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": true,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": null,
+ "priorityValue8021Action_SMB": null,
+ "bandwidthPercentage_SMB": null
+ },
+ "overrideAdapterProperty": true,
+ "adapterPropertyOverrides": {
+ "jumboPacket": null,
+ "networkDirect": "0",
+ "networkDirectTechnology": null
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "StorageIntent1",
+ "networkAdapterName": "ethernet",
+ "storageVlanId": "8",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "v-host1",
+ "ipv4Address": "192.168.120.192",
+ "subnetMask": "255.255.244.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": false,
+ "enableStorageAutoIp": false
+ }
+ },
+ "osProfile": {
+ "bootType": "UEFI",
+ "assemblyVersion": "2402.1"
+ },
+ "sbeDeploymentPackageInfo": {
+ "code": "NewerThanLatestPublished",
+ "message": "The SBE package at path 'C:\\SBE' with version 4.1.2312.10 is published later than the latest SBE manifest published for online discovery. ",
+ "sbeManifest": "PEFwcGxpY2Fi"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteArcSetting.json
new file mode 100644
index 000000000000..e5581625ade8
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteArcSetting.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteCluster.json
new file mode 100644
index 000000000000..421992424b6e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteCluster.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteDeploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteDeploymentSettings.json
new file mode 100644
index 000000000000..53514d6e4087
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteDeploymentSettings.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "deploymentSettingsName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteEdgeDevices.json
new file mode 100644
index 000000000000..830f67250551
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteEdgeDevices.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteExtension.json
new file mode 100644
index 000000000000..3d66f4150fe9
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteExtension.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "extensionName": "MicrosoftMonitoringAgent",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteSecuritySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteSecuritySettings.json
new file mode 100644
index 000000000000..d64cd33e32a6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteSecuritySettings.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "securitySettingsName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateRuns.json
new file mode 100644
index 000000000000..f042af8c7df5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateRuns.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "updateRunName": "23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateSummaries.json
new file mode 100644
index 000000000000..7e4d920b05b8
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdateSummaries.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdates.json
new file mode 100644
index 000000000000..092d801434e8
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/DeleteUpdates.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_CollectLog.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_CollectLog.json
new file mode 100644
index 000000000000..8337db19dd0f
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_CollectLog.json
@@ -0,0 +1,65 @@
+{
+ "title": "EdgeDeviceJobs_CreateOrUpdate_CollectLog",
+ "operationId": "EdgeDeviceJobs_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "jobsName": "collectLog",
+ "resource": {
+ "properties": {
+ "jobType": "CollectLog",
+ "fromDate": "2024-01-29T10:43:27.9471574Z",
+ "toDate": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "jobType": "CollectLog",
+ "fromDate": "2024-01-29T10:43:27.9471574Z",
+ "toDate": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI",
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default/jobs/collectLog",
+ "name": "collectLog",
+ "type": "Microsoft.AzureStackHCI/edgeDevices/jobs",
+ "systemData": {
+ "createdBy": "zsnvvvbj",
+ "createdByType": "User",
+ "createdAt": "2024-07-01T17:02:21.168Z",
+ "lastModifiedBy": "qxlrx",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-01T17:02:21.168Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "jobType": "CollectLog",
+ "fromDate": "2024-01-29T10:43:27.9471574Z",
+ "toDate": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI",
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default/jobs/collectLog",
+ "name": "collectLog",
+ "type": "Microsoft.AzureStackHCI/edgeDevices/jobs",
+ "systemData": {
+ "createdBy": "zsnvvvbj",
+ "createdByType": "User",
+ "createdAt": "2024-07-01T17:02:21.168Z",
+ "lastModifiedBy": "qxlrx",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-01T17:02:21.168Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_RemoteSupport.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_RemoteSupport.json
new file mode 100644
index 000000000000..c7b5387f46ad
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_CreateOrUpdate_RemoteSupport.json
@@ -0,0 +1,68 @@
+{
+ "title": "EdgeDeviceJobs_CreateOrUpdate_RemoteSupport",
+ "operationId": "EdgeDeviceJobs_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "jobsName": "collectLog",
+ "resource": {
+ "properties": {
+ "jobType": "RemoteSupport",
+ "accessLevel": "Diagnostics",
+ "type": "Enable",
+ "expirationTimestamp": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "jobType": "RemoteSupport",
+ "accessLevel": "Diagnostics",
+ "type": "Enable",
+ "expirationTimestamp": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI",
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default/jobs/remoteSupport",
+ "name": "collectLog",
+ "type": "Microsoft.AzureStackHCI/edgeDevices/jobs",
+ "systemData": {
+ "createdBy": "zsnvvvbj",
+ "createdByType": "User",
+ "createdAt": "2024-07-01T17:02:21.168Z",
+ "lastModifiedBy": "qxlrx",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-01T17:02:21.168Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "jobType": "RemoteSupport",
+ "accessLevel": "Diagnostics",
+ "type": "Enable",
+ "expirationTimestamp": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI",
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default/jobs/remoteSupport",
+ "name": "collectLog",
+ "type": "Microsoft.AzureStackHCI/edgeDevices/jobs",
+ "systemData": {
+ "createdBy": "zsnvvvbj",
+ "createdByType": "User",
+ "createdAt": "2024-07-01T17:02:21.168Z",
+ "lastModifiedBy": "qxlrx",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-01T17:02:21.168Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Delete.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Delete.json
new file mode 100644
index 000000000000..ca8e6ad3d19b
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Delete.json
@@ -0,0 +1,18 @@
+{
+ "title": "EdgeDeviceJobs_Delete",
+ "operationId": "EdgeDeviceJobs_Delete",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "lAq",
+ "jobsName": "Ihlm3R-bZ4vTC4ABA456"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Get_RemoteSupport.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Get_RemoteSupport.json
new file mode 100644
index 000000000000..cf4bbe8d0ef3
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_Get_RemoteSupport.json
@@ -0,0 +1,34 @@
+{
+ "title": "EdgeDeviceJobs_Get_RemoteSupport",
+ "operationId": "EdgeDeviceJobs_Get",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "-5M1G7G10OZ-o5b-HS3-c72",
+ "jobsName": "-oUxs"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "jobType": "RemoteSupport",
+ "accessLevel": "Diagnostics",
+ "type": "Enable",
+ "expirationTimestamp": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI",
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default/jobs/RemoteSupport",
+ "name": "collectLog",
+ "type": "Microsoft.AzureStackHCI/edgeDevices/jobs",
+ "systemData": {
+ "createdBy": "zsnvvvbj",
+ "createdByType": "User",
+ "createdAt": "2024-07-01T17:02:21.168Z",
+ "lastModifiedBy": "qxlrx",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-01T17:02:21.168Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_ListByEdgeDevice.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_ListByEdgeDevice.json
new file mode 100644
index 000000000000..49fcaaefb15a
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/EdgeDeviceJobs_ListByEdgeDevice.json
@@ -0,0 +1,38 @@
+{
+ "title": "EdgeDeviceJobs_ListByEdgeDevice",
+ "operationId": "EdgeDeviceJobs_ListByEdgeDevice",
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "YE-855IEIN585-"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "jobType": "RemoteSupport",
+ "accessLevel": "Diagnostics",
+ "type": "Enable",
+ "expirationTimestamp": "2024-01-29T10:43:27.9471574Z"
+ },
+ "kind": "HCI",
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default/jobs/collectLog",
+ "name": "collectLog",
+ "type": "Microsoft.AzureStackHCI/edgeDevices/jobs",
+ "systemData": {
+ "createdBy": "zsnvvvbj",
+ "createdByType": "User",
+ "createdAt": "2024-07-01T17:02:21.168Z",
+ "lastModifiedBy": "qxlrx",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-01T17:02:21.168Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/alqov"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ExtendSoftwareAssuranceBenefit.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ExtendSoftwareAssuranceBenefit.json
new file mode 100644
index 000000000000..e20402e52433
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ExtendSoftwareAssuranceBenefit.json
@@ -0,0 +1,82 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview",
+ "softwareAssuranceChangeRequest": {
+ "properties": {
+ "softwareAssuranceIntent": "Enable"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "softwareAssuranceProperties": {
+ "softwareAssuranceStatus": "Enabled",
+ "lastUpdated": "2022-08-18T22:01:12.4191603Z",
+ "softwareAssuranceIntent": "Enable"
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "nodeType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Extensions_Upgrade.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Extensions_Upgrade.json
new file mode 100644
index 000000000000..b9ebf6670e5c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/Extensions_Upgrade.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "extensionName": "MicrosoftMonitoringAgent",
+ "api-version": "2024-12-01-preview",
+ "extensionUpgradeParameters": {
+ "targetVersion": "1.0.18062.0"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses",
+ "Retry-After": 200,
+ "Azure-AsyncOperation": "https://foo.com/operationStatuses"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GeneratePassword.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GeneratePassword.json
new file mode 100644
index 000000000000..766b7f79c9ac
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GeneratePassword.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "secretText": "secretText",
+ "startDateTime": "2022-02-17T16:24:23.6264005+05:30",
+ "endDateTime": "2121-02-17T16:24:23.6264377+05:30",
+ "keyId": "00000000-2d47-4fb2-8ed2-fed71a5c197b"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetArcSetting.json
new file mode 100644
index 000000000000..614438177402
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetArcSetting.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "arcInstanceResourceGroup": "ArcInstance-rg",
+ "aggregateState": "PartiallyConnected",
+ "perNodeDetails": [
+ {
+ "name": "Node-1",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "state": "Connected"
+ },
+ {
+ "name": "Node-2",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2",
+ "state": "Disconnected"
+ }
+ ],
+ "connectivityProperties": {
+ "enabled": false,
+ "serviceConfigurations": [
+ {
+ "serviceName": "WAC",
+ "port": 6516
+ }
+ ]
+ },
+ "defaultExtensions": [
+ {
+ "category": "Telemetry",
+ "consentTime": "2023-01-01T17:18:19.1234567Z"
+ },
+ {
+ "category": "Supportability",
+ "consentTime": null
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetCluster.json
new file mode 100644
index 000000000000..8d0abfd056a0
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetCluster.json
@@ -0,0 +1,122 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "connectivityStatus": "Connected",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "isolatedVmAttestationConfiguration": {
+ "attestationResourceId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.Attestation/attestationProviders/testmaa",
+ "relyingPartyServiceEndpoint": "https://azurestackhci.azurefd.net/eastus",
+ "attestationServiceEndpoint": "https://dantestnoauth01.eus.attest.azure.net"
+ },
+ "logCollectionProperties": {
+ "fromDate": "2020-01-01T17:18:19.1234567Z",
+ "toDate": "2021-01-01T17:18:19.1234567Z",
+ "lastLogGenerated": "2020-01-01T17:18:19.1234567Z",
+ "logCollectionSessionDetails": [
+ {
+ "logStartTime": "2020-01-01T17:18:19.1234567Z",
+ "logEndTime": "2020-01-01T17:18:19.1234567Z",
+ "timeCollected": "2020-01-01T17:18:19.1234567Z",
+ "logSize": 1000,
+ "logCollectionStatus": "Succeeded",
+ "correlationId": "a76ab33a-1819-4e82-1212-e3e4ec3d1425",
+ "endTimeCollected": "2020-01-01T17:25:19.1234567Z"
+ }
+ ]
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "clusterType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "oemActivation": "Disabled",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "lastLicensingTimestamp": "2020-03-11T19:24:42.1946017Z",
+ "oemActivation": "Disabled"
+ },
+ {
+ "name": "Node2",
+ "id": 2,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44BSC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "lastLicensingTimestamp": "2020-03-11T19:24:42.1946017Z",
+ "oemActivation": "Disabled"
+ },
+ {
+ "name": "Node3",
+ "id": 3,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44RFC3",
+ "coreCount": 16,
+ "memoryInGiB": 256,
+ "lastLicensingTimestamp": "2020-03-11T19:24:42.1946017Z",
+ "oemActivation": "Disabled"
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic",
+ "hardwareClass": "Medium"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetDeploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetDeploymentSettings.json
new file mode 100644
index 000000000000..c64c3b5d233c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetDeploymentSettings.json
@@ -0,0 +1,270 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "deploymentSettingsName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/deploymentSettings/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/clusters/deploymentSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "operationType": "ClusterProvisioning",
+ "deploymentMode": "Deploy",
+ "arcNodeResourceIds": [
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2"
+ ],
+ "deploymentConfiguration": {
+ "version": "string",
+ "scaleUnits": [
+ {
+ "deploymentData": {
+ "securitySettings": {
+ "hvciProtection": true,
+ "drtmProtection": true,
+ "driftControlEnforced": true,
+ "credentialGuardEnforced": false,
+ "smbSigningEnforced": true,
+ "smbClusterEncryption": false,
+ "sideChannelMitigationEnforced": true,
+ "bitlockerBootVolume": true,
+ "bitlockerDataVolumes": true,
+ "wdacEnforced": true
+ },
+ "observability": {
+ "streamingDataClient": true,
+ "euLocation": false,
+ "episodicDataUpload": true
+ },
+ "cluster": {
+ "name": "testHCICluster",
+ "witnessType": "Cloud",
+ "witnessPath": "Cloud",
+ "cloudAccountName": "myasestoragacct",
+ "azureServiceEndpoint": "core.windows.net",
+ "hardwareClass": "Medium"
+ },
+ "storage": {
+ "configurationMode": "Express"
+ },
+ "namingPrefix": "ms169",
+ "domainFqdn": "ASZ1PLab8.nttest.microsoft.com",
+ "infrastructureNetwork": [
+ {
+ "subnetMask": "255.255.248.0",
+ "gateway": "255.255.248.0",
+ "ipPools": [
+ {
+ "startingAddress": "10.57.48.60",
+ "endingAddress": "10.57.48.66"
+ }
+ ],
+ "dnsServers": [
+ "10.57.50.90"
+ ]
+ }
+ ],
+ "physicalNodes": [
+ {
+ "name": "ms169host",
+ "ipv4Address": "10.57.51.224"
+ },
+ {
+ "name": "ms154host",
+ "ipv4Address": "10.57.53.236"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "name": "Compute_Management",
+ "trafficType": [
+ "Compute",
+ "Management"
+ ],
+ "adapter": [
+ "Port2"
+ ],
+ "overrideVirtualSwitchConfiguration": false,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": false,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": "7",
+ "priorityValue8021Action_SMB": "3",
+ "bandwidthPercentage_SMB": "50"
+ },
+ "overrideAdapterProperty": false,
+ "adapterPropertyOverrides": {
+ "jumboPacket": "1514",
+ "networkDirect": "Enabled",
+ "networkDirectTechnology": "iWARP"
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "Storage1Network",
+ "networkAdapterName": "Port3",
+ "vlanId": "5",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "string",
+ "ipv4Address": "10.57.48.60",
+ "subnetMask": "255.255.248.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": true,
+ "enableStorageAutoIp": false
+ },
+ "sdnIntegration": {
+ "networkController": {
+ "macAddressPoolStart": "00-0D-3A-1B-C7-21",
+ "macAddressPoolStop": "00-0D-3A-1B-C7-29",
+ "networkVirtualizationEnabled": true
+ }
+ },
+ "adouPath": "OU=ms169,DC=ASZ1PLab8,DC=nttest,DC=microsoft,DC=com",
+ "secretsLocation": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-xxxxxxx/resourceGroups/test-rg/providers/Microsoft.KeyVault/vaults/abcd123",
+ "secrets": [
+ {
+ "secretName": "cluster1-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "BMCAdminUserCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ },
+ {
+ "secretName": "cluster2-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "AzureStackLCMUserCredential",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4c"
+ }
+ ],
+ "optionalServices": {
+ "customLocation": "customLocationName"
+ }
+ },
+ "sbePartnerInfo": {
+ "sbeDeploymentInfo": {
+ "version": "4.0.2309.13",
+ "family": "Gen5",
+ "publisher": "Contoso",
+ "sbeManifestSource": "default",
+ "sbeManifestCreationDate": "2023-07-25T02:40:33Z"
+ },
+ "partnerProperties": [
+ {
+ "name": "EnableBMCIpV6",
+ "value": "false"
+ },
+ {
+ "name": "PhoneHomePort",
+ "value": "1653"
+ },
+ {
+ "name": "BMCSecurityState",
+ "value": "HighSecurity"
+ }
+ ],
+ "credentialList": [
+ {
+ "secretName": "cluster1-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "DownloadConnectorCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "reportedProperties": {
+ "validationStatus": {
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0",
+ "name": "Cloud Deployment",
+ "description": "Deploy Cloud.",
+ "startTimeUtc": "2023-06-09T00:08:19",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0.1",
+ "name": "Before Cloud Deployment",
+ "description": "Before Cloud Deployment",
+ "startTimeUtc": "2023-06-09T00:08:23",
+ "endTimeUtc": "2023-06-09T01:10:10"
+ },
+ {
+ "fullStepIndex": "0.36",
+ "name": "Clean up temporary content",
+ "description": "Clean up temporary content",
+ "startTimeUtc": "2023-06-09T03:58:37",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "deploymentStatus": {
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0",
+ "name": "Cloud Deployment",
+ "description": "Deploy Cloud.",
+ "startTimeUtc": "2023-06-09T00:08:19",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0.1",
+ "name": "Before Cloud Deployment",
+ "description": "Before Cloud Deployment",
+ "startTimeUtc": "2023-06-09T00:08:23",
+ "endTimeUtc": "2023-06-09T01:10:10"
+ },
+ {
+ "fullStepIndex": "0.36",
+ "name": "Clean up temporary content",
+ "description": "Clean up temporary content",
+ "startTimeUtc": "2023-06-09T03:58:37",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetEdgeDevices.json
new file mode 100644
index 000000000000..f5dd9dc3cbed
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetEdgeDevices.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/edgeDevices",
+ "kind": "HCI",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "deviceConfiguration": {
+ "nicDetails": [
+ {
+ "adapterName": "ethernet",
+ "interfaceDescription": "NDIS 6.70 ",
+ "componentId": "VMBUS{f8615163-df3e-46c5-913f-f2d2f965ed0g} ",
+ "driverVersion": "10.0.20348.1547 ",
+ "ip4Address": "10.10.10.10",
+ "subnetMask": "255.255.255.0",
+ "defaultGateway": "10.10.10.1",
+ "dnsServers": [
+ "100.10.10.1"
+ ],
+ "defaultIsolationId": "0"
+ }
+ ],
+ "deviceMetadata": ""
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetExtension.json
new file mode 100644
index 000000000000..fd85edef3ae6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetExtension.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "extensionName": "MicrosoftMonitoringAgent",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default/extensions/MicrosoftMonitoringAgent",
+ "name": "MicrosoftMonitoringAgent",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings/extensions",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "extensionParameters": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "enableAutomaticUpgrade": true,
+ "settings": {
+ "workspaceId": "xx"
+ }
+ },
+ "aggregateState": "PartiallySucceeded",
+ "perNodeExtensionDetails": [
+ {
+ "name": "Node-1",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/Extensions/MicrosoftMonitoringAgent",
+ "state": "Succeeded",
+ "typeHandlerVersion": "1.10.0",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.0",
+ "status": {
+ "code": "success",
+ "level": "Information",
+ "displayStatus": "Provisioning succeeded",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ },
+ {
+ "name": "Node-2",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/Extensions/MicrosoftMonitoringAgent",
+ "state": "Failed",
+ "typeHandlerVersion": "1.10.3",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.3",
+ "status": {
+ "code": "error",
+ "level": "Error",
+ "displayStatus": "Provisioning failed",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ }
+ ],
+ "managedBy": "Azure"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetOffer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetOffer.json
new file mode 100644
index 000000000000..7e5b3f745902
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetOffer.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "publisherName": "publisher1",
+ "offerName": "offer1",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1/offers/offer1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers/offers",
+ "name": "offer1",
+ "properties": {
+ "content": "{\"id\":\"canonical.ubuntuserver1404lts-arm-14.04.201808140\",\"displayName\":\"Ubuntu Server 14.04 LTS\",\"publisherId\":\"Canonical\",\"publisherName\":\"Canonical\",\"type\":\"VirtualMachine\",\"version\":\"14.04.201808140\",\"properties\":{\"description\":\"Ubuntu Server 14.04.5 LTS amd64. Ubuntu Server is the world's most popular Linux for cloud environments. Updates and patches for Ubuntu 14.04 LTS will be available until 2019-04-17. Ubuntu Server is the perfect virtual machine (VM) platform for all workloads from web applications to NoSQL databases and Hadoop. For more information see Ubuntu on Azure and using Juju to deploy your workloads.
By clicking the Create button, I acknowledge that I am getting this software from Canonical and that the legal terms of Canonical apply to it. Microsoft does not provide rights for third-party software. Also see the privacy statement from Canonical.
\"},\"extendedProperties\":{\"osType\":\"Linux\",\"offer\":\"UbuntuServer\",\"offerVersion\":\"1.0.52\",\"sku\":\"14.04.5-LTS\",\"galleryItemIdentity\":\"Canonical.UbuntuServer1404LTS-ARM.1.0.52\"},\"links\":[{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]}],\"iconUris\":{\"medium\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Medium.png\",\"wide\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Wide.png\",\"large\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Large.png\",\"small\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Small.png\"},\"payloadLength\":32212288276,\"compatibility\":{\"isCompatible\":true,\"message\":\"None\",\"description\":\"None\",\"issues\":[]}}",
+ "contentVersion": "2018-01-01",
+ "publisherId": "publisher1",
+ "provisioningState": "Succeeded",
+ "skuMappings": [
+ {
+ "catalogPlanId": "microsoftsqlserver.sql2019-ubuntu2004enterprise-arm",
+ "marketplaceSkuId": "enterprise",
+ "marketplaceSkuVersions": [
+ "15.0.220208"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetPublisher.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetPublisher.json
new file mode 100644
index 000000000000..96ed62648952
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetPublisher.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "publisherName": "publisher1",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers",
+ "name": "publisher1"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSecuritySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSecuritySettings.json
new file mode 100644
index 000000000000..f391ae1b747b
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSecuritySettings.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "securitySettingsName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/securitySettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/securitySettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "securedCoreComplianceAssignment": "Audit",
+ "wdacComplianceAssignment": "ApplyAndAutoCorrect",
+ "smbEncryptionForIntraClusterTrafficComplianceAssignment": "Audit",
+ "securityComplianceStatus": {
+ "securedCoreCompliance": "Compliant",
+ "wdacCompliance": "Compliant",
+ "dataAtRestEncrypted": "Compliant",
+ "dataInTransitProtected": "Compliant",
+ "lastUpdated": "2023-11-14T07:09:44.771Z"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSku.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSku.json
new file mode 100644
index 000000000000..c87d3b509a48
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetSku.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "publisherName": "publisher1",
+ "offerName": "offer1",
+ "skuName": "sku1",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1/offers/offer1/skus/sku1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers/offers/skus",
+ "name": "sku1",
+ "properties": {
+ "publisherId": "publisher1",
+ "offerId": "offer1",
+ "content": "{\"id\":\"canonical.ubuntuserver1404lts-arm-14.04.201808140\",\"displayName\":\"Ubuntu Server 14.04 LTS\",\"publisherId\":\"Canonical\",\"publisherName\":\"Canonical\",\"type\":\"VirtualMachine\",\"version\":\"14.04.201808140\",\"properties\":{\"description\":\"Ubuntu Server 14.04.5 LTS amd64. Ubuntu Server is the world's most popular Linux for cloud environments. Updates and patches for Ubuntu 14.04 LTS will be available until 2019-04-17. Ubuntu Server is the perfect virtual machine (VM) platform for all workloads from web applications to NoSQL databases and Hadoop. For more information see Ubuntu on Azure and using Juju to deploy your workloads.By clicking the Create button, I acknowledge that I am getting this software from Canonical and that the legal terms of Canonical apply to it. Microsoft does not provide rights for third-party software. Also see the privacy statement from Canonical.
\"},\"extendedProperties\":{\"osType\":\"Linux\",\"offer\":\"UbuntuServer\",\"offerVersion\":\"1.0.52\",\"sku\":\"14.04.5-LTS\",\"galleryItemIdentity\":\"Canonical.UbuntuServer1404LTS-ARM.1.0.52\"},\"links\":[{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]}],\"iconUris\":{\"medium\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Medium.png\",\"wide\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Wide.png\",\"large\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Large.png\",\"small\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Small.png\"},\"payloadLength\":32212288276,\"compatibility\":{\"isCompatible\":true,\"message\":\"None\",\"description\":\"None\",\"issues\":[]}}",
+ "contentVersion": "2018-01-01",
+ "provisioningState": "Succeeded",
+ "skuMappings": [
+ {
+ "catalogPlanId": "microsoftsqlserver.sql2019-ubuntu2004enterprise-arm",
+ "marketplaceSkuId": "enterprise",
+ "marketplaceSkuVersions": [
+ "15.0.220208"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateRuns.json
new file mode 100644
index 000000000000..ec89d284852c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateRuns.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "updateRunName": "23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updates/Microsoft4.2203.2.32/updateRuns/23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "name": "Microsoft4.2203.2.32/23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "type": "Microsoft.AzureStackHCI/updates/updateRuns",
+ "location": "West US",
+ "properties": {
+ "progress": {
+ "name": "Unnamed step",
+ "description": "Update Azure Stack.",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "steps": [
+ {
+ "name": "PreUpdate Cloud",
+ "description": "Prepare for SSU update",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "steps": []
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateSummaries.json
new file mode 100644
index 000000000000..3600edda374b
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdateSummaries.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updateSummaries/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/updateSummaries",
+ "location": "West US",
+ "properties": {
+ "oemFamily": "DellEMC",
+ "hardwareModel": "PowerEdge R730xd",
+ "packageVersions": [
+ {
+ "packageType": "OEM",
+ "version": "2.2.2108.6",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ },
+ {
+ "packageType": "Services",
+ "version": "4.2203.2.32",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ },
+ {
+ "packageType": "Infrastructure",
+ "version": "4.2203.2.32",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ }
+ ],
+ "currentVersion": "4.2203.2.32",
+ "state": "AppliedSuccessfully"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdates.json
new file mode 100644
index 000000000000..798055dd7f64
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/GetUpdates.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updates/Microsoft4.2203.2.32",
+ "name": "Microsoft4.2203.2.32",
+ "type": "Microsoft.AzureStackHCI/updates",
+ "location": "West US",
+ "properties": {
+ "installedDate": "2022-04-06T14:08:18.254Z",
+ "description": "AzS Update 4.2203.2.32",
+ "state": "Installed",
+ "prerequisites": [
+ {
+ "updateType": "update type",
+ "version": "prerequisite version",
+ "packageName": "update package name"
+ }
+ ],
+ "packagePath": "\\\\SU1FileServer\\SU1_Infrastructure_2\\Updates\\Packages\\Microsoft4.2203.2.32",
+ "packageSizeInMb": 18858,
+ "displayName": "AzS Update - 4.2203.2.32",
+ "version": "4.2203.2.32",
+ "publisher": "Microsoft",
+ "releaseLink": "https://docs.microsoft.com/azure-stack/operator/release-notes?view=azs-2203",
+ "availabilityType": "Local",
+ "packageType": "Infrastructure",
+ "updateStateProperties": {
+ "notifyMessage": "Brief message with instructions for updates of AvailabilityType Notify",
+ "progressPercentage": 0
+ },
+ "additionalProperties": "additional properties"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/InitializeDisableProcess.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/InitializeDisableProcess.json
new file mode 100644
index 000000000000..08c2583cba08
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/InitializeDisableProcess.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses",
+ "Retry-After": 200,
+ "Azure-AsyncOperation": "https://foo.com/operationStatuses"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListArcSettingsByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListArcSettingsByCluster.json
new file mode 100644
index 000000000000..71110f0dc7bf
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListArcSettingsByCluster.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "arcInstanceResourceGroup": "ArcInstance-rg",
+ "aggregateState": "PartiallyConnected",
+ "perNodeDetails": [
+ {
+ "name": "Node-1",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "state": "Connected"
+ },
+ {
+ "name": "Node-2",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2",
+ "state": "Disconnected"
+ }
+ ],
+ "connectivityProperties": {
+ "enabled": false,
+ "serviceConfigurations": [
+ {
+ "serviceName": "WAC",
+ "port": 6516
+ }
+ ]
+ },
+ "defaultExtensions": [
+ {
+ "category": "Telemetry",
+ "consentTime": "2023-01-01T17:18:19.1234567Z"
+ },
+ {
+ "category": "Supportability",
+ "consentTime": null
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersByResourceGroup.json
new file mode 100644
index 000000000000..995186d4f3f5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersByResourceGroup.json
@@ -0,0 +1,131 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster1",
+ "name": "myCluster1",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "NotYetRegistered",
+ "connectivityStatus": "NotYetRegistered",
+ "cloudId": "91c2b355-4826-4e96-9164-e3f26dcf1cdd",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "515da1c2-379e-49b4-9975-09e3e40c86be",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "reportedProperties": {},
+ "trialDaysRemaining": 29,
+ "billingModel": "Trial"
+ }
+ },
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster2",
+ "name": "myCluster2",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "connectivityStatus": "PartiallyConnected",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "clusterType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "oemActivation": "Disabled",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 0,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "oemActivation": "Enabled"
+ },
+ {
+ "name": "Node2",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44BSC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "oemActivation": "Enabled"
+ },
+ {
+ "name": "Node3",
+ "id": 2,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44RFC3",
+ "coreCount": 16,
+ "memoryInGiB": 256,
+ "oemActivation": "Disabled"
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersBySubscription.json
new file mode 100644
index 000000000000..5974e6a2a443
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListClustersBySubscription.json
@@ -0,0 +1,130 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg1/providers/Microsoft.AzureStackHCI/clusters/myCluster1",
+ "name": "myCluster1",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "NotYetRegistered",
+ "connectivityStatus": "NotYetRegistered",
+ "cloudId": "91c2b355-4826-4e96-9164-e3f26dcf1cdd",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "515da1c2-379e-49b4-9975-09e3e40c86be",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "reportedProperties": {},
+ "trialDaysRemaining": 29,
+ "billingModel": "Trial"
+ }
+ },
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg2/providers/Microsoft.AzureStackHCI/clusters/myCluster2",
+ "name": "myCluster2",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "West US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "connectivityStatus": "Connected",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "clusterType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "oemActivation": "Enabled",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 0,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "oemActivation": "Enabled"
+ },
+ {
+ "name": "Node2",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44BSC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "oemActivation": "Enabled"
+ },
+ {
+ "name": "Node3",
+ "id": 2,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44RFC3",
+ "coreCount": 16,
+ "memoryInGiB": 256,
+ "oemActivation": "Enabled"
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListDeploymentSettingsByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListDeploymentSettingsByCluster.json
new file mode 100644
index 000000000000..2ba438d7f393
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListDeploymentSettingsByCluster.json
@@ -0,0 +1,202 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/deploymentSettings/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/clusters/deploymentSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "operationType": "ClusterProvisioning",
+ "deploymentMode": "Deploy",
+ "arcNodeResourceIds": [
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2"
+ ],
+ "deploymentConfiguration": {
+ "version": "string",
+ "scaleUnits": [
+ {
+ "deploymentData": {
+ "securitySettings": {
+ "hvciProtection": true,
+ "drtmProtection": true,
+ "driftControlEnforced": true,
+ "credentialGuardEnforced": false,
+ "smbSigningEnforced": true,
+ "smbClusterEncryption": false,
+ "sideChannelMitigationEnforced": true,
+ "bitlockerBootVolume": true,
+ "bitlockerDataVolumes": true,
+ "wdacEnforced": true
+ },
+ "observability": {
+ "streamingDataClient": true,
+ "euLocation": false,
+ "episodicDataUpload": true
+ },
+ "cluster": {
+ "name": "testHCICluster",
+ "witnessType": "Cloud",
+ "witnessPath": "Cloud",
+ "cloudAccountName": "myasestoragacct",
+ "azureServiceEndpoint": "core.windows.net"
+ },
+ "storage": {
+ "configurationMode": "Express"
+ },
+ "namingPrefix": "ms169",
+ "domainFqdn": "ASZ1PLab8.nttest.microsoft.com",
+ "infrastructureNetwork": [
+ {
+ "subnetMask": "255.255.248.0",
+ "gateway": "255.255.248.0",
+ "ipPools": [
+ {
+ "startingAddress": "10.57.48.60",
+ "endingAddress": "10.57.48.66"
+ }
+ ],
+ "dnsServers": [
+ "10.57.50.90"
+ ]
+ }
+ ],
+ "physicalNodes": [
+ {
+ "name": "ms169host",
+ "ipv4Address": "10.57.51.224"
+ },
+ {
+ "name": "ms154host",
+ "ipv4Address": "10.57.53.236"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "name": "Compute_Management",
+ "trafficType": [
+ "Compute",
+ "Management"
+ ],
+ "adapter": [
+ "Port2"
+ ],
+ "overrideVirtualSwitchConfiguration": false,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": false,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": "7",
+ "priorityValue8021Action_SMB": "3",
+ "bandwidthPercentage_SMB": "50"
+ },
+ "overrideAdapterProperty": false,
+ "adapterPropertyOverrides": {
+ "jumboPacket": "1514",
+ "networkDirect": "Enabled",
+ "networkDirectTechnology": "iWARP"
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "Storage1Network",
+ "networkAdapterName": "Port3",
+ "vlanId": "5",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "string",
+ "ipv4Address": "10.57.48.60",
+ "subnetMask": "255.255.248.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": true,
+ "enableStorageAutoIp": false
+ },
+ "sdnIntegration": {
+ "networkController": {
+ "macAddressPoolStart": "00-0D-3A-1B-C7-21",
+ "macAddressPoolStop": "00-0D-3A-1B-C7-29",
+ "networkVirtualizationEnabled": true
+ }
+ },
+ "adouPath": "OU=ms169,DC=ASZ1PLab8,DC=nttest,DC=microsoft,DC=com",
+ "secretsLocation": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-xxxxxxx/resourceGroups/test-rg/providers/Microsoft.KeyVault/vaults/abcd123",
+ "secrets": [
+ {
+ "secretName": "cluster1-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "BMCAdminUserCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ },
+ {
+ "secretName": "cluster2-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "AzureStackLCMUserCredential",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4c"
+ }
+ ],
+ "optionalServices": {
+ "customLocation": "customLocationName"
+ }
+ },
+ "sbePartnerInfo": {
+ "sbeDeploymentInfo": {
+ "version": "4.0.2309.13",
+ "family": "Gen5",
+ "publisher": "Contoso",
+ "sbeManifestSource": "default",
+ "sbeManifestCreationDate": "2023-07-25T02:40:33Z"
+ },
+ "partnerProperties": [
+ {
+ "name": "EnableBMCIpV6",
+ "value": "false"
+ },
+ {
+ "name": "PhoneHomePort",
+ "value": "1653"
+ },
+ {
+ "name": "BMCSecurityState",
+ "value": "HighSecurity"
+ }
+ ],
+ "credentialList": [
+ {
+ "secretName": "cluster1-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "DownloadConnectorCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListEdgeDevices.json
new file mode 100644
index 000000000000..a7c039e4fbc6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListEdgeDevices.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/providers/Microsoft.AzureStackHCI/edgeDevices/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/edgeDevices",
+ "kind": "HCI",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "reportedProperties": {
+ "networkProfile": {
+ "nicDetails": [
+ {
+ "adapterName": "vmanagement",
+ "interfaceDescription": "Hyper-V Virtual Ethernet Adapter",
+ "componentId": "vms_mp",
+ "driverVersion": "10.0.25398.1",
+ "ip4Address": "192.168.200.92",
+ "subnetMask": "255.255.255.0",
+ "defaultGateway": "192.168.200.1",
+ "dnsServers": [
+ "192.168.200.222"
+ ],
+ "defaultIsolationId": "0",
+ "slot": "0",
+ "macAddress": "000000000041",
+ "switchName": null,
+ "nicType": "Virtual",
+ "vlanId": "0",
+ "nicStatus": "Up"
+ }
+ ],
+ "switchDetails": [
+ {
+ "switchName": "vmanagement",
+ "switchType": "External"
+ }
+ ]
+ },
+ "osProfile": {
+ "bootType": "UEFI",
+ "assemblyVersion": "2402.1"
+ },
+ "sbeDeploymentPackageInfo": {
+ "code": "NewerThanLatestPublished",
+ "message": "The SBE package at path 'C:\\SBE' with version 4.1.2312.10 is published later than the latest SBE manifest published for online discovery. ",
+ "sbeManifest": "PEFwcGxpY2Fi"
+ }
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListExtensionsByArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListExtensionsByArcSetting.json
new file mode 100644
index 000000000000..1756737a0e12
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListExtensionsByArcSetting.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default/extensions/MicrosoftMonitoringAgent",
+ "name": "MicrosoftMonitoringAgent",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings/extensions",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "extensionParameters": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "settings": {
+ "workspaceId": "xx"
+ }
+ },
+ "aggregateState": "PartiallyConnected",
+ "perNodeExtensionDetails": [
+ {
+ "name": "Node-1",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/Extensions/MicrosoftMonitoringAgent",
+ "state": "Connected"
+ },
+ {
+ "name": "Node-2",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/Extensions/MicrosoftMonitoringAgent",
+ "state": "Disconnected"
+ }
+ ],
+ "managedBy": "Azure"
+ }
+ },
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default/Extensions/SecurityExtension",
+ "name": "CustomScriptExtension",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings/extensions",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "extensionParameters": {
+ "publisher": "Microsoft.CustomScriptExtension",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "autoUpgradeMinorVersion": false,
+ "settings": {
+ "scriptLocation": "xx"
+ }
+ },
+ "aggregateState": "PartiallySucceeded",
+ "perNodeExtensionDetails": [
+ {
+ "name": "Node-1",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/Extensions/SecurityExtension",
+ "state": "Succeeded"
+ },
+ {
+ "name": "Node-2",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/Extensions/SecurityExtension",
+ "state": "Failed"
+ }
+ ],
+ "managedBy": "Azure"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByCluster.json
new file mode 100644
index 000000000000..91e190da2926
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByCluster.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1/offers/offer1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers/offers",
+ "name": "offer1",
+ "properties": {
+ "content": "{\"id\":\"canonical.ubuntuserver1404lts-arm-14.04.201808140\",\"displayName\":\"Ubuntu Server 14.04 LTS\",\"publisherId\":\"Canonical\",\"publisherName\":\"Canonical\",\"type\":\"VirtualMachine\",\"version\":\"14.04.201808140\",\"properties\":{\"description\":\"Ubuntu Server 14.04.5 LTS amd64. Ubuntu Server is the world's most popular Linux for cloud environments. Updates and patches for Ubuntu 14.04 LTS will be available until 2019-04-17. Ubuntu Server is the perfect virtual machine (VM) platform for all workloads from web applications to NoSQL databases and Hadoop. For more information see Ubuntu on Azure and using Juju to deploy your workloads.By clicking the Create button, I acknowledge that I am getting this software from Canonical and that the legal terms of Canonical apply to it. Microsoft does not provide rights for third-party software. Also see the privacy statement from Canonical.
\"},\"extendedProperties\":{\"osType\":\"Linux\",\"offer\":\"UbuntuServer\",\"offerVersion\":\"1.0.52\",\"sku\":\"14.04.5-LTS\",\"galleryItemIdentity\":\"Canonical.UbuntuServer1404LTS-ARM.1.0.52\"},\"links\":[{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]}],\"iconUris\":{\"medium\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Medium.png\",\"wide\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Wide.png\",\"large\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Large.png\",\"small\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Small.png\"},\"payloadLength\":32212288276,\"compatibility\":{\"isCompatible\":true,\"message\":\"None\",\"description\":\"None\",\"issues\":[]}}",
+ "contentVersion": "2018-01-01",
+ "publisherId": "publisher1",
+ "provisioningState": "Succeeded",
+ "skuMappings": [
+ {
+ "catalogPlanId": "microsoftsqlserver.sql2019-ubuntu2004enterprise-arm",
+ "marketplaceSkuId": "enterprise",
+ "marketplaceSkuVersions": [
+ "15.0.220208"
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByPublisher.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByPublisher.json
new file mode 100644
index 000000000000..8c4ad708cdf5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListOffersByPublisher.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "publisherName": "publisher1",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1/offers/offer1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers/offers",
+ "name": "offer1",
+ "properties": {
+ "content": "{\"id\":\"canonical.ubuntuserver1404lts-arm-14.04.201808140\",\"displayName\":\"Ubuntu Server 14.04 LTS\",\"publisherId\":\"Canonical\",\"publisherName\":\"Canonical\",\"type\":\"VirtualMachine\",\"version\":\"14.04.201808140\",\"properties\":{\"description\":\"Ubuntu Server 14.04.5 LTS amd64. Ubuntu Server is the world's most popular Linux for cloud environments. Updates and patches for Ubuntu 14.04 LTS will be available until 2019-04-17. Ubuntu Server is the perfect virtual machine (VM) platform for all workloads from web applications to NoSQL databases and Hadoop. For more information see Ubuntu on Azure and using Juju to deploy your workloads.By clicking the Create button, I acknowledge that I am getting this software from Canonical and that the legal terms of Canonical apply to it. Microsoft does not provide rights for third-party software. Also see the privacy statement from Canonical.
\"},\"extendedProperties\":{\"osType\":\"Linux\",\"offer\":\"UbuntuServer\",\"offerVersion\":\"1.0.52\",\"sku\":\"14.04.5-LTS\",\"galleryItemIdentity\":\"Canonical.UbuntuServer1404LTS-ARM.1.0.52\"},\"links\":[{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]}],\"iconUris\":{\"medium\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Medium.png\",\"wide\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Wide.png\",\"large\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Large.png\",\"small\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Small.png\"},\"payloadLength\":32212288276,\"compatibility\":{\"isCompatible\":true,\"message\":\"None\",\"description\":\"None\",\"issues\":[]}}",
+ "contentVersion": "2018-01-01",
+ "publisherId": "publisher1",
+ "provisioningState": "Succeeded",
+ "skuMappings": [
+ {
+ "catalogPlanId": "microsoftsqlserver.sql2019-ubuntu2004enterprise-arm",
+ "marketplaceSkuId": "enterprise",
+ "marketplaceSkuVersions": [
+ "15.0.220208"
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListPublishersByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListPublishersByCluster.json
new file mode 100644
index 000000000000..f17a0d7fe0cc
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListPublishersByCluster.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers",
+ "name": "publisher1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSecuritySettingsByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSecuritySettingsByCluster.json
new file mode 100644
index 000000000000..ecfe3d96cdd2
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSecuritySettingsByCluster.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/securitySettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/securitySettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "securedCoreComplianceAssignment": "Audit",
+ "wdacComplianceAssignment": "ApplyAndAutoCorrect",
+ "smbEncryptionForIntraClusterTrafficComplianceAssignment": "Audit",
+ "securityComplianceStatus": {
+ "securedCoreCompliance": "Compliant",
+ "wdacCompliance": "Compliant",
+ "dataAtRestEncrypted": "Compliant",
+ "dataInTransitProtected": "Compliant",
+ "lastUpdated": "2023-11-14T07:09:44.771Z"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSkusByOffer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSkusByOffer.json
new file mode 100644
index 000000000000..556cb55eca03
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListSkusByOffer.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "publisherName": "publisher1",
+ "offerName": "offer1",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/publishers/publisher1/offers/offer1/skus/sku1",
+ "type": "Microsoft.AzureStackHCI/clusters/publishers/offers/skus",
+ "name": "sku1",
+ "properties": {
+ "content": "{\"id\":\"canonical.ubuntuserver1404lts-arm-14.04.201808140\",\"displayName\":\"Ubuntu Server 14.04 LTS\",\"publisherId\":\"Canonical\",\"publisherName\":\"Canonical\",\"type\":\"VirtualMachine\",\"version\":\"14.04.201808140\",\"properties\":{\"description\":\"Ubuntu Server 14.04.5 LTS amd64. Ubuntu Server is the world's most popular Linux for cloud environments. Updates and patches for Ubuntu 14.04 LTS will be available until 2019-04-17. Ubuntu Server is the perfect virtual machine (VM) platform for all workloads from web applications to NoSQL databases and Hadoop. For more information see Ubuntu on Azure and using Juju to deploy your workloads.By clicking the Create button, I acknowledge that I am getting this software from Canonical and that the legal terms of Canonical apply to it. Microsoft does not provide rights for third-party software. Also see the privacy statement from Canonical.
\"},\"extendedProperties\":{\"osType\":\"Linux\",\"offer\":\"UbuntuServer\",\"offerVersion\":\"1.0.52\",\"sku\":\"14.04.5-LTS\",\"galleryItemIdentity\":\"Canonical.UbuntuServer1404LTS-ARM.1.0.52\"},\"links\":[{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]},{\"name\":[],\"uri\":[]}],\"iconUris\":{\"medium\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Medium.png\",\"wide\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Wide.png\",\"large\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Large.png\",\"small\":\"https://azstmktdfwcu001.blob.core.windows.net/icons/e5da743bb86d4d429320a75bfa5b96b8/Small.png\"},\"payloadLength\":32212288276,\"compatibility\":{\"isCompatible\":true,\"message\":\"None\",\"description\":\"None\",\"issues\":[]}}",
+ "contentVersion": "2018-01-01",
+ "publisherId": "publisher1",
+ "offerId": "offer1",
+ "skuMappings": [
+ {
+ "catalogPlanId": "microsoftsqlserver.sql2019-ubuntu2004enterprise-arm",
+ "marketplaceSkuId": "enterprise",
+ "marketplaceSkuVersions": [
+ "15.0.220208"
+ ]
+ }
+ ],
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateRuns.json
new file mode 100644
index 000000000000..613008b97733
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateRuns.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updates/Microsoft4.2203.2.32/updateRuns/23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "name": "Microsoft4.2203.2.32/23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "type": "Microsoft.AzureStackHCI/updates/updateRuns",
+ "location": "West US",
+ "properties": {
+ "progress": {
+ "name": "Unnamed step",
+ "description": "Update Azure Stack.",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "steps": [
+ {
+ "name": "PreUpdate Cloud",
+ "description": "Prepare for SSU update",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "steps": []
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateSummaries.json
new file mode 100644
index 000000000000..379ecf3b2c18
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdateSummaries.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updateSummaries/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/updateSummaries",
+ "location": "West US",
+ "properties": {
+ "oemFamily": "DellEMC",
+ "hardwareModel": "PowerEdge R730xd",
+ "packageVersions": [
+ {
+ "packageType": "OEM",
+ "version": "2.2.2108.6",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ },
+ {
+ "packageType": "Services",
+ "version": "4.2203.2.32",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ },
+ {
+ "packageType": "Infrastructure",
+ "version": "4.2203.2.32",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ }
+ ],
+ "currentVersion": "4.2203.2.32",
+ "state": "AppliedSuccessfully"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdates.json
new file mode 100644
index 000000000000..30d26547faab
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ListUpdates.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updates/Microsoft4.2203.2.32",
+ "name": "Microsoft4.2203.2.32",
+ "type": " Microsoft. AzureStackHCI/updates",
+ "location": "West US",
+ "properties": {
+ "installedDate": "2022-04-06T14:08:18.254Z",
+ "description": "AzS Update 4.2203.2.32",
+ "state": "Installed",
+ "prerequisites": [
+ {
+ "updateType": "update type",
+ "version": "prerequisite version",
+ "packageName": "update package name"
+ }
+ ],
+ "packagePath": "\\\\SU1FileServer\\SU1_Infrastructure_2\\Updates\\Packages\\Microsoft4.2203.2.32",
+ "packageSizeInMb": 18858,
+ "displayName": "AzS Update - 4.2203.2.32",
+ "version": "4.2203.2.32",
+ "publisher": "Microsoft",
+ "releaseLink": "https://docs.microsoft.com/azure-stack/operator/release-notes?view=azs-2203",
+ "availabilityType": "Local",
+ "packageType": "Infrastructure",
+ "updateStateProperties": {
+ "notifyMessage": "Brief message with instructions for updates of AvailabilityType Notify",
+ "progressPercentage": 0
+ },
+ "additionalProperties": "additional properties"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchArcSetting.json
new file mode 100644
index 000000000000..bb512a9ce3f9
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchArcSetting.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "arcSetting": {
+ "properties": {
+ "connectivityProperties": {
+ "enabled": true,
+ "serviceConfigurations": [
+ {
+ "serviceName": "WAC",
+ "port": 6516
+ }
+ ]
+ }
+ }
+ },
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "arcInstanceResourceGroup": "ArcInstance-rg",
+ "aggregateState": "Creating",
+ "connectivityProperties": {
+ "enabled": true,
+ "serviceConfigurations": [
+ {
+ "serviceName": "WAC",
+ "port": 6516
+ }
+ ]
+ },
+ "perNodeDetails": [
+ {
+ "name": "Node-1",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "state": "Creating"
+ },
+ {
+ "name": "Node-2",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2",
+ "state": "Creating"
+ }
+ ],
+ "defaultExtensions": [
+ {
+ "category": "Telemetry",
+ "consentTime": "2023-01-01T17:18:19.1234567Z"
+ },
+ {
+ "category": "Supportability",
+ "consentTime": null
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchExtension.json
new file mode 100644
index 000000000000..c13f68ed62ae
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PatchExtension.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "extensionName": "MicrosoftMonitoringAgent",
+ "extension": {
+ "properties": {
+ "extensionParameters": {
+ "typeHandlerVersion": "1.10",
+ "enableAutomaticUpgrade": false,
+ "settings": {
+ "workspaceId": "xx"
+ },
+ "protectedSettings": {
+ "workspaceKey": "xx"
+ }
+ }
+ }
+ },
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default/extensions/MicrosoftMonitoringAgent",
+ "name": "MicrosoftMonitoringAgent",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings/extensions",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "extensionParameters": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10",
+ "enableAutomaticUpgrade": false,
+ "autoUpgradeMinorVersion": false,
+ "settings": {
+ "workspaceId": "xx"
+ }
+ },
+ "aggregateState": "PartiallyConnected",
+ "perNodeExtensionDetails": [
+ {
+ "name": "Node-1",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/Extensions/MicrosoftMonitoringAgent",
+ "state": "Connected",
+ "typeHandlerVersion": "1.10.0",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.0",
+ "status": {
+ "code": "success",
+ "level": "Information",
+ "displayStatus": "Provisioning succeeded",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ },
+ {
+ "name": "Node-2",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/Extensions/MicrosoftMonitoringAgent",
+ "state": "Disconnected",
+ "typeHandlerVersion": "1.10.3",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.3",
+ "status": {
+ "code": "error",
+ "level": "Error",
+ "displayStatus": "Provisioning failed",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ }
+ ],
+ "managedBy": "User"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PostUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PostUpdates.json
new file mode 100644
index 000000000000..5a6c208aa84c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PostUpdates.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://foo.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutArcSetting.json
new file mode 100644
index 000000000000..246998827819
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutArcSetting.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "arcSetting": {},
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "arcInstanceResourceGroup": "ArcInstance-rg",
+ "aggregateState": "Creating",
+ "perNodeDetails": [
+ {
+ "name": "Node-1",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "state": "Creating"
+ },
+ {
+ "name": "Node-2",
+ "arcInstance": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2",
+ "state": "Creating"
+ }
+ ],
+ "connectivityProperties": {
+ "enabled": false,
+ "serviceConfigurations": []
+ },
+ "defaultExtensions": [
+ {
+ "category": "Telemetry",
+ "consentTime": "2023-01-01T17:18:19.1234567Z"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutDeploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutDeploymentSettings.json
new file mode 100644
index 000000000000..8858205cbe50
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutDeploymentSettings.json
@@ -0,0 +1,730 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "deploymentSettingsName": "default",
+ "api-version": "2024-12-01-preview",
+ "resource": {
+ "properties": {
+ "operationType": "ClusterProvisioning",
+ "deploymentMode": "Deploy",
+ "arcNodeResourceIds": [
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2"
+ ],
+ "deploymentConfiguration": {
+ "version": "string",
+ "scaleUnits": [
+ {
+ "deploymentData": {
+ "securitySettings": {
+ "hvciProtection": true,
+ "drtmProtection": true,
+ "driftControlEnforced": true,
+ "credentialGuardEnforced": false,
+ "smbSigningEnforced": true,
+ "smbClusterEncryption": false,
+ "sideChannelMitigationEnforced": true,
+ "bitlockerBootVolume": true,
+ "bitlockerDataVolumes": true,
+ "wdacEnforced": true
+ },
+ "observability": {
+ "streamingDataClient": true,
+ "euLocation": false,
+ "episodicDataUpload": true
+ },
+ "cluster": {
+ "name": "testHCICluster",
+ "witnessType": "Cloud",
+ "witnessPath": "Cloud",
+ "cloudAccountName": "myasestoragacct",
+ "azureServiceEndpoint": "core.windows.net",
+ "hardwareClass": "Medium"
+ },
+ "storage": {
+ "configurationMode": "Express"
+ },
+ "namingPrefix": "ms169",
+ "domainFqdn": "ASZ1PLab8.nttest.microsoft.com",
+ "infrastructureNetwork": [
+ {
+ "subnetMask": "255.255.248.0",
+ "gateway": "255.255.248.0",
+ "ipPools": [
+ {
+ "startingAddress": "10.57.48.60",
+ "endingAddress": "10.57.48.66"
+ }
+ ],
+ "dnsServers": [
+ "10.57.50.90"
+ ]
+ }
+ ],
+ "physicalNodes": [
+ {
+ "name": "ms169host",
+ "ipv4Address": "10.57.51.224"
+ },
+ {
+ "name": "ms154host",
+ "ipv4Address": "10.57.53.236"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "name": "Compute_Management",
+ "trafficType": [
+ "Compute",
+ "Management"
+ ],
+ "adapter": [
+ "Port2"
+ ],
+ "overrideVirtualSwitchConfiguration": false,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": false,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": "7",
+ "priorityValue8021Action_SMB": "3",
+ "bandwidthPercentage_SMB": "50"
+ },
+ "overrideAdapterProperty": false,
+ "adapterPropertyOverrides": {
+ "jumboPacket": "1514",
+ "networkDirect": "Enabled",
+ "networkDirectTechnology": "iWARP"
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "Storage1Network",
+ "networkAdapterName": "Port3",
+ "vlanId": "5",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "string",
+ "ipv4Address": "10.57.48.60",
+ "subnetMask": "255.255.248.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": true,
+ "enableStorageAutoIp": false
+ },
+ "sdnIntegration": {
+ "networkController": {
+ "macAddressPoolStart": "00-0D-3A-1B-C7-21",
+ "macAddressPoolStop": "00-0D-3A-1B-C7-29",
+ "networkVirtualizationEnabled": true
+ }
+ },
+ "adouPath": "OU=ms169,DC=ASZ1PLab8,DC=nttest,DC=microsoft,DC=com",
+ "secretsLocation": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-xxxxxxx/resourceGroups/test-rg/providers/Microsoft.KeyVault/vaults/abcd123",
+ "secrets": [
+ {
+ "secretName": "cluster1-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "BMCAdminUserCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ },
+ {
+ "secretName": "cluster2-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "AzureStackLCMUserCredential",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4c"
+ }
+ ],
+ "optionalServices": {
+ "customLocation": "customLocationName"
+ }
+ },
+ "sbePartnerInfo": {
+ "sbeDeploymentInfo": {
+ "version": "4.0.2309.13",
+ "family": "Gen5",
+ "publisher": "Contoso",
+ "sbeManifestSource": "default",
+ "sbeManifestCreationDate": "2023-07-25T02:40:33Z"
+ },
+ "partnerProperties": [
+ {
+ "name": "EnableBMCIpV6",
+ "value": "false"
+ },
+ {
+ "name": "PhoneHomePort",
+ "value": "1653"
+ },
+ {
+ "name": "BMCSecurityState",
+ "value": "HighSecurity"
+ }
+ ],
+ "credentialList": [
+ {
+ "secretName": "cluster1-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "DownloadConnectorCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/deploymentSettings/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/clusters/deploymentSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentMode": "Deploy",
+ "arcNodeResourceIds": [
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2"
+ ],
+ "deploymentConfiguration": {
+ "version": "string",
+ "scaleUnits": [
+ {
+ "deploymentData": {
+ "securitySettings": {
+ "hvciProtection": true,
+ "drtmProtection": true,
+ "driftControlEnforced": true,
+ "credentialGuardEnforced": false,
+ "smbSigningEnforced": true,
+ "smbClusterEncryption": false,
+ "sideChannelMitigationEnforced": true,
+ "bitlockerBootVolume": true,
+ "bitlockerDataVolumes": true,
+ "wdacEnforced": true
+ },
+ "observability": {
+ "streamingDataClient": true,
+ "euLocation": false,
+ "episodicDataUpload": true
+ },
+ "cluster": {
+ "name": "testHCICluster",
+ "witnessType": "Cloud",
+ "witnessPath": "Cloud",
+ "cloudAccountName": "myasestoragacct",
+ "azureServiceEndpoint": "core.windows.net"
+ },
+ "storage": {
+ "configurationMode": "Express"
+ },
+ "namingPrefix": "ms169",
+ "domainFqdn": "ASZ1PLab8.nttest.microsoft.com",
+ "infrastructureNetwork": [
+ {
+ "subnetMask": "255.255.248.0",
+ "gateway": "255.255.248.0",
+ "ipPools": [
+ {
+ "startingAddress": "10.57.48.60",
+ "endingAddress": "10.57.48.66"
+ }
+ ],
+ "dnsServers": [
+ "10.57.50.90"
+ ]
+ }
+ ],
+ "physicalNodes": [
+ {
+ "name": "ms169host",
+ "ipv4Address": "10.57.51.224"
+ },
+ {
+ "name": "ms154host",
+ "ipv4Address": "10.57.53.236"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "name": "Compute_Management",
+ "trafficType": [
+ "Compute",
+ "Management"
+ ],
+ "adapter": [
+ "Port2"
+ ],
+ "overrideVirtualSwitchConfiguration": false,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": false,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": "7",
+ "priorityValue8021Action_SMB": "3",
+ "bandwidthPercentage_SMB": "50"
+ },
+ "overrideAdapterProperty": false,
+ "adapterPropertyOverrides": {
+ "jumboPacket": "1514",
+ "networkDirect": "Enabled",
+ "networkDirectTechnology": "iWARP"
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "Storage1Network",
+ "networkAdapterName": "Port3",
+ "vlanId": "5",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "string",
+ "ipv4Address": "10.57.48.60",
+ "subnetMask": "255.255.248.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": true,
+ "enableStorageAutoIp": false
+ },
+ "sdnIntegration": {
+ "networkController": {
+ "macAddressPoolStart": "00-0D-3A-1B-C7-21",
+ "macAddressPoolStop": "00-0D-3A-1B-C7-29",
+ "networkVirtualizationEnabled": true
+ }
+ },
+ "adouPath": "OU=ms169,DC=ASZ1PLab8,DC=nttest,DC=microsoft,DC=com",
+ "secretsLocation": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-xxxxxxx/resourceGroups/test-rg/providers/Microsoft.KeyVault/vaults/abcd123",
+ "secrets": [
+ {
+ "secretName": "cluster1-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "BMCAdminUserCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ },
+ {
+ "secretName": "cluster2-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "AzureStackLCMUserCredential",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4c"
+ }
+ ],
+ "optionalServices": {
+ "customLocation": "customLocationName"
+ }
+ },
+ "sbePartnerInfo": {
+ "sbeDeploymentInfo": {
+ "version": "4.0.2309.13",
+ "family": "Gen5",
+ "publisher": "Contoso",
+ "sbeManifestSource": "default",
+ "sbeManifestCreationDate": "2023-07-25T02:40:33Z"
+ },
+ "partnerProperties": [
+ {
+ "name": "EnableBMCIpV6",
+ "value": "false"
+ },
+ {
+ "name": "PhoneHomePort",
+ "value": "1653"
+ },
+ {
+ "name": "BMCSecurityState",
+ "value": "HighSecurity"
+ }
+ ],
+ "credentialList": [
+ {
+ "secretName": "cluster1-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "DownloadConnectorCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "reportedProperties": {
+ "validationStatus": {
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0",
+ "name": "Cloud Deployment",
+ "description": "Deploy Cloud.",
+ "startTimeUtc": "2023-06-09T00:08:19",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": [
+ {
+ "fullStepIndex": "0.1",
+ "name": "Before Cloud Deployment",
+ "description": "Before Cloud Deployment",
+ "startTimeUtc": "2023-06-09T00:08:23",
+ "endTimeUtc": "2023-06-09T01:10:10",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": []
+ },
+ {
+ "fullStepIndex": "0.36",
+ "name": "Clean up temporary content",
+ "description": "Clean up temporary content",
+ "startTimeUtc": "2023-06-09T03:58:37",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": []
+ }
+ ]
+ }
+ ]
+ },
+ "deploymentStatus": {
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0",
+ "name": "Cloud Deployment",
+ "description": "Deploy Cloud.",
+ "startTimeUtc": "2023-06-09T00:08:19",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": [
+ {
+ "fullStepIndex": "0.1",
+ "name": "Before Cloud Deployment",
+ "description": null,
+ "startTimeUtc": "2023-06-09T00:08:23",
+ "endTimeUtc": "2023-06-09T01:10:10",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": []
+ },
+ {
+ "fullStepIndex": "0.36",
+ "name": "Clean up temporary content",
+ "description": null,
+ "startTimeUtc": "2023-06-09T03:58:37",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": []
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/deploymentSettings/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/clusters/deploymentSettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "deploymentMode": "Deploy",
+ "arcNodeResourceIds": [
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2"
+ ],
+ "deploymentConfiguration": {
+ "version": "string",
+ "scaleUnits": [
+ {
+ "deploymentData": {
+ "securitySettings": {
+ "hvciProtection": true,
+ "drtmProtection": true,
+ "driftControlEnforced": true,
+ "credentialGuardEnforced": false,
+ "smbSigningEnforced": true,
+ "smbClusterEncryption": false,
+ "sideChannelMitigationEnforced": true,
+ "bitlockerBootVolume": true,
+ "bitlockerDataVolumes": true,
+ "wdacEnforced": true
+ },
+ "observability": {
+ "streamingDataClient": true,
+ "euLocation": false,
+ "episodicDataUpload": true
+ },
+ "cluster": {
+ "name": "testHCICluster",
+ "witnessType": "Cloud",
+ "witnessPath": "Cloud",
+ "cloudAccountName": "myasestoragacct",
+ "azureServiceEndpoint": "core.windows.net"
+ },
+ "storage": {
+ "configurationMode": "Express"
+ },
+ "namingPrefix": "ms169",
+ "domainFqdn": "ASZ1PLab8.nttest.microsoft.com",
+ "infrastructureNetwork": [
+ {
+ "subnetMask": "255.255.248.0",
+ "gateway": "255.255.248.0",
+ "ipPools": [
+ {
+ "startingAddress": "10.57.48.60",
+ "endingAddress": "10.57.48.66"
+ }
+ ],
+ "dnsServers": [
+ "10.57.50.90"
+ ]
+ }
+ ],
+ "physicalNodes": [
+ {
+ "name": "ms169host",
+ "ipv4Address": "10.57.51.224"
+ },
+ {
+ "name": "ms154host",
+ "ipv4Address": "10.57.53.236"
+ }
+ ],
+ "hostNetwork": {
+ "intents": [
+ {
+ "name": "Compute_Management",
+ "trafficType": [
+ "Compute",
+ "Management"
+ ],
+ "adapter": [
+ "Port2"
+ ],
+ "overrideVirtualSwitchConfiguration": false,
+ "virtualSwitchConfigurationOverrides": {
+ "enableIov": "True",
+ "loadBalancingAlgorithm": "HyperVPort"
+ },
+ "overrideQosPolicy": false,
+ "qosPolicyOverrides": {
+ "priorityValue8021Action_Cluster": "7",
+ "priorityValue8021Action_SMB": "3",
+ "bandwidthPercentage_SMB": "50"
+ },
+ "overrideAdapterProperty": false,
+ "adapterPropertyOverrides": {
+ "jumboPacket": "1514",
+ "networkDirect": "Enabled",
+ "networkDirectTechnology": "iWARP"
+ }
+ }
+ ],
+ "storageNetworks": [
+ {
+ "name": "Storage1Network",
+ "networkAdapterName": "Port3",
+ "vlanId": "5",
+ "storageAdapterIPInfo": [
+ {
+ "physicalNode": "string",
+ "ipv4Address": "10.57.48.60",
+ "subnetMask": "255.255.248.0"
+ }
+ ]
+ }
+ ],
+ "storageConnectivitySwitchless": true,
+ "enableStorageAutoIp": false
+ },
+ "sdnIntegration": {
+ "networkController": {
+ "macAddressPoolStart": "00-0D-3A-1B-C7-21",
+ "macAddressPoolStop": "00-0D-3A-1B-C7-29",
+ "networkVirtualizationEnabled": true
+ }
+ },
+ "adouPath": "OU=ms169,DC=ASZ1PLab8,DC=nttest,DC=microsoft,DC=com",
+ "secretsLocation": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-xxxxxxx/resourceGroups/test-rg/providers/Microsoft.KeyVault/vaults/abcd123",
+ "secrets": [
+ {
+ "secretName": "cluster1-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "BMCAdminUserCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-BmcAdminUser-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ },
+ {
+ "secretName": "cluster2-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "AzureStackLCMUserCredential",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-AzureStackLCMUserCredential-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4c"
+ }
+ ],
+ "optionalServices": {
+ "customLocation": "customLocationName"
+ }
+ },
+ "sbePartnerInfo": {
+ "sbeDeploymentInfo": {
+ "version": "4.0.2309.13",
+ "family": "Gen5",
+ "publisher": "Contoso",
+ "sbeManifestSource": "default",
+ "sbeManifestCreationDate": "2023-07-25T02:40:33Z"
+ },
+ "partnerProperties": [
+ {
+ "name": "EnableBMCIpV6",
+ "value": "false"
+ },
+ {
+ "name": "PhoneHomePort",
+ "value": "1653"
+ },
+ {
+ "name": "BMCSecurityState",
+ "value": "HighSecurity"
+ }
+ ],
+ "credentialList": [
+ {
+ "secretName": "cluster1-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63",
+ "eceSecretName": "DownloadConnectorCred",
+ "secretLocation": "https://sclusterkvnirhci35.vault.azure.net/secrets/cluster-34232342-DownloadConnectorCred-f5bcc1d9-23af-4ae9-aca1-041d0f593a63/9276354aabfc492fa9b2cdbefb54ae4b"
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "reportedProperties": {
+ "validationStatus": {
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0",
+ "name": "Cloud Deployment",
+ "description": "Deploy Cloud.",
+ "startTimeUtc": "2023-06-09T00:08:19",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0.1",
+ "name": "Before Cloud Deployment",
+ "description": "Before Cloud Deployment",
+ "startTimeUtc": "2023-06-09T00:08:23",
+ "endTimeUtc": "2023-06-09T01:10:10"
+ },
+ {
+ "fullStepIndex": "0.36",
+ "name": "Clean up temporary content",
+ "description": "Clean up temporary content",
+ "startTimeUtc": "2023-06-09T03:58:37",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "deploymentStatus": {
+ "status": "Error",
+ "steps": [
+ {
+ "fullStepIndex": "0",
+ "name": "Cloud Deployment",
+ "description": "Deploy Cloud.",
+ "startTimeUtc": "2023-06-09T00:08:19",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": [
+ {
+ "fullStepIndex": "0.1",
+ "name": "Before Cloud Deployment",
+ "description": "Before Cloud Deployment",
+ "startTimeUtc": "2023-06-09T00:08:23",
+ "endTimeUtc": "2023-06-09T01:10:10",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": []
+ },
+ {
+ "fullStepIndex": "0.36",
+ "name": "Clean up temporary content",
+ "description": "Clean up temporary content",
+ "startTimeUtc": "2023-06-09T03:58:37",
+ "endTimeUtc": "2023-06-09T04:01:47",
+ "status": "Error",
+ "exception": [
+ "exception1",
+ "exception2"
+ ],
+ "steps": []
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutExtension.json
new file mode 100644
index 000000000000..93e62866ea76
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutExtension.json
@@ -0,0 +1,164 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "arcSettingName": "default",
+ "extensionName": "MicrosoftMonitoringAgent",
+ "extension": {
+ "properties": {
+ "extensionParameters": {
+ "publisher": "Microsoft.Compute",
+ "typeHandlerVersion": "1.10",
+ "type": "MicrosoftMonitoringAgent",
+ "enableAutomaticUpgrade": false,
+ "settings": {
+ "workspaceId": "xx"
+ },
+ "protectedSettings": {
+ "workspaceKey": "xx"
+ }
+ }
+ }
+ },
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default/extensions/MicrosoftMonitoringAgent",
+ "name": "MicrosoftMonitoringAgent",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings/extensions",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "extensionParameters": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "enableAutomaticUpgrade": false,
+ "autoUpgradeMinorVersion": false,
+ "settings": {
+ "workspaceId": "xx"
+ }
+ },
+ "aggregateState": "PartiallySucceeded",
+ "perNodeExtensionDetails": [
+ {
+ "name": "Node-1",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/Extensions/MicrosoftMonitoringAgent",
+ "state": "Succeeded",
+ "typeHandlerVersion": "1.10.0",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.0",
+ "status": {
+ "code": "success",
+ "level": "Information",
+ "displayStatus": "Provisioning succeeded",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ },
+ {
+ "name": "Node-2",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/Extensions/MicrosoftMonitoringAgent",
+ "state": "Failed",
+ "typeHandlerVersion": "1.10.3",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.3",
+ "status": {
+ "code": "error",
+ "level": "Error",
+ "displayStatus": "Provisioning failed",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ }
+ ],
+ "managedBy": "User"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/arcSettings/default/extensions/MicrosoftMonitoringAgent",
+ "name": "MicrosoftMonitoringAgent",
+ "type": "Microsoft.AzureStackHCI/clusters/arcSettings/extensions",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "extensionParameters": {
+ "publisher": "Microsoft.Compute",
+ "type": "string",
+ "typeHandlerVersion": "1.10.3",
+ "enableAutomaticUpgrade": false,
+ "autoUpgradeMinorVersion": false,
+ "settings": {
+ "workspaceId": "xx"
+ }
+ },
+ "aggregateState": "PartiallySucceeded",
+ "perNodeExtensionDetails": [
+ {
+ "name": "Node-1",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/Extensions/MicrosoftMonitoringAgent",
+ "state": "Succeeded",
+ "typeHandlerVersion": "1.10.0",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.0",
+ "status": {
+ "code": "success",
+ "level": "Information",
+ "displayStatus": "Provisioning succeeded",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ },
+ {
+ "name": "Node-2",
+ "extension": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/Extensions/MicrosoftMonitoringAgent",
+ "state": "Failed",
+ "typeHandlerVersion": "1.10.3",
+ "instanceView": {
+ "name": "MicrosoftMonitoringAgent",
+ "type": "MicrosoftMonitoringAgent",
+ "typeHandlerVersion": "1.10.3",
+ "status": {
+ "code": "error",
+ "level": "Error",
+ "displayStatus": "Provisioning failed",
+ "message": "Finished executing command, StdOut: , StdErr:",
+ "time": "2019-08-08T20:42:10.999Z"
+ }
+ }
+ }
+ ],
+ "managedBy": "User"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutSecuritySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutSecuritySettings.json
new file mode 100644
index 000000000000..d3d85ef43075
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutSecuritySettings.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "securitySettingsName": "default",
+ "api-version": "2024-12-01-preview",
+ "resource": {
+ "properties": {
+ "securedCoreComplianceAssignment": "Audit",
+ "wdacComplianceAssignment": "ApplyAndAutoCorrect",
+ "smbEncryptionForIntraClusterTrafficComplianceAssignment": "Audit"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/securitySettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/securitySettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "securedCoreComplianceAssignment": "Audit",
+ "wdacComplianceAssignment": "ApplyAndAutoCorrect",
+ "smbEncryptionForIntraClusterTrafficComplianceAssignment": "Audit",
+ "securityComplianceStatus": {
+ "securedCoreCompliance": "Compliant",
+ "wdacCompliance": "Compliant",
+ "dataAtRestEncrypted": "Compliant",
+ "dataInTransitProtected": "Compliant",
+ "lastUpdated": "2023-11-14T07:09:44.771Z"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster/securitySettings/default",
+ "type": "Microsoft.AzureStackHCI/clusters/securitySettings",
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "securedCoreComplianceAssignment": "Audit",
+ "wdacComplianceAssignment": "ApplyAndAutoCorrect",
+ "smbEncryptionForIntraClusterTrafficComplianceAssignment": "Audit",
+ "securityComplianceStatus": {
+ "securedCoreCompliance": "Compliant",
+ "wdacCompliance": "Compliant",
+ "dataAtRestEncrypted": "Compliant",
+ "dataInTransitProtected": "Compliant",
+ "lastUpdated": "2023-11-14T07:09:44.771Z"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateRuns.json
new file mode 100644
index 000000000000..f6b1fa934155
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateRuns.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "updateRunName": "23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "api-version": "2024-12-01-preview",
+ "updateRunsProperties": {
+ "properties": {
+ "progress": {
+ "name": "Unnamed step",
+ "description": "Update Azure Stack.",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "steps": [
+ {
+ "name": "PreUpdate Cloud",
+ "description": "Prepare for SSU update",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "steps": []
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updates/Microsoft4.2203.2.32/updateRuns/23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "name": "Microsoft4.2203.2.32/23b779ba-0d52-4a80-8571-45ca74664ec3",
+ "type": "Microsoft.AzureStackHCI/updates/updateRuns",
+ "location": "West US",
+ "properties": {
+ "progress": {
+ "name": "Unnamed step",
+ "description": "Update Azure Stack.",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T13:58:42.969006+00:00",
+ "steps": [
+ {
+ "name": "PreUpdate Cloud",
+ "description": "Prepare for SSU update",
+ "errorMessage": "",
+ "status": "Success",
+ "startTimeUtc": "2022-04-06T01:36:33.3876751+00:00",
+ "endTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "lastUpdatedTimeUtc": "2022-04-06T01:37:16.8728314+00:00",
+ "steps": []
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateSummaries.json
new file mode 100644
index 000000000000..6bea923b20b3
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdateSummaries.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "api-version": "2024-12-01-preview",
+ "updateLocationProperties": {
+ "properties": {
+ "oemFamily": "DellEMC",
+ "hardwareModel": "PowerEdge R730xd",
+ "lastChecked": "2022-04-07T18:04:07Z",
+ "currentVersion": "4.2203.2.32",
+ "lastUpdated": "2022-04-06T14:08:18.254Z",
+ "state": "AppliedSuccessfully"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updateSummaries/default",
+ "name": "default",
+ "type": "Microsoft.AzureStackHCI/updateSummaries",
+ "location": "West US",
+ "properties": {
+ "oemFamily": "DellEMC",
+ "hardwareModel": "PowerEdge R730xd",
+ "packageVersions": [
+ {
+ "packageType": "OEM",
+ "version": "2.2.2108.6",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ },
+ {
+ "packageType": "Services",
+ "version": "4.2203.2.32",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ },
+ {
+ "packageType": "Infrastructure",
+ "version": "4.2203.2.32",
+ "lastUpdated": "2022-04-07T18:04:07Z"
+ }
+ ],
+ "currentVersion": "4.2203.2.32",
+ "state": "AppliedSuccessfully"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdates.json
new file mode 100644
index 000000000000..80e79d15d757
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/PutUpdates.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712",
+ "resourceGroupName": "testrg",
+ "clusterName": "testcluster",
+ "updateName": "Microsoft4.2203.2.32",
+ "api-version": "2024-12-01-preview",
+ "updateProperties": {
+ "properties": {
+ "installedDate": "2022-04-06T14:08:18.254Z",
+ "description": "AzS Update 4.2203.2.32",
+ "state": "Installed",
+ "prerequisites": [
+ {
+ "updateType": "update type",
+ "version": "prerequisite version",
+ "packageName": "update package name"
+ }
+ ],
+ "packagePath": "\\\\SU1FileServer\\SU1_Infrastructure_2\\Updates\\Packages\\Microsoft4.2203.2.32",
+ "packageSizeInMb": 18858,
+ "displayName": "AzS Update - 4.2203.2.32",
+ "version": "4.2203.2.32",
+ "publisher": "Microsoft",
+ "releaseLink": "https://docs.microsoft.com/azure-stack/operator/release-notes?view=azs-2203",
+ "availabilityType": "Local",
+ "packageType": "Infrastructure",
+ "updateStateProperties": {
+ "notifyMessage": "Brief message with instructions for updates of AvailabilityType Notify",
+ "progressPercentage": 0
+ },
+ "additionalProperties": "additional properties"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/b8d594e5-51f3-4c11-9c54-a7771b81c712/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/clusters/testcluster/updates/Microsoft4.2203.2.32",
+ "name": "Microsoft4.2203.2.32",
+ "type": "Microsoft.AzureStackHCI/updates",
+ "location": "West US",
+ "properties": {
+ "installedDate": "2022-04-06T14:08:18.254Z",
+ "description": "AzS Update 4.2203.2.32",
+ "state": "Installed",
+ "prerequisites": [
+ {
+ "updateType": "update type",
+ "version": "prerequisite version",
+ "packageName": "update package name"
+ }
+ ],
+ "packagePath": "\\\\SU1FileServer\\SU1_Infrastructure_2\\Updates\\Packages\\Microsoft4.2203.2.32",
+ "packageSizeInMb": 18858,
+ "displayName": "AzS Update - 4.2203.2.32",
+ "version": "4.2203.2.32",
+ "publisher": "Microsoft",
+ "releaseLink": "https://docs.microsoft.com/azure-stack/operator/release-notes?view=azs-2203",
+ "availabilityType": "Local",
+ "packageType": "Infrastructure",
+ "updateStateProperties": {
+ "notifyMessage": "Brief message with instructions for updates of AvailabilityType Notify",
+ "progressPercentage": 0
+ },
+ "additionalProperties": "additional properties"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/TriggerLogCollection.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/TriggerLogCollection.json
new file mode 100644
index 000000000000..d0e510ffe8d5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/TriggerLogCollection.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "mycluster",
+ "api-version": "2024-12-01-preview",
+ "logCollectionRequest": {
+ "properties": {
+ "fromDate": "2020-01-01T17:18:19.1234567Z",
+ "toDate": "2021-01-01T17:18:19.1234567Z"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "tags": {},
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "cloudId": "a3c0468f-e38e-4dda-ac48-817f620536f0",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "24a6e53d-04e5-44d2-b7cc-1b732a847dfc",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "logCollectionProperties": {
+ "fromDate": "2020-01-01T17:18:19.1234567Z",
+ "toDate": "2021-01-01T17:18:19.1234567Z",
+ "lastLogGenerated": "2020-01-01T17:18:19.1234567Z",
+ "logCollectionSessionDetails": [
+ {
+ "logStartTime": "2020-01-01T17:18:19.1234567Z",
+ "logEndTime": "2020-01-01T17:18:19.1234567Z",
+ "timeCollected": "2020-01-01T17:18:19.1234567Z",
+ "logSize": 1000,
+ "logCollectionStatus": "Succeeded",
+ "correlationId": "a76ab33a-1819-4e82-1212-e3e4ec3d1425",
+ "logCollectionJobType": "OnDemand",
+ "endTimeCollected": "2020-01-01T17:25:19.1234567Z"
+ }
+ ]
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "nodeType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UpdateCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UpdateCluster.json
new file mode 100644
index 000000000000..30896230ae0c
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UpdateCluster.json
@@ -0,0 +1,125 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview",
+ "cluster": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "properties": {
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ }
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.AzureStackHCI/clusters/myCluster",
+ "name": "myCluster",
+ "type": "Microsoft.AzureStackHCI/clusters",
+ "location": "East US",
+ "identity": {
+ "principalId": "87a834db-2e45-409e-911b-e16a44562ec3",
+ "tenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "type": "SystemAssigned"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ },
+ "properties": {
+ "provisioningState": "Succeeded",
+ "status": "ConnectedRecently",
+ "connectivityStatus": "Connected",
+ "cloudId": "91c2b355-4826-4e96-9164-e3f26dcf1cdd",
+ "cloudManagementEndpoint": "https://98294836-31be-4668-aeae-698667faf99b.waconazure.com",
+ "aadClientId": "515da1c2-379e-49b4-9975-09e3e40c86be",
+ "aadTenantId": "7e589cc1-a8b6-4dff-91bd-5ec0fa18db94",
+ "desiredProperties": {
+ "windowsServerSubscription": "Enabled",
+ "diagnosticLevel": "Basic"
+ },
+ "isolatedVmAttestationConfiguration": {
+ "attestationResourceId": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/test-rg/providers/Microsoft.Attestation/attestationProviders/testmaa",
+ "relyingPartyServiceEndpoint": "https://azurestackhci.azurefd.net/eastus",
+ "attestationServiceEndpoint": "https://dantestnoauth01.eus.attest.azure.net"
+ },
+ "reportedProperties": {
+ "clusterName": "cluster1",
+ "clusterId": "a76ac23a-1819-4e82-9410-e3e4ec3d1425",
+ "clusterVersion": "10.0.17777",
+ "clusterType": "ThirdParty",
+ "manufacturer": "Dell Inc.",
+ "nodes": [
+ {
+ "name": "Node1",
+ "id": 1,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q45CZC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "lastLicensingTimestamp": "2020-03-11T19:24:42.1946017Z"
+ },
+ {
+ "name": "Node2",
+ "id": 2,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44BSC3",
+ "coreCount": 8,
+ "memoryInGiB": 128,
+ "lastLicensingTimestamp": "2020-03-11T19:24:42.1946017Z"
+ },
+ {
+ "name": "Node3",
+ "id": 3,
+ "windowsServerSubscription": "Enabled",
+ "manufacturer": "Dell Inc.",
+ "model": "EMC AX740",
+ "osName": "Azure Stack HCI",
+ "osVersion": "10.0.17777.1061",
+ "serialNumber": "Q44RFC3",
+ "coreCount": 16,
+ "memoryInGiB": 256,
+ "lastLicensingTimestamp": "2020-03-11T19:24:42.1946017Z"
+ }
+ ],
+ "lastUpdated": "2020-03-11T19:24:42.1946017Z",
+ "imdsAttestation": "Disabled",
+ "diagnosticLevel": "Basic"
+ },
+ "trialDaysRemaining": 30,
+ "billingModel": "Trial",
+ "registrationTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastSyncTimestamp": "2020-03-11T20:44:32.5625121Z",
+ "lastBillingTimestamp": "2020-03-12T08:12:55.2312022Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UploadCertificate.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UploadCertificate.json
new file mode 100644
index 000000000000..72c9b52e8ef3
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/UploadCertificate.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b",
+ "resourceGroupName": "test-rg",
+ "clusterName": "myCluster",
+ "api-version": "2024-12-01-preview",
+ "uploadCertificateRequest": {
+ "properties": {
+ "certificates": [
+ "base64cert",
+ "base64cert"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ValidateEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ValidateEdgeDevices.json
new file mode 100644
index 000000000000..ef428daeddb6
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/examples/ValidateEdgeDevices.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1",
+ "edgeDeviceName": "default",
+ "api-version": "2024-12-01-preview",
+ "ValidateRequest": {
+ "edgeDeviceIds": [
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1/edgeDevices/default",
+ "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-2/edgeDevices/default"
+ ],
+ "additionalInfo": "test"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://foo.com/operationStatuses"
+ }
+ },
+ "200": {
+ "body": {
+ "status": "success"
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/extensions.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/extensions.json
new file mode 100644
index 000000000000..a26212fd0ba3
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/extensions.json
@@ -0,0 +1,707 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions": {
+ "get": {
+ "operationId": "Extensions_ListByArcSetting",
+ "description": "List all Extensions under ArcSetting resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ExtensionList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Extensions under ArcSetting resource": {
+ "$ref": "./examples/ListExtensionsByArcSetting.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions/{extensionName}": {
+ "get": {
+ "operationId": "Extensions_Get",
+ "description": "Get particular Arc Extension of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExtensionNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Extension"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get ArcSettings Extension": {
+ "$ref": "./examples/GetExtension.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Extensions_Create",
+ "description": "Create Extension for HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExtensionNameParameter"
+ },
+ {
+ "name": "extension",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Extension"
+ },
+ "description": "Details of the Machine Extension to be created."
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Succeeded",
+ "schema": {
+ "$ref": "#/definitions/Extension"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Extension"
+ }
+ },
+ "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"
+ },
+ "x-ms-examples": {
+ "Create Arc Extension": {
+ "$ref": "./examples/PutExtension.json"
+ }
+ }
+ },
+ "patch": {
+ "operationId": "Extensions_Update",
+ "description": "Update Extension for HCI cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExtensionNameParameter"
+ },
+ {
+ "name": "extension",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ExtensionPatch"
+ },
+ "description": "Details of the Machine Extension to be created."
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Extension"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "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": "original-uri"
+ },
+ "x-ms-examples": {
+ "Update Arc Extension": {
+ "$ref": "./examples/PatchExtension.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Extensions_Delete",
+ "description": "Delete particular Arc Extension of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExtensionNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "OK"
+ },
+ "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"
+ },
+ "x-ms-examples": {
+ "Delete Arc Extension": {
+ "$ref": "./examples/DeleteExtension.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions/{extensionName}/upgrade": {
+ "post": {
+ "operationId": "Extensions_Upgrade",
+ "description": "Upgrade a particular Arc Extension of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ArcSettingNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ExtensionNameParameter"
+ },
+ {
+ "name": "extensionUpgradeParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ExtensionUpgradeParameters"
+ },
+ "description": "Parameters supplied to the Upgrade Extensions operation."
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted"
+ },
+ "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"
+ },
+ "x-ms-examples": {
+ "Upgrade Machine Extensions": {
+ "$ref": "./examples/Extensions_Upgrade.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Extension": {
+ "description": "Details of a particular extension in HCI Cluster.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Describes Machine Extension Properties.",
+ "$ref": "#/definitions/ExtensionProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ExtensionPatch": {
+ "description": "Extension Details to update",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "description": "Describes Machine Extension Properties that can be updated.",
+ "$ref": "#/definitions/ExtensionPatchProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "ExtensionProperties": {
+ "description": "Status of Arc Extension for a particular node in HCI Cluster.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Extension proxy resource.",
+ "type": "string",
+ "enum": [
+ "NotSpecified",
+ "Error",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Connected",
+ "Disconnected",
+ "Deleted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "PartiallySucceeded",
+ "PartiallyConnected",
+ "InProgress",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "extensionParameters": {
+ "description": "Parameters specific to this extension type.",
+ "$ref": "#/definitions/ExtensionParameters",
+ "x-ms-client-flatten": true
+ },
+ "aggregateState": {
+ "description": "Aggregate state of Arc Extensions across the nodes in this HCI cluster.",
+ "type": "string",
+ "enum": [
+ "NotSpecified",
+ "Error",
+ "Succeeded",
+ "Canceled",
+ "Failed",
+ "Connected",
+ "Disconnected",
+ "Deleted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "PartiallySucceeded",
+ "PartiallyConnected",
+ "InProgress",
+ "Accepted",
+ "Provisioning",
+ "UpgradeFailedRollbackSucceeded"
+ ],
+ "x-ms-enum": {
+ "name": "ExtensionAggregateState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "perNodeExtensionDetails": {
+ "description": "State of Arc Extension in each of the nodes.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PerNodeExtensionState"
+ },
+ "readOnly": true
+ },
+ "managedBy": {
+ "description": "Indicates if the extension is managed by azure or the user.",
+ "type": "string",
+ "enum": [
+ "Azure",
+ "User"
+ ],
+ "x-ms-enum": {
+ "name": "ExtensionManagedBy",
+ "modelAsString": true
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ExtensionPatchProperties": {
+ "description": "Describes Machine Extension Properties that can be updated.",
+ "type": "object",
+ "properties": {
+ "extensionParameters": {
+ "description": "Describes the properties of a Machine Extension that can be updated.",
+ "$ref": "#/definitions/ExtensionPatchParameters"
+ }
+ }
+ },
+ "ExtensionPatchParameters": {
+ "description": "Describes the properties of a Machine Extension that can be updated.",
+ "type": "object",
+ "properties": {
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler. Latest version would be used if not specified."
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version available."
+ },
+ "settings": {
+ "type": "object",
+ "description": "Json formatted public settings for the extension."
+ },
+ "protectedSettings": {
+ "type": "object",
+ "description": "Protected settings (may contain secrets).",
+ "x-ms-secret": true
+ }
+ }
+ },
+ "PerNodeExtensionState": {
+ "description": "Status of Arc Extension for a particular node in HCI Cluster.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the node in HCI Cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "extension": {
+ "description": "Fully qualified resource ID for the particular Arc Extension on this node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler.",
+ "readOnly": true
+ },
+ "state": {
+ "description": "State of Arc Extension in this node.",
+ "type": "string",
+ "enum": [
+ "NotSpecified",
+ "Error",
+ "Succeeded",
+ "Canceled",
+ "Failed",
+ "Connected",
+ "Disconnected",
+ "Deleted",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Moving",
+ "PartiallySucceeded",
+ "PartiallyConnected",
+ "InProgress",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "name": "NodeExtensionState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "instanceView": {
+ "$ref": "#/definitions/ExtensionInstanceView",
+ "description": "The extension instance view.",
+ "readOnly": true
+ }
+ }
+ },
+ "ExtensionList": {
+ "description": "List of Extensions in HCI cluster.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Extensions in HCI cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Extension"
+ },
+ "readOnly": true
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ExtensionParameters": {
+ "description": "Describes the properties of a Machine Extension. This object mirrors the definition in HybridCompute.",
+ "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. Latest version would be used if not specified."
+ },
+ "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": "Protected settings (may contain secrets).",
+ "x-ms-secret": true
+ },
+ "enableAutomaticUpgrade": {
+ "type": "boolean",
+ "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version available."
+ }
+ }
+ },
+ "ExtensionInstanceView": {
+ "type": "object",
+ "description": "Describes the Extension Instance View.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The extension name."
+ },
+ "type": {
+ "type": "string",
+ "description": "Specifies the type of the extension; an example is \"MicrosoftMonitoringAgent\"."
+ },
+ "typeHandlerVersion": {
+ "type": "string",
+ "description": "Specifies the version of the script handler."
+ },
+ "status": {
+ "type": "object",
+ "description": "Instance view status.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "The status code."
+ },
+ "level": {
+ "type": "string",
+ "description": "The level code.",
+ "enum": [
+ "Info",
+ "Warning",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "name": "StatusLevelTypes",
+ "modelAsString": true
+ }
+ },
+ "displayStatus": {
+ "type": "string",
+ "description": "The short localizable label for the status."
+ },
+ "message": {
+ "type": "string",
+ "description": "The detailed status message, including for alerts and error messages."
+ },
+ "time": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The time of the status."
+ }
+ }
+ }
+ }
+ },
+ "ExtensionUpgradeParameters": {
+ "type": "object",
+ "description": "Describes the parameters for Extension upgrade.",
+ "properties": {
+ "targetVersion": {
+ "type": "string",
+ "description": "Extension Upgrade Target Version."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "ArcSettingNameParameter": {
+ "name": "arcSettingName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the proxy resource holding details of HCI ArcSetting information.",
+ "x-ms-parameter-location": "method"
+ },
+ "ExtensionNameParameter": {
+ "name": "extensionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the machine extension.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/hciCommon.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/hciCommon.json
new file mode 100644
index 000000000000..8b3fe9a54abf
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/hciCommon.json
@@ -0,0 +1,417 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI Common",
+ "version": "2024-12-01-preview",
+ "description": "Azure Stack HCI common Rest API spec definitions."
+ },
+ "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": [],
+ "paths": {},
+ "definitions": {
+ "DeploymentMode": {
+ "type": "string",
+ "description": "The deployment mode of EnterpriseCloudEngine(ECE) action for a cluster.",
+ "enum": [
+ "Validate",
+ "Deploy"
+ ],
+ "default": "Deploy",
+ "x-ms-enum": {
+ "name": "DeploymentMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Validate",
+ "value": "Validate",
+ "description": "Validate ECE action deployment for a cluster."
+ },
+ {
+ "name": "Deploy",
+ "value": "Deploy",
+ "description": "Deploy ECE action deployment for a cluster."
+ }
+ ]
+ }
+ },
+ "EceReportedProperties": {
+ "type": "object",
+ "description": "The DeploymentStatus of AzureStackHCI Cluster.",
+ "properties": {
+ "validationStatus": {
+ "$ref": "#/definitions/EceActionStatus",
+ "description": "validation status of AzureStackHCI Cluster Deployment.",
+ "readOnly": true
+ },
+ "deploymentStatus": {
+ "$ref": "#/definitions/EceActionStatus",
+ "description": "Deployment status of AzureStackHCI Cluster Deployment.",
+ "readOnly": true
+ }
+ }
+ },
+ "EceActionStatus": {
+ "type": "object",
+ "description": "The ECE action plan deployment status for AzureStackHCI Cluster.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "description": "Status of ECE action AzureStackHCI Cluster Deployment.",
+ "readOnly": true
+ },
+ "steps": {
+ "type": "array",
+ "description": "List of steps of AzureStackHCI Cluster Deployment.",
+ "items": {
+ "$ref": "#/definitions/DeploymentStep"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "The provisioning state of a resource.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "NotSpecified",
+ "Provisioning",
+ "Updating",
+ "Deleting",
+ "Accepted"
+ ],
+ "readOnly": true,
+ "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": "NotSpecified",
+ "value": "NotSpecified",
+ "description": "The resource provision state is not specified"
+ },
+ {
+ "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"
+ }
+ ]
+ }
+ },
+ "EceDeploymentSecrets": {
+ "type": "object",
+ "description": "Protected parameters list stored in keyvault.",
+ "properties": {
+ "secretName": {
+ "type": "string",
+ "description": "Secret name stored in keyvault."
+ },
+ "eceSecretName": {
+ "$ref": "#/definitions/EceSecrets",
+ "description": "Secret name expected for Enterprise Cloud Engine (ECE) deployment."
+ },
+ "secretLocation": {
+ "type": "string",
+ "format": "uri",
+ "description": "Secret URI stored in keyvault."
+ }
+ }
+ },
+ "EceSecrets": {
+ "type": "string",
+ "description": "Secret names allowed for Enterprise Cloud Engine (ECE) deployment.",
+ "enum": [
+ "AzureStackLCMUserCredential",
+ "DefaultARBApplication",
+ "LocalAdminCredential",
+ "WitnessStorageKey"
+ ],
+ "x-ms-enum": {
+ "name": "EceSecrets",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "AzureStackLCMUserCredential",
+ "value": "AzureStackLCMUserCredential",
+ "description": "AzureStackLCMUserCredential used for LCM operations for AzureStackHCI cluster."
+ },
+ {
+ "name": "DefaultARBApplication",
+ "value": "DefaultARBApplication",
+ "description": "DefaultARBApplication used to manage Azure Arc resource bridge (ARB) for AzureStackHCI cluster."
+ },
+ {
+ "name": "LocalAdminCredential",
+ "value": "LocalAdminCredential",
+ "description": "LocalAdminCredential used for admin operations for AzureStackHCI cluster."
+ },
+ {
+ "name": "WitnessStorageKey",
+ "value": "WitnessStorageKey",
+ "description": "WitnessStorageKey used for setting up a cloud witness for AzureStackHCI cluster."
+ }
+ ]
+ }
+ },
+ "DeploymentStep": {
+ "type": "object",
+ "description": "The Step of AzureStackHCI Cluster.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of step.",
+ "readOnly": true
+ },
+ "description": {
+ "type": "string",
+ "description": "Description of step.",
+ "readOnly": true
+ },
+ "fullStepIndex": {
+ "type": "string",
+ "description": "FullStepIndex of step.",
+ "readOnly": true
+ },
+ "startTimeUtc": {
+ "type": "string",
+ "description": "Start time of step.",
+ "readOnly": true
+ },
+ "endTimeUtc": {
+ "type": "string",
+ "description": "End time of step.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "description": "Status of step. Allowed values are 'Error', 'Success', 'InProgress'",
+ "readOnly": true
+ },
+ "steps": {
+ "type": "array",
+ "description": "List of nested steps of AzureStackHCI Cluster Deployment.",
+ "items": {
+ "$ref": "#/definitions/DeploymentStep"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ },
+ "exception": {
+ "type": "array",
+ "description": "List of exceptions in AzureStackHCI Cluster Deployment.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "PrecheckResult": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the individual test/rule/alert that was executed. Unique, not exposed to the customer.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The health check DisplayName localized of the individual test executed.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "Key-value pairs that allow grouping/filtering individual tests.",
+ "type": "object",
+ "properties": {
+ "key": {
+ "description": "Key that allow grouping/filtering individual tests.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Value of the key that allow grouping/filtering individual tests.",
+ "type": "string"
+ }
+ }
+ },
+ "healthCheckTags": {
+ "description": "Key-value pairs that allow grouping/filtering individual tests.",
+ "type": "object"
+ },
+ "title": {
+ "description": "User-facing name; one or more sentences indicating the direct issue.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the check running (i.e. Failed, Succeeded, In Progress). This answers whether the check ran, and passed or failed.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "status",
+ "modelAsString": true
+ }
+ },
+ "severity": {
+ "description": "Severity of the result (Critical, Warning, Informational, Hidden). This answers how important the result is. Critical is the only update-blocking severity.",
+ "type": "string",
+ "enum": [
+ "Critical",
+ "Warning",
+ "Informational",
+ "Hidden"
+ ],
+ "x-ms-enum": {
+ "name": "severity",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "description": "Detailed overview of the issue and what impact the issue has on the stamp.",
+ "type": "string"
+ },
+ "remediation": {
+ "description": "Set of steps that can be taken to resolve the issue found.",
+ "type": "string"
+ },
+ "targetResourceID": {
+ "description": "The unique identifier for the affected resource (such as a node or drive).",
+ "type": "string"
+ },
+ "targetResourceName": {
+ "description": "The name of the affected resource.",
+ "type": "string"
+ },
+ "targetResourceType": {
+ "description": "The type of resource being referred to (well-known set of nouns in infrastructure, aligning with Monitoring).",
+ "type": "string"
+ },
+ "timestamp": {
+ "description": "The time in which the HealthCheck was called.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "additionalData": {
+ "description": "Property bag of key value pairs for additional information.",
+ "type": "string"
+ },
+ "healthCheckSource": {
+ "description": "The name of the services called for the HealthCheck (I.E. Test-AzureStack, Test-Cluster).",
+ "type": "string"
+ }
+ }
+ },
+ "EdgeDeviceKind": {
+ "type": "string",
+ "description": "Edge device kind.",
+ "enum": [
+ "HCI"
+ ],
+ "default": "HCI",
+ "x-ms-enum": {
+ "name": "EdgeDeviceKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "HCI",
+ "value": "HCI",
+ "description": "Arc-enabled edge device with HCI OS."
+ }
+ ]
+ }
+ },
+ "HardwareClass": {
+ "type": "string",
+ "description": "Hardware class of the cluster.",
+ "enum": [
+ "Small",
+ "Medium",
+ "Large"
+ ],
+ "default": "Medium",
+ "x-ms-enum": {
+ "name": "HardwareClass",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Small",
+ "value": "Small",
+ "description": "The hardware class is small."
+ },
+ {
+ "name": "Medium",
+ "value": "Medium",
+ "description": "The hardware class is medium. This corresponds to the default"
+ },
+ {
+ "name": "Large",
+ "value": "Large",
+ "description": "The hardware class is large."
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/offers.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/offers.json
new file mode 100644
index 000000000000..22531f5539a2
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/offers.json
@@ -0,0 +1,302 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/publishers/{publisherName}/offers": {
+ "get": {
+ "operationId": "Offers_ListByPublisher",
+ "description": "List Offers available for a publisher within the HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PublisherNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ODataExpandParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OfferList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Offer resources by publisher for the HCI Cluster": {
+ "$ref": "./examples/ListOffersByPublisher.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/offers": {
+ "get": {
+ "operationId": "Offers_ListByCluster",
+ "description": "List Offers available across publishers for the HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ODataExpandParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OfferList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Offer resources by HCI Cluster": {
+ "$ref": "./examples/ListOffersByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/publishers/{publisherName}/offers/{offerName}": {
+ "get": {
+ "operationId": "Offers_Get",
+ "description": "Get Offer resource details within a publisher of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PublisherNameParameter"
+ },
+ {
+ "$ref": "#/parameters/OfferNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ODataExpandParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Offer"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Offer": {
+ "$ref": "./examples/GetOffer.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "OfferList": {
+ "description": "List of Offer proxy resources for the HCI cluster.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Offer proxy resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Offer"
+ },
+ "readOnly": true
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Offer": {
+ "description": "Offer details.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Offer properties.",
+ "$ref": "#/definitions/OfferProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "OfferProperties": {
+ "description": "Publisher properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning State",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherId": {
+ "type": "string",
+ "description": "Identifier of the Publisher for the offer"
+ },
+ "content": {
+ "type": "string",
+ "description": "JSON serialized catalog content of the offer"
+ },
+ "contentVersion": {
+ "type": "string",
+ "description": "The API version of the catalog service used to serve the catalog content"
+ },
+ "skuMappings": {
+ "type": "array",
+ "description": "Array of SKU mappings",
+ "items": {
+ "$ref": "#/definitions/SkuMappings"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "SkuMappings": {
+ "description": "SKU Mapping details.",
+ "type": "object",
+ "properties": {
+ "catalogPlanId": {
+ "type": "string",
+ "description": "Identifier of the CatalogPlan for the sku"
+ },
+ "marketplaceSkuId": {
+ "type": "string",
+ "description": "Identifier for the sku"
+ },
+ "marketplaceSkuVersions": {
+ "type": "array",
+ "description": "Array of SKU versions available",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "PublisherNameParameter": {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the publisher available within HCI cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "OfferNameParameter": {
+ "name": "offerName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the offer available within HCI cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "ODataExpandParameter": {
+ "name": "$expand",
+ "in": "query",
+ "description": "Specify $expand=content,contentVersion to populate additional fields related to the marketplace offer.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/publishers.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/publishers.json
new file mode 100644
index 000000000000..d81800ab24b5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/publishers.json
@@ -0,0 +1,188 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/publishers": {
+ "get": {
+ "operationId": "Publishers_ListByCluster",
+ "description": "List Publishers available for the HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PublisherList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Publisher resources by HCI Cluster": {
+ "$ref": "./examples/ListPublishersByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/publishers/{publisherName}": {
+ "get": {
+ "operationId": "Publishers_Get",
+ "description": "Get Publisher resource details of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PublisherNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Publisher"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Publisher": {
+ "$ref": "./examples/GetPublisher.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "PublisherList": {
+ "description": "List of Publisher proxy resources for the HCI cluster.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Publisher proxy resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Publisher"
+ },
+ "readOnly": true
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Publisher": {
+ "description": "Publisher details.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Publisher properties.",
+ "$ref": "#/definitions/PublisherProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "PublisherProperties": {
+ "description": "Publisher properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning State",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "PublisherNameParameter": {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the publisher available within HCI cluster.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/securitySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/securitySettings.json
new file mode 100644
index 000000000000..277423f34fa5
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/securitySettings.json
@@ -0,0 +1,502 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "AzureStackHCI",
+ "version": "2024-12-01-preview",
+ "description": "Azure Stack HCI cluster security settings."
+ },
+ "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": "SecuritySettings"
+ }
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/securitySettings": {
+ "get": {
+ "operationId": "SecuritySettings_ListByClusters",
+ "tags": [
+ "SecuritySettings"
+ ],
+ "description": "List SecuritySetting resources by Clusters",
+ "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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SecuritySettingListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Security Settings": {
+ "$ref": "./examples/ListSecuritySettingsByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/securitySettings/{securitySettingsName}": {
+ "get": {
+ "operationId": "SecuritySettings_Get",
+ "tags": [
+ "SecuritySettings"
+ ],
+ "description": "Get a SecuritySetting",
+ "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/ClusterNameParameter"
+ },
+ {
+ "name": "securitySettingsName",
+ "in": "path",
+ "description": "Name of security setting",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "ARM operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SecuritySetting"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Security Settings": {
+ "$ref": "./examples/GetSecuritySettings.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "SecuritySettings_CreateOrUpdate",
+ "tags": [
+ "SecuritySettings"
+ ],
+ "description": "Create a security setting",
+ "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/ClusterNameParameter"
+ },
+ {
+ "name": "securitySettingsName",
+ "in": "path",
+ "description": "Name of security setting",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecuritySetting"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'SecuritySetting' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/SecuritySetting"
+ }
+ },
+ "201": {
+ "description": "Resource 'SecuritySetting' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/SecuritySetting"
+ },
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create Security Settings": {
+ "$ref": "./examples/PutSecuritySettings.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "SecuritySettings_Delete",
+ "tags": [
+ "SecuritySettings"
+ ],
+ "description": "Delete a SecuritySetting",
+ "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/ClusterNameParameter"
+ },
+ {
+ "name": "securitySettingsName",
+ "in": "path",
+ "description": "Name of security setting",
+ "required": true,
+ "type": "string",
+ "default": "default",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$"
+ }
+ ],
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Security Settings": {
+ "$ref": "./examples/DeleteSecuritySettings.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ }
+ },
+ "definitions": {
+ "ComplianceAssignmentType": {
+ "type": "string",
+ "description": "Represents the compliance assignment type of a resource.",
+ "enum": [
+ "Audit",
+ "ApplyAndAutoCorrect"
+ ],
+ "x-ms-enum": {
+ "name": "ComplianceAssignmentType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Audit",
+ "value": "Audit",
+ "description": "Report on the state of the machine, but don't make changes."
+ },
+ {
+ "name": "ApplyAndAutoCorrect",
+ "value": "ApplyAndAutoCorrect",
+ "description": "Applied to the machine. If it drifts, the local service inside the machine makes a correction at the next evaluation."
+ }
+ ]
+ }
+ },
+ "ComplianceStatus": {
+ "type": "string",
+ "description": "Represents the compliance status of a resource.",
+ "enum": [
+ "Compliant",
+ "NonCompliant",
+ "Pending"
+ ],
+ "x-ms-enum": {
+ "name": "ComplianceStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Compliant",
+ "value": "Compliant",
+ "description": "The resource is compliant"
+ },
+ {
+ "name": "NonCompliant",
+ "value": "NonCompliant",
+ "description": "The resource is non-compliant"
+ },
+ {
+ "name": "Pending",
+ "value": "Pending",
+ "description": "The resource compliance status is pending"
+ }
+ ]
+ }
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "The provisioning state of a resource.",
+ "readOnly": true,
+ "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"
+ }
+ ]
+ }
+ },
+ "SecurityComplianceStatus": {
+ "type": "object",
+ "description": "Security compliance properties of the resource",
+ "properties": {
+ "securedCoreCompliance": {
+ "$ref": "#/definitions/ComplianceStatus",
+ "description": "Indicates whether HCI hosts meets secured-core server requirements.",
+ "readOnly": true
+ },
+ "wdacCompliance": {
+ "$ref": "#/definitions/ComplianceStatus",
+ "description": "Indicates whether HCI hosts have enforced consistent Windows Defender Application Control.",
+ "readOnly": true
+ },
+ "dataAtRestEncrypted": {
+ "$ref": "#/definitions/ComplianceStatus",
+ "description": "Indicates whether data at-rest encryption is enabled on Azure Stack HCI clustered volumes.",
+ "readOnly": true
+ },
+ "dataInTransitProtected": {
+ "$ref": "#/definitions/ComplianceStatus",
+ "description": "Indicates whether HCI cluster has data in-transit protection.",
+ "readOnly": true
+ },
+ "lastUpdated": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Time in UTC when compliance status was last updated.",
+ "readOnly": true
+ }
+ }
+ },
+ "SecurityProperties": {
+ "type": "object",
+ "description": "Security properties of the resource",
+ "properties": {
+ "securedCoreComplianceAssignment": {
+ "$ref": "#/definitions/ComplianceAssignmentType",
+ "description": "Secured Core Compliance Assignment",
+ "default": "Audit"
+ },
+ "wdacComplianceAssignment": {
+ "$ref": "#/definitions/ComplianceAssignmentType",
+ "description": "WDAC Compliance Assignment",
+ "default": "Audit"
+ },
+ "smbEncryptionForIntraClusterTrafficComplianceAssignment": {
+ "$ref": "#/definitions/ComplianceAssignmentType",
+ "description": "SMB encryption for intra-cluster traffic Compliance Assignment",
+ "default": "Audit"
+ },
+ "securityComplianceStatus": {
+ "$ref": "#/definitions/SecurityComplianceStatus",
+ "description": "Security Compliance Status",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "The status of the last operation."
+ }
+ }
+ },
+ "SecuritySetting": {
+ "type": "object",
+ "description": "Security settings proxy resource",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SecurityProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "SecuritySettingListResult": {
+ "type": "object",
+ "description": "The response of a SecuritySetting list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The SecuritySetting items on this page",
+ "items": {
+ "$ref": "#/definitions/SecuritySetting"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/skus.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/skus.json
new file mode 100644
index 000000000000..f4e9793c5ada
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/skus.json
@@ -0,0 +1,275 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/publishers/{publisherName}/offers/{offerName}/skus": {
+ "get": {
+ "operationId": "Skus_ListByOffer",
+ "description": "List Skus available for a offer within the HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PublisherNameParameter"
+ },
+ {
+ "$ref": "#/parameters/OfferNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ODataExpandParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SkuList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List SKU resources by offer for the HCI Cluster": {
+ "$ref": "./examples/ListSkusByOffer.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/publishers/{publisherName}/offers/{offerName}/skus/{skuName}": {
+ "get": {
+ "operationId": "Skus_Get",
+ "description": "Get SKU resource details within a offer of HCI Cluster.",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/PublisherNameParameter"
+ },
+ {
+ "$ref": "#/parameters/OfferNameParameter"
+ },
+ {
+ "$ref": "#/parameters/SkuNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ODataExpandParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Sku"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Sku": {
+ "$ref": "./examples/GetSku.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "SkuList": {
+ "description": "List of SKU proxy resources for the HCI cluster.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of SKU proxy resources.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Sku"
+ },
+ "readOnly": true
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Sku": {
+ "description": "Sku details.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "SKU properties.",
+ "$ref": "#/definitions/SkuProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "SkuProperties": {
+ "description": "SKU properties.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning State",
+ "type": "string",
+ "readOnly": true
+ },
+ "publisherId": {
+ "type": "string",
+ "description": "Identifier of the Publisher for the offer"
+ },
+ "offerId": {
+ "type": "string",
+ "description": "Identifier of the Offer for the sku"
+ },
+ "content": {
+ "type": "string",
+ "description": "JSON serialized catalog content of the sku offer"
+ },
+ "contentVersion": {
+ "type": "string",
+ "description": "The API version of the catalog service used to serve the catalog content"
+ },
+ "skuMappings": {
+ "type": "array",
+ "description": "Array of SKU mappings",
+ "items": {
+ "$ref": "#/definitions/SkuMappings"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "SkuMappings": {
+ "description": "SKU Mapping details.",
+ "type": "object",
+ "properties": {
+ "catalogPlanId": {
+ "type": "string",
+ "description": "Identifier of the CatalogPlan for the sku"
+ },
+ "marketplaceSkuId": {
+ "type": "string",
+ "description": "Identifier for the sku"
+ },
+ "marketplaceSkuVersions": {
+ "type": "array",
+ "description": "Array of SKU versions available",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "PublisherNameParameter": {
+ "name": "publisherName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the publisher available within HCI cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "OfferNameParameter": {
+ "name": "offerName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the offer available within HCI cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "SkuNameParameter": {
+ "name": "skuName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the SKU available within HCI cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "ODataExpandParameter": {
+ "name": "$expand",
+ "in": "query",
+ "description": "Specify $expand=content,contentVersion to populate additional fields related to the marketplace offer.",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateRuns.json
new file mode 100644
index 000000000000..d111ddd7a5f9
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateRuns.json
@@ -0,0 +1,412 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/updates/{updateName}/updateRuns": {
+ "get": {
+ "operationId": "UpdateRuns_List",
+ "description": "List all Update runs for a specified update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateRunList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Update runs under cluster resource": {
+ "$ref": "./examples/ListUpdateRuns.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/updates/{updateName}/updateRuns/{updateRunName}": {
+ "delete": {
+ "operationId": "UpdateRuns_Delete",
+ "description": "Delete specified Update Run",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateRunNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "ACCEPTED",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "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"
+ },
+ "x-ms-examples": {
+ "Delete an Update": {
+ "$ref": "./examples/DeleteUpdateRuns.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "UpdateRuns_Put",
+ "description": "Put Update runs for a specified update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateRunNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "updateRunsProperties",
+ "in": "body",
+ "description": "Properties of the updateRuns object",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UpdateRun"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateRun"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Update runs under cluster resource": {
+ "$ref": "./examples/PutUpdateRuns.json"
+ }
+ }
+ },
+ "get": {
+ "operationId": "UpdateRuns_Get",
+ "description": "Get the Update run for a specified update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateRunNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateRun"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Update runs under cluster resource": {
+ "$ref": "./examples/GetUpdateRuns.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "UpdateRunList": {
+ "description": "List of Update runs",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Update runs",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpdateRun"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UpdateRun": {
+ "description": "Details of an Update run",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "description": "The geo-location where the resource lives"
+ },
+ "properties": {
+ "description": "Describes Update Run Properties.",
+ "$ref": "#/definitions/UpdateRunProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "UpdateRunProperties": {
+ "description": "Details of an Update run",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the UpdateRuns proxy resource.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "timeStarted": {
+ "description": "Timestamp of the update run was started.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedTime": {
+ "description": "Timestamp of the most recently completed step in the update run.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "duration": {
+ "description": "Duration of the update run.",
+ "type": "string"
+ },
+ "state": {
+ "description": "State of the update run.",
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "Succeeded",
+ "InProgress",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "updateRunPropertiesState",
+ "modelAsString": true
+ }
+ },
+ "progress": {
+ "description": "Progress representation of the update run steps.",
+ "$ref": "#/definitions/Step",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "Step": {
+ "description": "Progress representation of the update run steps.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the step.",
+ "type": "string"
+ },
+ "description": {
+ "description": "More detailed description of the step.",
+ "type": "string"
+ },
+ "errorMessage": {
+ "description": "Error message, specified if the step is in a failed state.",
+ "type": "string"
+ },
+ "status": {
+ "description": "Status of the step, bubbled up from the ECE action plan for installation attempts. Values are: 'Success', 'Error', 'InProgress', and 'Unknown status'.",
+ "type": "string"
+ },
+ "startTimeUtc": {
+ "description": "When the step started, or empty if it has not started executing.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "endTimeUtc": {
+ "description": "When the step reached a terminal state.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastUpdatedTimeUtc": {
+ "description": "Completion time of this step or the last completed sub-step.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "expectedExecutionTime": {
+ "description": "Expected execution time of a given step. This is optionally authored in the update action plan and can be empty.",
+ "type": "string"
+ },
+ "steps": {
+ "description": "Recursive model for child steps of this step.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Step"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "UpdateNameParameter": {
+ "name": "updateName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Update",
+ "x-ms-parameter-location": "method"
+ },
+ "UpdateRunNameParameter": {
+ "name": "updateRunName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Update Run",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateSummaries.json
new file mode 100644
index 000000000000..395afe827f94
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updateSummaries.json
@@ -0,0 +1,408 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/updateSummaries": {
+ "get": {
+ "operationId": "UpdateSummaries_List",
+ "description": "List all Update summaries under the HCI cluster",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateSummariesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Update summaries under cluster resource": {
+ "$ref": "./examples/ListUpdateSummaries.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/updateSummaries/default": {
+ "delete": {
+ "operationId": "UpdateSummaries_Delete",
+ "description": "Delete Update Summaries",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "ACCEPTED",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "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"
+ },
+ "x-ms-examples": {
+ "Delete an Update": {
+ "$ref": "./examples/DeleteUpdateSummaries.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "UpdateSummaries_Put",
+ "description": "Put Update summaries under the HCI cluster",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "updateLocationProperties",
+ "in": "body",
+ "description": "Properties of the UpdateSummaries resource",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UpdateSummaries"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateSummaries"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Put Update summaries under cluster resource": {
+ "$ref": "./examples/PutUpdateSummaries.json"
+ }
+ }
+ },
+ "get": {
+ "operationId": "UpdateSummaries_Get",
+ "description": "Get all Update summaries under the HCI cluster",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateSummaries"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Update summaries under cluster resource": {
+ "$ref": "./examples/GetUpdateSummaries.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "UpdateSummariesList": {
+ "description": "List of Update Summaries",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Update Summaries",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpdateSummaries"
+ },
+ "x-ms-identifiers": []
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UpdateSummaries": {
+ "description": "Get the update summaries for the cluster",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "description": "The geo-location where the resource lives"
+ },
+ "properties": {
+ "description": "Update summaries properties",
+ "type": "object",
+ "$ref": "#/definitions/UpdateSummariesProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "UpdateSummariesProperties": {
+ "description": "Properties of Update summaries",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the UpdateSummaries proxy resource.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "oemFamily": {
+ "description": "OEM family name.",
+ "type": "string"
+ },
+ "currentOemVersion": {
+ "description": "Current OEM Version.",
+ "type": "string"
+ },
+ "hardwareModel": {
+ "description": "Name of the hardware model.",
+ "type": "string"
+ },
+ "packageVersions": {
+ "description": "Current version of each updatable component.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PackageVersionInfo"
+ },
+ "x-ms-client-flatten": true,
+ "x-ms-identifiers": [
+ "version"
+ ]
+ },
+ "currentVersion": {
+ "description": "Current Solution Bundle version of the stamp.",
+ "type": "string"
+ },
+ "currentSbeVersion": {
+ "description": "Current Sbe version of the stamp.",
+ "type": "string"
+ },
+ "lastUpdated": {
+ "description": "Last time an update installation completed successfully.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastChecked": {
+ "description": "Last time the update service successfully checked for updates",
+ "type": "string",
+ "format": "date-time"
+ },
+ "healthState": {
+ "description": "Overall health state for update-specific health checks.",
+ "type": "object",
+ "$ref": "#/definitions/HealthState",
+ "x-ms-client-flatten": true
+ },
+ "healthCheckResult": {
+ "description": "An array of pre-check result objects.",
+ "type": "array",
+ "items": {
+ "$ref": "./hciCommon.json#/definitions/PrecheckResult"
+ },
+ "x-ms-client-flatten": true,
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "healthCheckDate": {
+ "description": "Last time the package-specific checks were run.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "state": {
+ "description": "Overall update state of the stamp.",
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "AppliedSuccessfully",
+ "UpdateAvailable",
+ "UpdateInProgress",
+ "UpdateFailed",
+ "NeedsAttention",
+ "PreparationInProgress",
+ "PreparationFailed"
+ ],
+ "x-ms-enum": {
+ "name": "updateSummariesPropertiesState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "PackageVersionInfo": {
+ "description": "Current version of each updatable component.",
+ "type": "object",
+ "properties": {
+ "packageType": {
+ "description": "Package type",
+ "type": "string"
+ },
+ "version": {
+ "description": "Package version",
+ "type": "string"
+ },
+ "lastUpdated": {
+ "description": "Last time this component was updated.",
+ "type": "string",
+ "format": "date-time"
+ }
+ }
+ },
+ "HealthState": {
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "Success",
+ "Failure",
+ "Warning",
+ "Error",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "HealthState",
+ "modelAsString": true
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updates.json
new file mode 100644
index 000000000000..6705d99a907e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/preview/2024-12-01-preview/updates.json
@@ -0,0 +1,577 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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/clusters/{clusterName}/updates/{updateName}/apply": {
+ "post": {
+ "operationId": "Updates_Post",
+ "description": "Apply Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "ACCEPTED",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List available updates": {
+ "$ref": "./examples/PostUpdates.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.AzureStackHCI/clusters/{clusterName}/updates": {
+ "get": {
+ "operationId": "Updates_List",
+ "description": "List all Updates",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List available updates": {
+ "$ref": "./examples/ListUpdates.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/updates/{updateName}": {
+ "delete": {
+ "operationId": "Updates_Delete",
+ "description": "Delete specified Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "ACCEPTED",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "URL to query for status of the operation.",
+ "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"
+ },
+ "x-ms-examples": {
+ "Delete an Update": {
+ "$ref": "./examples/DeleteUpdates.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Updates_Put",
+ "description": "Put specified Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "updateProperties",
+ "in": "body",
+ "description": "Properties of the Updates object",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Update"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Update"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Put a specific update": {
+ "$ref": "./examples/PutUpdates.json"
+ }
+ }
+ },
+ "get": {
+ "operationId": "Updates_Get",
+ "description": "Get specified Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/UpdateNameParameter"
+ },
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Update"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a specific update": {
+ "$ref": "./examples/GetUpdates.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "UpdateList": {
+ "description": "List of Updates",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Updates",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Update"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next set of results.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UpdatePrerequisite": {
+ "description": "If update State is HasPrerequisite, this property contains an array of objects describing prerequisite updates before installing this update. Otherwise, it is empty.",
+ "type": "object",
+ "properties": {
+ "updateType": {
+ "description": "Updatable component type.",
+ "type": "string"
+ },
+ "version": {
+ "description": "Version of the prerequisite.",
+ "type": "string"
+ },
+ "packageName": {
+ "description": "Friendly name of the prerequisite.",
+ "type": "string"
+ }
+ }
+ },
+ "Update": {
+ "description": "Update details",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "description": "The geo-location where the resource lives"
+ },
+ "properties": {
+ "description": "Update properties",
+ "type": "object",
+ "$ref": "#/definitions/UpdateProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "UpdateProperties": {
+ "description": "Details of a singular Update in HCI Cluster",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning state of the Updates proxy resource.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ },
+ "installedDate": {
+ "description": "Date that the update was installed.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "description": {
+ "description": "Description of the update.",
+ "type": "string"
+ },
+ "minSbeVersionRequired": {
+ "description": "Minimum Sbe Version of the update.",
+ "type": "string"
+ },
+ "state": {
+ "description": "State of the update as it relates to this stamp.",
+ "type": "string",
+ "enum": [
+ "HasPrerequisite",
+ "Obsolete",
+ "Ready",
+ "NotApplicableBecauseAnotherUpdateIsInProgress",
+ "Preparing",
+ "Installing",
+ "Installed",
+ "PreparationFailed",
+ "InstallationFailed",
+ "Invalid",
+ "Recalled",
+ "Downloading",
+ "DownloadFailed",
+ "HealthChecking",
+ "HealthCheckFailed",
+ "ReadyToInstall",
+ "ScanInProgress",
+ "ScanFailed",
+ "AdditionalContentRequired"
+ ],
+ "x-ms-enum": {
+ "name": "state",
+ "modelAsString": true
+ }
+ },
+ "prerequisites": {
+ "description": "If update State is HasPrerequisite, this property contains an array of objects describing prerequisite updates before installing this update. Otherwise, it is empty.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpdatePrerequisite"
+ },
+ "x-ms-identifiers": [
+ "packageName"
+ ]
+ },
+ "componentVersions": {
+ "description": "An array of component versions for a Solution Bundle update, and an empty array otherwise. ",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PackageVersionInfo"
+ },
+ "x-ms-client-flatten": true,
+ "x-ms-identifiers": [
+ "version"
+ ]
+ },
+ "rebootRequired": {
+ "type": "object",
+ "$ref": "#/definitions/RebootRequirement",
+ "x-ms-client-flatten": true
+ },
+ "healthState": {
+ "description": "Overall health state for update-specific health checks.",
+ "type": "object",
+ "$ref": "#/definitions/HealthState",
+ "x-ms-client-flatten": true
+ },
+ "healthCheckResult": {
+ "description": "An array of PrecheckResult objects.",
+ "type": "array",
+ "items": {
+ "$ref": "./hciCommon.json#/definitions/PrecheckResult"
+ },
+ "x-ms-client-flatten": true
+ },
+ "healthCheckDate": {
+ "description": "Last time the package-specific checks were run.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "packagePath": {
+ "description": "Path where the update package is available.",
+ "type": "string"
+ },
+ "packageSizeInMb": {
+ "description": "Size of the package. This value is a combination of the size from update metadata and size of the payload that results from the live scan operation for OS update content.",
+ "type": "number"
+ },
+ "displayName": {
+ "description": "Display name of the Update",
+ "type": "string"
+ },
+ "version": {
+ "description": "Version of the update.",
+ "type": "string"
+ },
+ "publisher": {
+ "description": "Publisher of the update package.",
+ "type": "string"
+ },
+ "releaseLink": {
+ "description": "Link to release notes for the update.",
+ "type": "string"
+ },
+ "availabilityType": {
+ "description": "Indicates the way the update content can be downloaded.",
+ "type": "string",
+ "enum": [
+ "Local",
+ "Online",
+ "Notify"
+ ],
+ "x-ms-enum": {
+ "name": "availabilityType",
+ "modelAsString": true
+ }
+ },
+ "packageType": {
+ "description": "Customer-visible type of the update.",
+ "type": "string"
+ },
+ "additionalProperties": {
+ "description": "Extensible KV pairs serialized as a string. This is currently used to report the stamp OEM family and hardware model information when an update is flagged as Invalid for the stamp based on OEM type.",
+ "type": "string"
+ },
+ "updateStateProperties": {
+ "description": "Additional information regarding the state of the update. See definition of UpdateStateProperties type below for more details on this property.",
+ "type": "object",
+ "$ref": "#/definitions/UpdateStateProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "UpdateStateProperties": {
+ "description": "Additional information regarding the state of the update. See definition of UpdateStateProperties type below for more details on this property.",
+ "type": "object",
+ "properties": {
+ "progressPercentage": {
+ "description": "Progress percentage of ongoing operation. Currently this property is only valid when the update is in the Downloading state, where it maps to how much of the update content has been downloaded.",
+ "type": "number"
+ },
+ "notifyMessage": {
+ "description": "Brief message with instructions for updates of AvailabilityType Notify.",
+ "type": "string"
+ }
+ }
+ },
+ "PackageVersionInfo": {
+ "description": "Current version of each updatable component.",
+ "type": "object",
+ "properties": {
+ "packageType": {
+ "description": "Package type",
+ "type": "string"
+ },
+ "version": {
+ "description": "Package version",
+ "type": "string"
+ },
+ "lastUpdated": {
+ "description": "Last time this component was updated.",
+ "type": "string",
+ "format": "date-time"
+ }
+ }
+ },
+ "RebootRequirement": {
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "name": "RebootRequirement",
+ "modelAsString": true
+ }
+ },
+ "HealthState": {
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "Success",
+ "Failure",
+ "Warning",
+ "Error",
+ "InProgress"
+ ],
+ "x-ms-enum": {
+ "name": "HealthState",
+ "modelAsString": true
+ }
+ }
+ },
+ "parameters": {
+ "ClusterNameParameter": {
+ "name": "clusterName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the cluster.",
+ "x-ms-parameter-location": "method"
+ },
+ "UpdateNameParameter": {
+ "name": "updateName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Update",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/readme.md b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/readme.md
index ba0cc06b1b80..2a6c02fe7b67 100644
--- a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/readme.md
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/StackHCI/readme.md
@@ -29,7 +29,7 @@ title: AzureStackHCIClient
description: Azure Stack HCI management service
openapi-type: arm
openapi-subtype: rpaas
-tag: package-preview-2024-09
+tag: package-preview-2024-12-01-preview
directive:
- from: edgeDevices.json
@@ -237,6 +237,29 @@ suppressions:
reason: Making the body optional now would cause a breaking change in backward compatibility
```
+### Tag: package-preview-2024-12-01-preview
+
+These settings apply only when `--tag=package-preview-2024-12-01-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2024-12-01-preview'
+input-file:
+ - preview/2024-12-01-preview/arcSettings.json
+ - preview/2024-12-01-preview/clusters.json
+ - preview/2024-12-01-preview/deploymentSettings.json
+ - preview/2024-12-01-preview/edgeDeviceJobs.json
+ - preview/2024-12-01-preview/edgeDevices.json
+ - preview/2024-12-01-preview/extensions.json
+ - preview/2024-12-01-preview/hciCommon.json
+ - preview/2024-12-01-preview/offers.json
+ - ../operations/preview/2024-12-01-preview/operations.json
+ - preview/2024-12-01-preview/publishers.json
+ - preview/2024-12-01-preview/securitySettings.json
+ - preview/2024-12-01-preview/skus.json
+ - preview/2024-12-01-preview/updateRuns.json
+ - preview/2024-12-01-preview/updates.json
+ - preview/2024-12-01-preview/updateSummaries.json
+```
+
### Tag: package-preview-2024-09
These settings apply only when `--tag=package-preview-2024-09` is specified on the command line.
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/examples/ListOperations.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/examples/ListOperations.json
new file mode 100644
index 000000000000..2d6ce59e1cf2
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/examples/ListOperations.json
@@ -0,0 +1,453 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.AzureStackHCI/Register/Action",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Register",
+ "operation": "Registers the Azure Stack HCI Resource Provider",
+ "description": "Registers the subscription for the Azure Stack HCI resource provider and enables the creation of Azure Stack HCI resources."
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Unregister/Action",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Unregister",
+ "operation": "Unregisters the Azure Stack HCI Resource Provider",
+ "description": "Unregisters the subscription for the Azure Stack HCI resource provider."
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Operations/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Operations",
+ "operation": "Gets/List operations resources",
+ "description": "Gets operations"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters",
+ "operation": "Gets/List cluster resources",
+ "description": "Gets clusters"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters",
+ "operation": "Create/update cluster resources",
+ "description": "Creates or updates a cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters",
+ "operation": "Deletes cluster resource",
+ "description": "Deletes cluster resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/ArcSettings/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/ArcSettings",
+ "operation": "Gets/List arc resources",
+ "description": "Gets arc resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/ArcSettings/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/ArcSettings",
+ "operation": "Create/Update arc resources",
+ "description": "Create or updates arc resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/ArcSettings/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/ArcSettings",
+ "operation": "Delete arc resources",
+ "description": "Delete arc resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/ArcSettings/Extensions/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/ArcSettings/Extensions",
+ "operation": "Gets/List extension resources of HCI cluster",
+ "description": "Gets extension resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/ArcSettings/Extensions/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/ArcSettings/Extensions",
+ "operation": "Create/Update extension resources of HCI cluster",
+ "description": "Create or update extension resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/ArcSettings/Extensions/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/ArcSettings/Extensions",
+ "operation": "Delete extension resources of HCI cluster",
+ "description": "Delete extension resources of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Restart/Action",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines",
+ "operation": "Restarts virtual machine resource",
+ "description": "Restarts virtual machine resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Start/Action",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines",
+ "operation": "Starts virtual machine resource",
+ "description": "Starts virtual machine resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Stop/Action",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines",
+ "operation": "Stops virtual machine resource",
+ "description": "Stops virtual machine resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines",
+ "operation": "Deletes virtual machine resource",
+ "description": "Deletes virtual machine resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines",
+ "operation": "Creates/Updates virtual machine resource",
+ "description": "Creates/Updates virtual machine resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines",
+ "operation": "Gets/Lists virtual machine resource",
+ "description": "Gets/Lists virtual machine resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualNetworks/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualNetworks",
+ "operation": "Deletes virtual networks resource",
+ "description": "Deletes virtual networks resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualNetworks/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualNetworks",
+ "operation": "Creates/Updates virtual networks resource",
+ "description": "Creates/Updates virtual networks resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualNetworks/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualNetworks",
+ "operation": "Gets/Lists virtual networks resource",
+ "description": "Gets/Lists virtual networks resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualHardDisks/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualHardDisks",
+ "operation": "Deletes virtual hard disk resource",
+ "description": "Deletes virtual hard disk resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualHardDisks/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualHardDisks",
+ "operation": "Creates/Updates virtual hard disk resource",
+ "description": "Creates/Updates virtual hard disk resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualHardDisks/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualHardDisks",
+ "operation": "Gets/Lists virtual hard disk resource",
+ "description": "Gets/Lists virtual hard disk resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/NetworkInterfaces/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "NetworkInterfaces",
+ "operation": "Deletes network interfaces resource",
+ "description": "Deletes network interfaces resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/NetworkInterfaces/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "NetworkInterfaces",
+ "operation": "Creates/Updates network interfaces resource",
+ "description": "Creates/Updates network interfaces resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/NetworkInterfaces/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "NetworkInterfaces",
+ "operation": "Gets/Lists network interfaces resource",
+ "description": "Gets/Lists network interfaces resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/GalleryImages/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "GalleryImages",
+ "operation": "Deletes gallery images resource",
+ "description": "Deletes gallery images resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/GalleryImages/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "GalleryImages",
+ "operation": "Creates/Updates gallery images resource",
+ "description": "Creates/Updates gallery images resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/GalleryImages/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "GalleryImages",
+ "operation": "Gets/Lists gallery images resource",
+ "description": "Gets/Lists gallery images resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/HybridIdentityMetadata/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines/HybridIdentityMetadata",
+ "operation": "Gets/Lists virtual machine hybrid identity metadata proxy resource",
+ "description": "Gets/Lists virtual machine hybrid identity metadata proxy resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Extensions/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines/Extensions",
+ "operation": "Gets/Lists virtual machine extensions resource",
+ "description": "Gets/Lists virtual machine extensions resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Extensions/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines/Extensions",
+ "operation": "Creates/Updates virtual machine extensions resource",
+ "description": "Creates/Updates virtual machine extensions resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/VirtualMachines/Extensions/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "VirtualMachines/Extensions",
+ "operation": "Deletes virtual machine extensions resource",
+ "description": "Deletes virtual machine extensions resource"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/RegisteredSubscriptions/read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "RegisteredSubscriptions",
+ "operation": "Gets/Lists registered subscriptions",
+ "description": "Reads registered subscriptions"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Updates/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/Updates",
+ "operation": "Gets/List available updates for HCI cluster",
+ "description": "Gets available updates for HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Updates/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/Updates",
+ "operation": "Create/Update updates resource of HCI cluster",
+ "description": "Create or update updates resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Updates/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/Updates",
+ "operation": "Delete updates resources of HCI cluster",
+ "description": "Delete updates resources of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/UpdateSummaries/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/UpdateSummaries",
+ "operation": "Gets/List available update summaries for HCI cluster",
+ "description": "Gets available update summaries for HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/UpdateSummaries/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/UpdateSummaries",
+ "operation": "Create/Update update summaries resource of HCI cluster",
+ "description": "Create or update update summaries resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/UpdateSummaries/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/UpdateSummaries",
+ "operation": "Delete updates resource summaries of HCI cluster",
+ "description": "Delete update summaries resources of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Updates/UpdateRuns/Read",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/Updates/UpdateRuns",
+ "operation": "Gets/List available update runs for HCI cluster",
+ "description": "Gets available update runs for HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Updates/UpdateRuns/Write",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/Updates/UpdateRuns",
+ "operation": "Create/Update update runs resource of HCI cluster",
+ "description": "Create or update update runs resource of HCI cluster"
+ }
+ },
+ {
+ "name": "Microsoft.AzureStackHCI/Clusters/Updates/UpdateRuns/Delete",
+ "isDataAction": false,
+ "display": {
+ "provider": "Microsoft.AzureStackHCI",
+ "resource": "Clusters/Updates/UpdateRuns",
+ "operation": "Delete updates resource runs of HCI cluster",
+ "description": "Delete update runs resources of HCI cluster"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/operations.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/operations.json
new file mode 100644
index 000000000000..3b2c7ba0c92e
--- /dev/null
+++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/operations/preview/2024-12-01-preview/operations.json
@@ -0,0 +1,73 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "AzureStackHCI",
+ "description": "Azure Stack HCI management service"
+ },
+ "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.AzureStackHCI/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "operationId": "Operations_List",
+ "x-ms-examples": {
+ "Create cluster": {
+ "$ref": "./examples/ListOperations.json"
+ }
+ },
+ "description": "List all available Microsoft.AzureStackHCI provider operations",
+ "parameters": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {},
+ "parameters": {}
+}
From 95aa73b8831deb2940ac7067b8f296cd189a5fe1 Mon Sep 17 00:00:00 2001
From: Xiaofei Cao <92354331+XiaofeiCao@users.noreply.github.com>
Date: Mon, 6 Jan 2025 17:17:22 +0800
Subject: [PATCH 050/128] fix pageable (#31998)
---
.../resource-manager/readme.java.md | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/specification/paloaltonetworks/resource-manager/readme.java.md b/specification/paloaltonetworks/resource-manager/readme.java.md
index 045055ffcf96..c9fb0bc7b46d 100644
--- a/specification/paloaltonetworks/resource-manager/readme.java.md
+++ b/specification/paloaltonetworks/resource-manager/readme.java.md
@@ -2,6 +2,19 @@
These settings apply only when `--java` is specified on the command line.
-``` yaml $(java)
+```yaml $(java)
service-name: PaloAlto Networks Ngfw
+directive:
+ - from: PaloAltoNetworks.Cloudngfw.json
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/PaloAltoNetworks.Cloudngfw/localRulestacks/{localRulestackName}/listAppIds"].post
+ transform: |
+ delete $["x-ms-pageable"]
+ - from: PaloAltoNetworks.Cloudngfw.json
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/PaloAltoNetworks.Cloudngfw/localRulestacks/{localRulestackName}/listCountries"].post
+ transform: |
+ delete $["x-ms-pageable"]
+ - from: PaloAltoNetworks.Cloudngfw.json
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/PaloAltoNetworks.Cloudngfw/localRulestacks/{localRulestackName}/listPredefinedUrlCategories"].post
+ transform: |
+ delete $["x-ms-pageable"]
```
From c0a12a75b702054cf1e7fcd8c014d0fc116dea6e Mon Sep 17 00:00:00 2001
From: Bryan Strassner
Date: Mon, 6 Jan 2025 09:47:35 -0600
Subject: [PATCH 051/128] Microsoft.NetworkCloud 2024-10-01-preview API
(#31270)
* Microsoft.NetworkCloud 2024-10-01-preview API
* Remove extra text from description, matching private repo
---------
Co-authored-by: Marina Bashtovaya
---
.../examples/AgentPools_Create.json | 255 +
.../examples/AgentPools_Delete.json | 17 +
.../examples/AgentPools_Get.json | 97 +
.../AgentPools_ListByKubernetesCluster.json | 101 +
.../examples/AgentPools_Patch.json | 208 +
.../BareMetalMachineKeySets_Create.json | 174 +
.../BareMetalMachineKeySets_Delete.json | 17 +
.../examples/BareMetalMachineKeySets_Get.json | 79 +
...BareMetalMachineKeySets_ListByCluster.json | 83 +
.../BareMetalMachineKeySets_Patch.json | 170 +
.../examples/BareMetalMachines_Cordon.json | 18 +
.../examples/BareMetalMachines_Create.json | 225 +
.../examples/BareMetalMachines_Delete.json | 16 +
.../examples/BareMetalMachines_Get.json | 103 +
...BareMetalMachines_ListByResourceGroup.json | 107 +
.../BareMetalMachines_ListBySubscription.json | 106 +
.../examples/BareMetalMachines_Patch.json | 209 +
.../examples/BareMetalMachines_PowerOff.json | 18 +
.../examples/BareMetalMachines_Reimage.json | 15 +
.../examples/BareMetalMachines_Replace.json | 25 +
.../examples/BareMetalMachines_Restart.json | 15 +
.../BareMetalMachines_RunCommand.json | 23 +
.../BareMetalMachines_RunDataExtracts.json | 27 +
.../BareMetalMachines_RunReadCommands.json | 35 +
.../examples/BareMetalMachines_Start.json | 15 +
.../examples/BareMetalMachines_Uncordon.json | 15 +
.../examples/BmcKeySets_Create.json | 159 +
.../examples/BmcKeySets_Delete.json | 17 +
.../examples/BmcKeySets_Get.json | 74 +
.../examples/BmcKeySets_ListByCluster.json | 78 +
.../examples/BmcKeySets_Patch.json | 156 +
.../CloudServicesNetworks_Create.json | 152 +
.../CloudServicesNetworks_Delete.json | 16 +
.../examples/CloudServicesNetworks_Get.json | 67 +
...dServicesNetworks_ListByResourceGroup.json | 71 +
...udServicesNetworks_ListBySubscription.json | 70 +
.../examples/CloudServicesNetworks_Patch.json | 148 +
.../examples/ClusterManagers_Create.json | 131 +
.../examples/ClusterManagers_Create_Uami.json | 142 +
.../examples/ClusterManagers_Delete.json | 16 +
.../examples/ClusterManagers_Get.json | 60 +
.../ClusterManagers_ListByResourceGroup.json | 64 +
.../ClusterManagers_ListBySubscription.json | 63 +
.../examples/ClusterManagers_Patch.json | 77 +
.../ClusterMetricsConfigurations_Create.json | 108 +
.../ClusterMetricsConfigurations_Delete.json | 17 +
.../ClusterMetricsConfigurations_Get.json | 49 +
...erMetricsConfigurations_ListByCluster.json | 53 +
.../ClusterMetricsConfigurations_Patch.json | 104 +
.../Clusters_ContinueUpdateVersion.json | 18 +
.../examples/Clusters_Create.json | 583 +
.../examples/Clusters_Delete.json | 16 +
.../examples/Clusters_Deploy.json | 16 +
.../Clusters_Deploy_SkipValidation.json | 20 +
.../examples/Clusters_Get.json | 215 +
.../Clusters_ListByResourceGroup.json | 219 +
.../examples/Clusters_ListBySubscription.json | 218 +
...atch_AggregatorOrSingleRackDefinition.json | 480 +
.../Clusters_Patch_AnalyticsOutput.json | 452 +
.../Clusters_Patch_CommandOutput.json | 452 +
.../examples/Clusters_Patch_Location.json | 433 +
..._Patch_RuntimeProtectionConfiguration.json | 435 +
.../Clusters_Patch_SecretArchive.json | 439 +
.../Clusters_Patch_UpdateStrategy.json | 439 +
.../Clusters_Patch_VulnerabilityScanning.json | 435 +
.../examples/Clusters_ScanRuntime.json | 18 +
.../examples/Clusters_UpdateVersion.json | 18 +
.../examples/Consoles_Create.json | 104 +
.../examples/Consoles_Delete.json | 17 +
.../examples/Consoles_Get.json | 47 +
.../Consoles_ListByVirtualMachine.json | 51 +
.../examples/Consoles_Patch.json | 100 +
.../KubernetesClusterFeatures_Create.json | 97 +
.../KubernetesClusterFeatures_Delete.json | 17 +
.../KubernetesClusterFeatures_Get.json | 45 +
...usterFeatures_ListByKubernetesCluster.json | 48 +
.../KubernetesClusterFeatures_Patch.json | 97 +
.../examples/KubernetesClusters_Create.json | 798 +
.../examples/KubernetesClusters_Delete.json | 16 +
.../examples/KubernetesClusters_Get.json | 312 +
...ernetesClusters_L2LoadBalancer_Create.json | 711 +
...ubernetesClusters_ListByResourceGroup.json | 316 +
...KubernetesClusters_ListBySubscription.json | 314 +
.../examples/KubernetesClusters_Patch.json | 644 +
.../KubernetesClusters_RestartNode.json | 18 +
.../examples/L2Networks_Create.json | 99 +
.../examples/L2Networks_Delete.json | 16 +
.../examples/L2Networks_Get.json | 45 +
.../L2Networks_ListByResourceGroup.json | 49 +
.../L2Networks_ListBySubscription.json | 48 +
.../examples/L2Networks_Patch.json | 51 +
.../examples/L3Networks_Create.json | 110 +
.../examples/L3Networks_Delete.json | 16 +
.../examples/L3Networks_Get.json | 49 +
.../L3Networks_ListByResourceGroup.json | 53 +
.../L3Networks_ListBySubscription.json | 52 +
.../examples/L3Networks_Patch.json | 55 +
.../examples/Operations_List.json | 38 +
.../examples/RackSkus_Get.json | 107 +
.../examples/RackSkus_ListBySubscription.json | 110 +
.../examples/Racks_Create.json | 98 +
.../examples/Racks_Delete.json | 16 +
.../examples/Racks_Get.json | 44 +
.../examples/Racks_ListByResourceGroup.json | 48 +
.../examples/Racks_ListBySubscription.json | 47 +
.../examples/Racks_Patch.json | 92 +
.../examples/StorageAppliances_Create.json | 150 +
.../examples/StorageAppliances_Delete.json | 16 +
...liances_DisableRemoteVendorManagement.json | 15 +
...pliances_EnableRemoteVendorManagement.json | 20 +
.../examples/StorageAppliances_Get.json | 68 +
...StorageAppliances_ListByResourceGroup.json | 72 +
.../StorageAppliances_ListBySubscription.json | 71 +
.../examples/StorageAppliances_Patch.json | 139 +
.../examples/TrunkedNetworks_Create.json | 119 +
.../examples/TrunkedNetworks_Delete.json | 16 +
.../examples/TrunkedNetworks_Get.json | 52 +
.../TrunkedNetworks_ListByResourceGroup.json | 56 +
.../TrunkedNetworks_ListBySubscription.json | 55 +
.../examples/TrunkedNetworks_Patch.json | 58 +
.../examples/VirtualMachines_Create.json | 256 +
.../examples/VirtualMachines_Delete.json | 16 +
.../examples/VirtualMachines_Get.json | 100 +
.../VirtualMachines_ListByResourceGroup.json | 104 +
.../VirtualMachines_ListBySubscription.json | 103 +
.../examples/VirtualMachines_Patch.json | 207 +
.../examples/VirtualMachines_PowerOff.json | 18 +
.../examples/VirtualMachines_Reimage.json | 15 +
.../examples/VirtualMachines_Restart.json | 15 +
.../examples/VirtualMachines_Start.json | 15 +
.../examples/Volumes_Create.json | 95 +
.../examples/Volumes_Delete.json | 16 +
.../examples/Volumes_Get.json | 44 +
.../examples/Volumes_ListByResourceGroup.json | 48 +
.../examples/Volumes_ListBySubscription.json | 47 +
.../examples/Volumes_Patch.json | 50 +
.../2024-10-01-preview/networkcloud.json | 13591 ++++++++++++++++
.../networkcloud/resource-manager/readme.md | 24 +-
138 files changed, 29636 insertions(+), 1 deletion(-)
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_ListByKubernetesCluster.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_ListByCluster.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Cordon.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_PowerOff.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Reimage.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Replace.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Restart.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunCommand.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunDataExtracts.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunReadCommands.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Start.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Uncordon.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_ListByCluster.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create_Uami.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_ListByCluster.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ContinueUpdateVersion.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy_SkipValidation.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AggregatorOrSingleRackDefinition.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AnalyticsOutput.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_CommandOutput.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_Location.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_RuntimeProtectionConfiguration.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_SecretArchive.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_UpdateStrategy.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_VulnerabilityScanning.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ScanRuntime.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_UpdateVersion.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_ListByVirtualMachine.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_ListByKubernetesCluster.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_L2LoadBalancer_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_RestartNode.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Operations_List.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_DisableRemoteVendorManagement.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_EnableRemoteVendorManagement.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_PowerOff.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Reimage.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Restart.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Start.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Create.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Delete.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Get.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListByResourceGroup.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListBySubscription.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Patch.json
create mode 100644 specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/networkcloud.json
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Create.json
new file mode 100644
index 000000000000..1d0e96ef2e26
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Create.json
@@ -0,0 +1,255 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "agentPoolName": "agentPoolName",
+ "agentPoolParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Agent pool is available"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "provisioningState": "Accepted",
+ "kubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Agent pool is available"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Delete.json
new file mode 100644
index 000000000000..dc5ae82d72b8
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "agentPoolName": "agentPoolName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Get.json
new file mode 100644
index 000000000000..51851922d1bb
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Get.json
@@ -0,0 +1,97 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "agentPoolName": "agentPoolName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Agent pool is available"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_ListByKubernetesCluster.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_ListByKubernetesCluster.json
new file mode 100644
index 000000000000..22088b5f3f52
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_ListByKubernetesCluster.json
@@ -0,0 +1,101 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Agent pool is available"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Patch.json
new file mode 100644
index 000000000000..2e1874f856d0
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/AgentPools_Patch.json
@@ -0,0 +1,208 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "agentPoolName": "agentPoolName",
+ "agentPoolUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "count": 3,
+ "upgradeSettings": {
+ "maxSurge": "1",
+ "maxUnavailable": "0",
+ "drainTimeout": 1800
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "provisioningState": "Succeeded",
+ "kubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Agent pool is available"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "provisioningState": "Accepted",
+ "kubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Agent pool is available"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Create.json
new file mode 100644
index 000000000000..70b10d9ac4b4
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Create.json
@@ -0,0 +1,174 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bareMetalMachineKeySetName": "bareMetalMachineKeySetName",
+ "bareMetalMachineKeySetParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bareMetalMachineKeySets/bareMetalMachineKeySetName",
+ "name": "bareMetalMachineKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bareMetalMachineKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bareMetalMachineKeySets/bareMetalMachineKeySetName",
+ "name": "bareMetalMachineKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bareMetalMachineKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Accepted"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Delete.json
new file mode 100644
index 000000000000..f45985fba5d9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bareMetalMachineKeySetName": "bareMetalMachineKeySetName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Get.json
new file mode 100644
index 000000000000..a772e63d8230
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Get.json
@@ -0,0 +1,79 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bareMetalMachineKeySetName": "bareMetalMachineKeySetName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bareMetalMachineKeySets/bareMetalMachineKeySetName",
+ "name": "bareMetalMachineKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bareMetalMachineKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_ListByCluster.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_ListByCluster.json
new file mode 100644
index 000000000000..5ab168532ef4
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_ListByCluster.json
@@ -0,0 +1,83 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bareMetalMachineKeySets/bareMetalMachineKeySetName",
+ "name": "bareMetalMachineKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bareMetalMachineKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Patch.json
new file mode 100644
index 000000000000..5029bd540a16
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachineKeySets_Patch.json
@@ -0,0 +1,170 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bareMetalMachineKeySetName": "bareMetalMachineKeySetName",
+ "bareMetalMachineKeySetUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bareMetalMachineKeySets/bareMetalMachineKeySetName",
+ "name": "bareMetalMachineKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bareMetalMachineKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bareMetalMachineKeySets/bareMetalMachineKeySetName",
+ "name": "bareMetalMachineKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bareMetalMachineKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Standard",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "osGroupName": "standardAccessGroup",
+ "jumpHostsAllowed": [
+ "192.0.2.1",
+ "192.0.2.5"
+ ],
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Cordon.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Cordon.json
new file mode 100644
index 000000000000..4f1cea6c9510
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Cordon.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineCordonParameters": {
+ "evacuate": "True"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Create.json
new file mode 100644
index 000000000000..e6175b7ce348
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Create.json
@@ -0,0 +1,225 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser",
+ "password": "{password}"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Accepted",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Delete.json
new file mode 100644
index 000000000000..970158952ce9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Get.json
new file mode 100644
index 000000000000..8cbd3b19f54c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Get.json
@@ -0,0 +1,103 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListByResourceGroup.json
new file mode 100644
index 000000000000..ba51e37e89c4
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListByResourceGroup.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListBySubscription.json
new file mode 100644
index 000000000000..6d165942f48d
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_ListBySubscription.json
@@ -0,0 +1,106 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Patch.json
new file mode 100644
index 000000000000..051eb605a1a6
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Patch.json
@@ -0,0 +1,209 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "machineDetails": "machinedetails"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "name": "bareMetalMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/bareMetalMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "machineSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "machineName": "r01c001",
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcMacAddress": "00:00:4f:00:57:00",
+ "bmcCredentials": {
+ "username": "bmcuser"
+ },
+ "bmcConnectionString": "bmcconnectionstring",
+ "machineDetails": "User-provided machine details.",
+ "serialNumber": "BM1219XXX",
+ "provisioningState": "Accepted",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "readyState": "True",
+ "cordonStatus": "Uncordoned",
+ "powerState": "On",
+ "hardwareInventory": {
+ "interfaces": [
+ {
+ "name": "networkInterfaceName",
+ "macAddress": "2C:54:91:88:C9:E3",
+ "linkStatus": "Up",
+ "networkInterfaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/networkDeviceName/networkInterfaces/networkInterfaceName"
+ }
+ ],
+ "additionalHostInformation": "Machine specific information..."
+ },
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "DetailedStatusMessage",
+ "serviceTag": "ST1219XXX",
+ "kubernetesNodeName": "node01",
+ "kubernetesVersion": "1.28.3",
+ "machineClusterVersion": "3.8.7",
+ "osImage": "v20220805e",
+ "oamIpv4Address": "192.0.2.1",
+ "oamIpv6Address": "0:0:0:0:0:FFFF:7F00:0001",
+ "hardwareValidationStatus": {
+ "result": "Pass",
+ "lastValidationTime": "2022-09-30T13:27:03.008Z"
+ },
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "machineRoles": [
+ "platform.afo-nc.microsoft.com/management-plane=true"
+ ],
+ "runtimeProtectionStatus": {
+ "scanScheduledTime": "2023-10-01T13:00:00.000Z",
+ "scanStartedTime": "2023-09-30T13:00:03.008Z",
+ "scanCompletedTime": "2023-09-30T13:27:23.103Z",
+ "definitionsLastUpdated": "2023-09-28T13:27:03.008Z",
+ "definitionsVersion": "1.2.3"
+ },
+ "secretRotationStatus": [
+ {
+ "secretType": "Bare Metal Machine Identity - console",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-console-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_PowerOff.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_PowerOff.json
new file mode 100644
index 000000000000..5520f5316545
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_PowerOff.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachinePowerOffParameters": {
+ "skipShutdown": "True"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Reimage.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Reimage.json
new file mode 100644
index 000000000000..76c3829e7e3c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Reimage.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Replace.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Replace.json
new file mode 100644
index 000000000000..630cde4b41f6
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Replace.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineReplaceParameters": {
+ "bootMacAddress": "00:00:4e:00:58:af",
+ "bmcCredentials": {
+ "username": "bmcuser",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "serialNumber": "BM1219XXX",
+ "bmcMacAddress": "00:00:4f:00:57:ad",
+ "machineName": "name"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Restart.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Restart.json
new file mode 100644
index 000000000000..76c3829e7e3c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Restart.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunCommand.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunCommand.json
new file mode 100644
index 000000000000..fac380f0277b
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunCommand.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineRunCommandParameters": {
+ "script": "cHdkCg==",
+ "arguments": [
+ "--argument1",
+ "argument2"
+ ],
+ "limitTimeSeconds": 60
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunDataExtracts.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunDataExtracts.json
new file mode 100644
index 000000000000..921321c2b9cc
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunDataExtracts.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineRunDataExtractsParameters": {
+ "commands": [
+ {
+ "command": "hardware-support-data-collection",
+ "arguments": [
+ "SysInfo",
+ "TTYLog"
+ ]
+ }
+ ],
+ "limitTimeSeconds": 60
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunReadCommands.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunReadCommands.json
new file mode 100644
index 000000000000..12197fa06ec2
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_RunReadCommands.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName",
+ "bareMetalMachineRunReadCommandsParameters": {
+ "commands": [
+ {
+ "command": "kubectl get",
+ "arguments": [
+ "pods",
+ "-A"
+ ]
+ },
+ {
+ "command": "ping",
+ "arguments": [
+ "192.168.0.99",
+ "-c",
+ "3"
+ ]
+ }
+ ],
+ "limitTimeSeconds": 60
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Start.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Start.json
new file mode 100644
index 000000000000..76c3829e7e3c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Start.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Uncordon.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Uncordon.json
new file mode 100644
index 000000000000..76c3829e7e3c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BareMetalMachines_Uncordon.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "bareMetalMachineName": "bareMetalMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Create.json
new file mode 100644
index 000000000000..4445eb91ca87
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Create.json
@@ -0,0 +1,159 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bmcKeySetName": "bmcKeySetName",
+ "bmcKeySetParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bmcKeySets/bmcKeySetName",
+ "name": "bmcKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bmcKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userXYZ@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bmcKeySets/bmcKeySetName",
+ "name": "bmcKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bmcKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userXYZ@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Accepted"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Delete.json
new file mode 100644
index 000000000000..a5f46a9e6b44
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bmcKeySetName": "bmcKeySetName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Get.json
new file mode 100644
index 000000000000..0bdf8946b86f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Get.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bmcKeySetName": "bmcKeySetName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bmcKeySets/bmcKeySetName",
+ "name": "bmcKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bmcKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userXYZ@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_ListByCluster.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_ListByCluster.json
new file mode 100644
index 000000000000..98701c318a7b
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_ListByCluster.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bmcKeySets/bmcKeySetName",
+ "name": "bmcKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bmcKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userXYZ@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Patch.json
new file mode 100644
index 000000000000..aa7128bd7f50
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/BmcKeySets_Patch.json
@@ -0,0 +1,156 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "bmcKeySetName": "bmcKeySetName",
+ "bmcKeySetUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bmcKeySets/bmcKeySetName",
+ "name": "bmcKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bmcKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userXYZ@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "userListStatus": [
+ {
+ "azureUserName": "userABC",
+ "status": "Active",
+ "statusMessage": "User has been provisioned"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "status": "Invalid",
+ "statusMessage": "User is not a valid Azure user"
+ }
+ ],
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/bmcKeySets/bmcKeySetName",
+ "name": "bmcKeySetName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/bmcKeySets",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "privilegeLevel": "Administrator",
+ "expiration": "2022-12-31T23:59:59.008Z",
+ "azureGroupId": "f110271b-XXXX-4163-9b99-214d91660f0e",
+ "userList": [
+ {
+ "azureUserName": "userABC",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userABC@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ },
+ {
+ "azureUserName": "userXYZ",
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "userPrincipalName": "userXYZ@contoso.com",
+ "description": "Needs access for troubleshooting as a part of the support team"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "lastValidation": "2022-12-12T12:00:00.008Z",
+ "detailedStatus": "SomeInvalid",
+ "detailedStatusMessage": "Invalid Azure user(s) were provided: userXYZ"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Create.json
new file mode 100644
index 000000000000..a46a0e9e6eee
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Create.json
@@ -0,0 +1,152 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "cloudServicesNetworkName": "cloudServicesNetworkName",
+ "cloudServicesNetworkParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Succeeded",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Succeeded",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Delete.json
new file mode 100644
index 000000000000..d04d52ac8112
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "cloudServicesNetworkName": "cloudServicesNetworkName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Get.json
new file mode 100644
index 000000000000..1d03fd9feacd
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Get.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "cloudServicesNetworkName": "cloudServicesNetworkName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Succeeded",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListByResourceGroup.json
new file mode 100644
index 000000000000..f24c539ac918
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListByResourceGroup.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Succeeded",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListBySubscription.json
new file mode 100644
index 000000000000..2694272a61f6
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_ListBySubscription.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Succeeded",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Patch.json
new file mode 100644
index 000000000000..18d03e8ac545
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/CloudServicesNetworks_Patch.json
@@ -0,0 +1,148 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "cloudServicesNetworkName": "cloudServicesNetworkName",
+ "cloudServicesNetworkUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Succeeded",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "name": "cloudServicesNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/cloudServicesNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "additionalEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "enableDefaultEgressEndpoints": "False",
+ "provisioningState": "Accepted",
+ "interfaceName": "eth0",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "enabledEgressEndpoints": [
+ {
+ "category": "azure-resource-management",
+ "endpoints": [
+ {
+ "domainName": "storageaccountex.blob.core.windows.net",
+ "port": 443
+ }
+ ]
+ }
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Cloud services network is up"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create.json
new file mode 100644
index 000000000000..856ff236a823
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create.json
@@ -0,0 +1,131 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterManagerName": "clusterManagerName",
+ "clusterManagerParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "principalId": "321e7654-e89b-12d3-a456-426655449999",
+ "tenantId": "199e9999-e89b-12d3-a456-426655441111",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "principalId": "321e7654-e89b-12d3-a456-426655449999",
+ "tenantId": "199e9999-e89b-12d3-a456-426655441111",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create_Uami.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create_Uami.json
new file mode 100644
index 000000000000..bfacd3e41dda
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Create_Uami.json
@@ -0,0 +1,142 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterManagerName": "clusterManagerName",
+ "clusterManagerParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Delete.json
new file mode 100644
index 000000000000..deb0960fe273
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterManagerName": "clusterManagerName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Get.json
new file mode 100644
index 000000000000..2df832b63ccc
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Get.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterManagerName": "clusterManagerName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "principalId": "321e7654-e89b-12d3-a456-426655449999",
+ "tenantId": "199e9999-e89b-12d3-a456-426655441111",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListByResourceGroup.json
new file mode 100644
index 000000000000..8ec29e5f44c3
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListByResourceGroup.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "principalId": "321e7654-e89b-12d3-a456-426655449999",
+ "tenantId": "199e9999-e89b-12d3-a456-426655441111",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListBySubscription.json
new file mode 100644
index 000000000000..d46966caca20
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_ListBySubscription.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "principalId": "321e7654-e89b-12d3-a456-426655449999",
+ "tenantId": "199e9999-e89b-12d3-a456-426655441111",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Patch.json
new file mode 100644
index 000000000000..1689daccd8ff
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterManagers_Patch.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterManagerName": "clusterManagerName",
+ "clusterManagerUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": null,
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "name": "clusterManagerName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusterManagers",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "managerExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "fabricControllerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "clusterVersions": [
+ {
+ "targetClusterVersion": "1.0.0",
+ "supportExpiryDate": "2023-04-29"
+ },
+ {
+ "targetClusterVersion": "1.0.2",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "cluster manager is up and running",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Create.json
new file mode 100644
index 000000000000..edbcbeb3455c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Create.json
@@ -0,0 +1,108 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "metricsConfigurationName": "default",
+ "metricsConfigurationParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/metricsConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/metricsConfigurations",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15,
+ "provisioningState": "Succeeded",
+ "disabledMetrics": [
+ "metric3",
+ "metric4"
+ ],
+ "detailedStatus": "Applied",
+ "detailedStatusMessage": "Metrics configuration has been successfully applied to all resources."
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/metricsConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/metricsConfigurations",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15,
+ "provisioningState": "Accepted",
+ "disabledMetrics": [
+ "metric3",
+ "metric4"
+ ],
+ "detailedStatus": "Applied",
+ "detailedStatusMessage": "Metrics configuration has been successfully applied to all resources."
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Delete.json
new file mode 100644
index 000000000000..1db690ff14d1
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "metricsConfigurationName": "default"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Get.json
new file mode 100644
index 000000000000..e8558792a9dd
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Get.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "metricsConfigurationName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/metricsConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/metricsConfigurations",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15,
+ "provisioningState": "Succeeded",
+ "disabledMetrics": [
+ "metric3",
+ "metric4"
+ ],
+ "detailedStatus": "Applied",
+ "detailedStatusMessage": "Metrics configuration has been successfully applied to all resources."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_ListByCluster.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_ListByCluster.json
new file mode 100644
index 000000000000..73cfb15676ad
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_ListByCluster.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/metricsConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/metricsConfigurations",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15,
+ "provisioningState": "Succeeded",
+ "disabledMetrics": [
+ "metric3",
+ "metric4"
+ ],
+ "detailedStatus": "Applied",
+ "detailedStatusMessage": "Metrics configuration has been successfully applied to all resources."
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Patch.json
new file mode 100644
index 000000000000..dcaacca1d6b3
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/ClusterMetricsConfigurations_Patch.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "metricsConfigurationName": "default",
+ "metricsConfigurationUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/metricsConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/metricsConfigurations",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15,
+ "provisioningState": "Succeeded",
+ "disabledMetrics": [
+ "metric3",
+ "metric4"
+ ],
+ "detailedStatus": "Applied",
+ "detailedStatusMessage": "Metrics configuration has been successfully applied to all resources."
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName/metricsConfigurations/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters/metricsConfigurations",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "enabledMetrics": [
+ "metric1",
+ "metric2"
+ ],
+ "collectionInterval": 15,
+ "provisioningState": "Accepted",
+ "disabledMetrics": [
+ "metric3",
+ "metric4"
+ ],
+ "detailedStatus": "Applied",
+ "detailedStatusMessage": "Metrics configuration has been successfully applied to all resources."
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ContinueUpdateVersion.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ContinueUpdateVersion.json
new file mode 100644
index 000000000000..5313da770ea1
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ContinueUpdateVersion.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterContinueUpdateVersionParameters": {
+ "machineGroupTargetingMode": "AlphaByRack"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Create.json
new file mode 100644
index 000000000000..6e321b0f44d3
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Create.json
@@ -0,0 +1,583 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username",
+ "password": "https://keyvaultname.vault.azure.net/secrets/secretName"
+ },
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012",
+ "password": "{password}"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "PendingDeployment",
+ "detailedStatusMessage": "Cluster creation is accepted. Deployment is pending.",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Delete.json
new file mode 100644
index 000000000000..40e14e7977fb
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy.json
new file mode 100644
index 000000000000..85e2199da976
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterDeployParameters": {}
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy_SkipValidation.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy_SkipValidation.json
new file mode 100644
index 000000000000..43a9cd82cd60
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Deploy_SkipValidation.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterDeployParameters": {
+ "skipValidationsForMachines": [
+ "bmmName1"
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Get.json
new file mode 100644
index 000000000000..51680e228356
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Get.json
@@ -0,0 +1,215 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListByResourceGroup.json
new file mode 100644
index 000000000000..c54411132d11
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListByResourceGroup.json
@@ -0,0 +1,219 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListBySubscription.json
new file mode 100644
index 000000000000..54563b6f700c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ListBySubscription.json
@@ -0,0 +1,218 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AggregatorOrSingleRackDefinition.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AggregatorOrSingleRackDefinition.json
new file mode 100644
index 000000000000..6518db7e5dc2
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AggregatorOrSingleRackDefinition.json
@@ -0,0 +1,480 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "newSerialNumber",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username",
+ "password": "{password}"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username",
+ "password": "{password}"
+ },
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username",
+ "password": "{password}"
+ },
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "newSerialNumber",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "newSerialNumber",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AnalyticsOutput.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AnalyticsOutput.json
new file mode 100644
index 000000000000..ba8fcccb2738
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_AnalyticsOutput.json
@@ -0,0 +1,452 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": null,
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {}
+ }
+ },
+ "properties": {
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_CommandOutput.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_CommandOutput.json
new file mode 100644
index 000000000000..b36cbda5b699
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_CommandOutput.json
@@ -0,0 +1,452 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": null,
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {}
+ }
+ },
+ "properties": {
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2": {
+ "clientId": "200e0000-e89b-12d3-a456-426655440000",
+ "principalId": "321e7654-e89b-12d3-a456-426655449999"
+ }
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity2"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_Location.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_Location.json
new file mode 100644
index 000000000000..098c1200f9d7
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_Location.json
@@ -0,0 +1,433 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "clusterLocation": "Foo Street, 3rd Floor, row 9"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_RuntimeProtectionConfiguration.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_RuntimeProtectionConfiguration.json
new file mode 100644
index 000000000000..37e18a924daf
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_RuntimeProtectionConfiguration.json
@@ -0,0 +1,435 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_SecretArchive.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_SecretArchive.json
new file mode 100644
index 000000000000..431a4c3783a3
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_SecretArchive.json
@@ -0,0 +1,439 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_UpdateStrategy.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_UpdateStrategy.json
new file mode 100644
index 000000000000..7d5e2404ccba
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_UpdateStrategy.json
@@ -0,0 +1,439 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_VulnerabilityScanning.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_VulnerabilityScanning.json
new file mode 100644
index 000000000000..13d81a870673
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_Patch_VulnerabilityScanning.json
@@ -0,0 +1,435 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Succeeded",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "name": "clusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/clusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1": {}
+ }
+ },
+ "properties": {
+ "networkFabricId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabrics/fabricName",
+ "clusterType": "SingleRack",
+ "analyticsOutputSettings": {
+ "analyticsWorkspaceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/microsoft.operationalInsights/workspaces/logAnalyticsWorkspaceName",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "clusterLocation": "Foo Street, 3rd Floor, row 9",
+ "clusterVersion": "1.0.0",
+ "aggregatorOrSingleRackDefinition": {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ },
+ "computeRackDefinitions": [
+ {
+ "networkRackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/networkRackName",
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "AA1234",
+ "rackLocation": "Foo Datacenter, Floor 3, Aisle 9, Rack 2",
+ "storageApplianceConfigurationData": [
+ {
+ "rackSlot": 1,
+ "adminCredentials": {
+ "username": "username"
+ },
+ "storageApplianceName": "vmName",
+ "serialNumber": "BM1219XXX"
+ }
+ ],
+ "bareMetalMachineConfigurationData": [
+ {
+ "rackSlot": 1,
+ "bootMacAddress": "00:BB:CC:DD:EE:FF",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName1",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:FF",
+ "serialNumber": "BM1219XXX"
+ },
+ {
+ "rackSlot": 2,
+ "bootMacAddress": "00:BB:CC:DD:EE:00",
+ "bmcCredentials": {
+ "username": "username"
+ },
+ "bmcConnectionString": "bmcConnectionString",
+ "machineName": "bmmName2",
+ "machineDetails": "extraDetails",
+ "bmcMacAddress": "AA:BB:CC:DD:EE:00",
+ "serialNumber": "BM1219YYY"
+ }
+ ]
+ }
+ ],
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "clusterServicePrincipal": {
+ "tenantId": "80000000-4000-4000-4000-120000000000",
+ "principalId": "00000008-0004-0004-0004-000000000012",
+ "applicationId": "12345678-1234-1234-1234-123456789012"
+ },
+ "commandOutputSettings": {
+ "containerUrl": "https://myaccount.blob.core.windows.net/mycontainer?restype=container",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "computeDeploymentThreshold": {
+ "type": "PercentSuccess",
+ "grouping": "PerCluster",
+ "value": 90
+ },
+ "secretArchiveSettings": {
+ "vaultUri": "https://keyvaultname.vault.azure.net/",
+ "associatedIdentity": {
+ "identityType": "UserAssignedIdentity",
+ "userAssignedIdentityResourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userIdentity1"
+ }
+ },
+ "updateStrategy": {
+ "strategyType": "Rack",
+ "waitTimeMinutes": 10,
+ "thresholdType": "CountSuccess",
+ "thresholdValue": 4,
+ "maxUnavailable": 4
+ },
+ "runtimeProtectionConfiguration": {
+ "enforcementLevel": "OnDemand"
+ },
+ "vulnerabilityScanningSettings": {
+ "containerScan": "Enabled"
+ },
+ "provisioningState": "Accepted",
+ "clusterExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "clusterManagerId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusterManagers/clusterManagerName",
+ "availableUpgradeVersions": [
+ {
+ "targetClusterVersion": "1.0.2",
+ "expectedDuration": "0:0:30",
+ "controlImpact": "False",
+ "workloadImpact": "False",
+ "impactDescription": "can be done in place",
+ "supportExpiryDate": "2025-01-01"
+ }
+ ],
+ "supportExpiryDate": "2023-04-29",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Cluster is running and healthy",
+ "clusterManagerConnectionStatus": "Connected",
+ "clusterConnectionStatus": "Connected",
+ "workloadResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName"
+ ],
+ "clusterCapacity": {
+ "totalCoreCount": 10,
+ "availableCoreCount": 10,
+ "totalMemoryGB": 10,
+ "availableMemoryGB": 20,
+ "totalHostStorageGB": 10,
+ "availableHostStorageGB": 20,
+ "totalApplianceStorageGB": 10,
+ "availableApplianceStorageGB": 3
+ },
+ "manualActionCount": 0
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ScanRuntime.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ScanRuntime.json
new file mode 100644
index 000000000000..f27ed3fb0fd8
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_ScanRuntime.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterScanRuntimeParameters": {
+ "scanActivity": "Scan"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_UpdateVersion.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_UpdateVersion.json
new file mode 100644
index 000000000000..bdae447861b6
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Clusters_UpdateVersion.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "clusterName": "clusterName",
+ "clusterUpdateVersionParameters": {
+ "targetClusterVersion": "2.0"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Create.json
new file mode 100644
index 000000000000..0622bdab9756
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Create.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "consoleName": "default",
+ "consoleParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName/consoles/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines/consoles",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "provisioningState": "Succeeded",
+ "privateLinkServiceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Network/privateLinkServices/console-pls",
+ "virtualMachineAccessId": "VirtualMachineAccessId",
+ "detailedStatus": "Ready",
+ "detailedStatusMessage": "Console is ready for use"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName/consoles/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines/consoles",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "provisioningState": "Accepted",
+ "privateLinkServiceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Network/privateLinkServices/console-pls",
+ "virtualMachineAccessId": "VirtualMachineAccessId",
+ "detailedStatus": "Ready",
+ "detailedStatusMessage": "Console is ready for use"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Delete.json
new file mode 100644
index 000000000000..8d76f7cbbc9a
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "consoleName": "default"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Get.json
new file mode 100644
index 000000000000..b337dc18cc49
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Get.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "consoleName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName/consoles/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines/consoles",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "provisioningState": "Succeeded",
+ "privateLinkServiceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Network/privateLinkServices/console-pls",
+ "virtualMachineAccessId": "VirtualMachineAccessId",
+ "detailedStatus": "Ready",
+ "detailedStatusMessage": "Console is ready for use"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_ListByVirtualMachine.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_ListByVirtualMachine.json
new file mode 100644
index 000000000000..aea132e16ca9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_ListByVirtualMachine.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName/consoles/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines/consoles",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "provisioningState": "Succeeded",
+ "privateLinkServiceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Network/privateLinkServices/console-pls",
+ "virtualMachineAccessId": "VirtualMachineAccessId",
+ "detailedStatus": "Ready",
+ "detailedStatusMessage": "Console is ready for use"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Patch.json
new file mode 100644
index 000000000000..e2beb6f4a714
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Consoles_Patch.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "consoleName": "default",
+ "consoleUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "enabled": "True"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName/consoles/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines/consoles",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "provisioningState": "Succeeded",
+ "privateLinkServiceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Network/privateLinkServices/console-pls",
+ "virtualMachineAccessId": "VirtualMachineAccessId",
+ "detailedStatus": "Ready",
+ "detailedStatusMessage": "Console is ready for use"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName/consoles/default",
+ "name": "default",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines/consoles",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterManagerExtendedLocationName"
+ },
+ "properties": {
+ "sshPublicKey": {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ },
+ "enabled": "True",
+ "expiration": "2022-06-01T01:27:03.008Z",
+ "provisioningState": "Accepted",
+ "privateLinkServiceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Network/privateLinkServices/console-pls",
+ "virtualMachineAccessId": "VirtualMachineAccessId",
+ "detailedStatus": "Ready",
+ "detailedStatusMessage": "Console is ready for use"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Create.json
new file mode 100644
index 000000000000..245f975da55b
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Create.json
@@ -0,0 +1,97 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "featureName": "featureName",
+ "kubernetesClusterFeatureParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/features/featureName",
+ "name": "featureName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/features",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ],
+ "availabilityLifecycle": "GenerallyAvailable",
+ "detailedStatus": "Installed",
+ "detailedStatusMessage": "The feature is successfully installed.",
+ "required": "True",
+ "version": "1.2.3",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/features/featureName",
+ "name": "featureName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/features",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ],
+ "availabilityLifecycle": "GenerallyAvailable",
+ "detailedStatus": "Installed",
+ "detailedStatusMessage": "The feature is successfully installed.",
+ "required": "True",
+ "version": "1.2.3",
+ "provisioningState": "Accepted"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Delete.json
new file mode 100644
index 000000000000..055bf876dc3f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "featureName": "featureName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Get.json
new file mode 100644
index 000000000000..4cec03acb171
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Get.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "featureName": "featureName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/features/featureName",
+ "name": "featureName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/features",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ],
+ "availabilityLifecycle": "GenerallyAvailable",
+ "detailedStatus": "Installed",
+ "detailedStatusMessage": "The feature is successfully installed.",
+ "required": "True",
+ "version": "1.2.3",
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_ListByKubernetesCluster.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_ListByKubernetesCluster.json
new file mode 100644
index 000000000000..22d5dc1beae2
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_ListByKubernetesCluster.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/features/featureName",
+ "name": "featureName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/features",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ],
+ "availabilityLifecycle": "GenerallyAvailable",
+ "detailedStatus": "Installed",
+ "detailedStatusMessage": "The feature is successfully installed.",
+ "required": "True",
+ "version": "1.2.3",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Patch.json
new file mode 100644
index 000000000000..4bce23acbbcf
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusterFeatures_Patch.json
@@ -0,0 +1,97 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "featureName": "featureName",
+ "kubernetesClusterFeatureUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/features/featureName",
+ "name": "featureName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/features",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ],
+ "availabilityLifecycle": "GenerallyAvailable",
+ "detailedStatus": "Installed",
+ "detailedStatusMessage": "The feature is successfully installed.",
+ "required": "True",
+ "version": "1.2.3",
+ "provisioningState": "Succeeded"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/features/featureName",
+ "name": "featureName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/features",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "options": [
+ {
+ "key": "featureOptionName",
+ "value": "featureOptionValue"
+ }
+ ],
+ "availabilityLifecycle": "GenerallyAvailable",
+ "detailedStatus": "Installed",
+ "detailedStatusMessage": "The feature is successfully installed.",
+ "required": "True",
+ "version": "1.2.3",
+ "provisioningState": "Accepted"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Create.json
new file mode 100644
index 000000000000..a9437109b4d0
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Create.json
@@ -0,0 +1,798 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "kubernetesClusterParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Accepted",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Delete.json
new file mode 100644
index 000000000000..914195bae5d9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Get.json
new file mode 100644
index 000000000000..7cb012740940
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Get.json
@@ -0,0 +1,312 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_L2LoadBalancer_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_L2LoadBalancer_Create.json
new file mode 100644
index 000000000000..79e6abd76719
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_L2LoadBalancer_Create.json
@@ -0,0 +1,711 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "kubernetesClusterParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "l2ServiceLoadBalancerConfiguration": {
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.2-198.51.102.254"
+ ],
+ "autoAssign": "True",
+ "name": "pool1"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "l2ServiceLoadBalancerConfiguration": {
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.2-198.51.102.254"
+ ],
+ "autoAssign": "True",
+ "name": "pool1"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "l2ServiceLoadBalancerConfiguration": {
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.2-198.51.102.254"
+ ],
+ "autoAssign": "True",
+ "name": "pool1"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Accepted",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListByResourceGroup.json
new file mode 100644
index 000000000000..cb23ca45c8b0
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListByResourceGroup.json
@@ -0,0 +1,316 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListBySubscription.json
new file mode 100644
index 000000000000..6f47da62c568
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_ListBySubscription.json
@@ -0,0 +1,314 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Patch.json
new file mode 100644
index 000000000000..b54c5f3dc59f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_Patch.json
@@ -0,0 +1,644 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "kubernetesClusterUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "administratorConfiguration": {
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "count": 3
+ },
+ "kubernetesVersion": "1.XX.Y"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName",
+ "name": "KubernetesClusterName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/kubernetesClusters",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "aadConfiguration": {
+ "adminGroupObjectIds": [
+ "ffffffff-ffff-ffff-ffff-ffffffffffff"
+ ]
+ },
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "initialAgentPoolConfigurations": [
+ {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "agentOptions": {
+ "hugepagesCount": 96,
+ "hugepagesSize": "1G"
+ },
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "mode": "System",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "upgradeSettings": {
+ "maxSurge": "1"
+ },
+ "vmSkuName": "NC_P46_224_v1",
+ "name": "SystemPool-1"
+ }
+ ],
+ "controlPlaneNodeConfiguration": {
+ "administratorConfiguration": {
+ "adminUsername": "azure",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ },
+ "availabilityZones": [
+ "1",
+ "2",
+ "3"
+ ],
+ "count": 3,
+ "vmSkuName": "NC_G6_28_v1"
+ },
+ "kubernetesVersion": "1.XX.Y",
+ "managedResourceGroupConfiguration": {
+ "name": "my-managed-rg",
+ "location": "East US"
+ },
+ "networkConfiguration": {
+ "attachedNetworkConfiguration": {
+ "l2Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "pluginType": "DPDK"
+ }
+ ],
+ "l3Networks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "pluginType": "SRIOV",
+ "ipamEnabled": "False"
+ }
+ ],
+ "trunkedNetworks": [
+ {
+ "networkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "pluginType": "MACVLAN"
+ }
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "bgpAdvertisements": [
+ {
+ "advertiseToFabric": "True",
+ "communities": [
+ "64512:100"
+ ],
+ "ipAddressPools": [
+ "pool1"
+ ],
+ "peers": [
+ "peer1"
+ ]
+ }
+ ],
+ "fabricPeeringEnabled": "True",
+ "bgpPeers": [
+ {
+ "bfdEnabled": "False",
+ "bgpMultiHop": "False",
+ "holdTime": "P300s",
+ "keepAliveTime": "P300s",
+ "myAsn": 64512,
+ "name": "peer1",
+ "peerAddress": "203.0.113.254",
+ "peerAsn": 64497,
+ "peerPort": 179
+ }
+ ],
+ "ipAddressPools": [
+ {
+ "addresses": [
+ "198.51.102.0/24"
+ ],
+ "autoAssign": "True",
+ "name": "pool1",
+ "onlyUseHostIps": "True"
+ }
+ ]
+ },
+ "cloudServicesNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "cniNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "dnsServiceIp": "198.51.101.2",
+ "podCidrs": [
+ "198.51.100.0/24"
+ ],
+ "serviceCidrs": [
+ "198.51.101.0/24"
+ ]
+ },
+ "provisioningState": "Accepted",
+ "availableUpgrades": [
+ {
+ "version": "1.XX.Y",
+ "availabilityLifecycle": "GenerallyAvailable"
+ }
+ ],
+ "attachedNetworkIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName"
+ ],
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "connectedClusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters/connectedClusterName",
+ "controlPlaneKubernetesVersion": "1.XX.Y",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Kubernetes cluster is operational",
+ "featureStatuses": [
+ {
+ "name": "Feature1",
+ "version": "1",
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "No issues detected"
+ }
+ ],
+ "nodes": [
+ {
+ "agentPoolId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/kubernetesClusters/kubernetesClusterName/agentPools/agentPoolName",
+ "availabilityZone": "1",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 46,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "labels": [
+ {
+ "key": "kubernetes.label",
+ "value": "true"
+ }
+ ],
+ "memorySizeGB": 224,
+ "mode": "System",
+ "name": "kubernetesClusterName-SystemPool-1-md-cqjvd",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.4",
+ "macAddress": "aa:bb:cc:06:79:2a",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.12",
+ "ipv6Address": "fda0:d59c:da0a:e30::a",
+ "macAddress": "aa:bb:cc:ad:40:cf",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "Worker",
+ "taints": [
+ {
+ "key": "kubernetes.taint",
+ "value": "true:NoSchedule"
+ }
+ ],
+ "vmSkuName": "NC_P46_224_v1"
+ },
+ {
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "cpuCores": 6,
+ "detailedStatus": "Running",
+ "detailedStatusMessage": "Running - virtual machine is running.",
+ "diskSizeGB": 300,
+ "image": "mariner-guest-image-qcow2-k8s-1.XX.Y",
+ "kubernetesVersion": "v1.XX.Y",
+ "memorySizeGB": 28,
+ "name": "kubernetesClusterName-control-plane-7nsh2",
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "cloudservices",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "169.254.8.2",
+ "macAddress": "aa:bb:cc:fa:91:71",
+ "defaultGateway": "False"
+ },
+ {
+ "networkAttachmentName": "defaultcni",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "10.14.48.11",
+ "ipv6Address": "fda0:d59c:da0a:e30::9",
+ "macAddress": "aa:bb:cc:c8:a2:40",
+ "defaultGateway": "False"
+ }
+ ],
+ "powerState": "On",
+ "role": "ControlPlane",
+ "vmSkuName": "NC_G6_28_v1"
+ }
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_RestartNode.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_RestartNode.json
new file mode 100644
index 000000000000..97e9488c46cc
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/KubernetesClusters_RestartNode.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "kubernetesClusterName": "kubernetesClusterName",
+ "kubernetesClusterRestartNodeParameters": {
+ "nodeName": "nodeName"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Create.json
new file mode 100644
index 000000000000..5af79864205c
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Create.json
@@ -0,0 +1,99 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l2NetworkName": "l2NetworkName",
+ "l2NetworkParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "hybridAksPluginType": "DPDK"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "name": "l2NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l2Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L2 network is up"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "name": "l2NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l2Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L2 network is up"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Delete.json
new file mode 100644
index 000000000000..59445fd83fd9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l2NetworkName": "l2NetworkName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Get.json
new file mode 100644
index 000000000000..d9a36f66a7c9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Get.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l2NetworkName": "l2NetworkName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "name": "l2NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l2Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L2 network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListByResourceGroup.json
new file mode 100644
index 000000000000..206dfcf27a62
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListByResourceGroup.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "name": "l2NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l2Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L2 network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListBySubscription.json
new file mode 100644
index 000000000000..397eb75650ca
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_ListBySubscription.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "name": "l2NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l2Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L2 network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Patch.json
new file mode 100644
index 000000000000..0ce53d2b2351
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L2Networks_Patch.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l2NetworkName": "l2NetworkName",
+ "l2NetworkUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l2Networks/l2NetworkName",
+ "name": "l2NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l2Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l2IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L2 network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Create.json
new file mode 100644
index 000000000000..820220ba023a
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Create.json
@@ -0,0 +1,110 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l3NetworkName": "l3NetworkName",
+ "l3NetworkParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "name": "l3NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l3Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L3 network is up"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "name": "l3NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l3Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L3 network is up"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Delete.json
new file mode 100644
index 000000000000..fded2f843a4b
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l3NetworkName": "l3NetworkName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Get.json
new file mode 100644
index 000000000000..9114f9adab9f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Get.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l3NetworkName": "l3NetworkName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "name": "l3NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l3Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L3 network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListByResourceGroup.json
new file mode 100644
index 000000000000..1216032d3cc5
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListByResourceGroup.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "name": "l3NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l3Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L3 network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListBySubscription.json
new file mode 100644
index 000000000000..c016a39c84f9
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_ListBySubscription.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "name": "l3NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l3Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L3 network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Patch.json
new file mode 100644
index 000000000000..8e7d07a60a99
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/L3Networks_Patch.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "l3NetworkName": "l3NetworkName",
+ "l3NetworkUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "name": "l3NetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/l3Networks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "l3IsolationDomainId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName",
+ "vlan": 12,
+ "ipAllocationType": "DualStack",
+ "ipv4ConnectedPrefix": "198.51.100.0/24",
+ "ipv6ConnectedPrefix": "2001:db8::/64",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "L3 network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Operations_List.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Operations_List.json
new file mode 100644
index 000000000000..86afbc895cba
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Operations_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://fully.qualified.hyperlink",
+ "value": [
+ {
+ "actionType": "Internal",
+ "display": {
+ "description": "Reads Network Cloud cluster(s)",
+ "operation": "Get/list Network Cloud cluster resources",
+ "provider": "Microsoft Network Cloud",
+ "resource": "Network Cloud cluster"
+ },
+ "isDataAction": true,
+ "name": "Microsoft.NetworkCloud/clusters/Read",
+ "origin": "user,system"
+ },
+ {
+ "actionType": "Internal",
+ "display": {
+ "description": "Writes Network Cloud cluster(s)",
+ "operation": "Create/update Network Cloud cluster resources",
+ "provider": "Microsoft Network Cloud",
+ "resource": "Network Cloud cluster"
+ },
+ "isDataAction": true,
+ "name": "Microsoft.NetworkCloud/clusters/Write",
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_Get.json
new file mode 100644
index 000000000000..14e13ec3f281
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_Get.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "rackSkuName": "rackSkuName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "name": "rackSkuName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/rackSkus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "rackType": "Single",
+ "maxClusterSlots": 0,
+ "description": "Sample SKU for the single rack.",
+ "controllerMachines": [
+ {
+ "properties": {
+ "vendor": "Dell",
+ "model": "PowerEdge R650",
+ "generation": "8",
+ "hardwareVersion": "3",
+ "bootstrapProtocol": "PXE",
+ "cpuSockets": 1,
+ "cpuCores": 8,
+ "totalThreads": 16,
+ "memoryCapacityGB": 128,
+ "disks": [
+ {
+ "capacityGB": 893,
+ "type": "SSD",
+ "connection": "SAS"
+ }
+ ],
+ "networkInterfaces": [
+ {
+ "address": "04:00.0",
+ "physicalSlot": 2,
+ "portCount": 2,
+ "portSpeed": 1,
+ "deviceConnectionType": "PCI",
+ "vendor": "Broadcom Corp",
+ "model": "Broadcom Gigabit Ethernet BCM5720"
+ }
+ ]
+ },
+ "rackSlot": 5
+ }
+ ],
+ "computeMachines": [
+ {
+ "properties": {
+ "vendor": "Dell",
+ "model": "PowerEdge R750",
+ "generation": "8",
+ "hardwareVersion": "3",
+ "bootstrapProtocol": "PXE",
+ "cpuSockets": 2,
+ "cpuCores": 28,
+ "totalThreads": 112,
+ "memoryCapacityGB": 512,
+ "disks": [
+ {
+ "capacityGB": 893,
+ "type": "SSD",
+ "connection": "SAS"
+ }
+ ],
+ "networkInterfaces": [
+ {
+ "address": "04:00.0",
+ "physicalSlot": 1,
+ "portCount": 2,
+ "portSpeed": 1,
+ "deviceConnectionType": "PCI",
+ "vendor": "Broadcom Corp",
+ "model": "Broadcom Gigabit Ethernet BCM5720"
+ }
+ ]
+ },
+ "rackSlot": 1
+ }
+ ],
+ "storageAppliances": [
+ {
+ "properties": {
+ "capacityGB": 9100,
+ "model": "x70r3-9"
+ },
+ "rackSlot": 2
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_ListBySubscription.json
new file mode 100644
index 000000000000..a017663e56d0
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/RackSkus_ListBySubscription.json
@@ -0,0 +1,110 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "name": "rackSkuName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/rackSkus",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "rackType": "Single",
+ "maxClusterSlots": 0,
+ "description": "Sample SKU for the single rack.",
+ "controllerMachines": [
+ {
+ "properties": {
+ "vendor": "Dell",
+ "model": "PowerEdge R650",
+ "generation": "8",
+ "hardwareVersion": "3",
+ "bootstrapProtocol": "PXE",
+ "cpuSockets": 1,
+ "cpuCores": 8,
+ "totalThreads": 16,
+ "memoryCapacityGB": 128,
+ "disks": [
+ {
+ "capacityGB": 893,
+ "type": "SSD",
+ "connection": "SAS"
+ }
+ ],
+ "networkInterfaces": [
+ {
+ "address": "04:00.0",
+ "physicalSlot": 2,
+ "portCount": 2,
+ "portSpeed": 1,
+ "deviceConnectionType": "PCI",
+ "vendor": "Broadcom Corp",
+ "model": "Broadcom Gigabit Ethernet BCM5720"
+ }
+ ]
+ },
+ "rackSlot": 5
+ }
+ ],
+ "computeMachines": [
+ {
+ "properties": {
+ "vendor": "Dell",
+ "model": "PowerEdge R750",
+ "generation": "8",
+ "hardwareVersion": "3",
+ "bootstrapProtocol": "PXE",
+ "cpuSockets": 2,
+ "cpuCores": 28,
+ "totalThreads": 112,
+ "memoryCapacityGB": 512,
+ "disks": [
+ {
+ "capacityGB": 893,
+ "type": "SSD",
+ "connection": "SAS"
+ }
+ ],
+ "networkInterfaces": [
+ {
+ "address": "04:00.0",
+ "physicalSlot": 1,
+ "portCount": 2,
+ "portSpeed": 1,
+ "deviceConnectionType": "PCI",
+ "vendor": "Broadcom Corp",
+ "model": "Broadcom Gigabit Ethernet BCM5720"
+ }
+ ]
+ },
+ "rackSlot": 1
+ }
+ ],
+ "storageAppliances": [
+ {
+ "properties": {
+ "capacityGB": 9100,
+ "model": "x70r3-9"
+ },
+ "rackSlot": 2
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Create.json
new file mode 100644
index 000000000000..278b58af62f5
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Create.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "rackName": "rackName",
+ "rackParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Accepted",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Delete.json
new file mode 100644
index 000000000000..7c359b95b03d
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "rackName": "rackName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Get.json
new file mode 100644
index 000000000000..21b83d1cba60
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Get.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "rackName": "rackName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListByResourceGroup.json
new file mode 100644
index 000000000000..a504132b46ac
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListByResourceGroup.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListBySubscription.json
new file mode 100644
index 000000000000..3e051f7ce2d2
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_ListBySubscription.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Patch.json
new file mode 100644
index 000000000000..99d8310f09a2
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Racks_Patch.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "rackName": "rackName",
+ "rackUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "rackLocation": "Rack 2B"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "name": "rackName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/racks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackSkuId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/rackSkus/rackSkuName",
+ "rackSerialNumber": "RACK_SERIAL_NUMBER",
+ "availabilityZone": "1",
+ "rackLocation": "Rack 28",
+ "provisioningState": "Accepted",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Rack is operational"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Create.json
new file mode 100644
index 000000000000..241d21d224ac
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Create.json
@@ -0,0 +1,150 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "storageApplianceName": "storageApplianceName",
+ "storageApplianceParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser",
+ "password": "{password}"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Accepted",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Delete.json
new file mode 100644
index 000000000000..40c6890398f1
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "storageApplianceName": "storageApplianceName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_DisableRemoteVendorManagement.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_DisableRemoteVendorManagement.json
new file mode 100644
index 000000000000..299e614ee5fc
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_DisableRemoteVendorManagement.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "storageApplianceName": "storageApplianceName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_EnableRemoteVendorManagement.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_EnableRemoteVendorManagement.json
new file mode 100644
index 000000000000..c1db4ff860de
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_EnableRemoteVendorManagement.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "storageApplianceName": "storageApplianceName",
+ "storageApplianceEnableRemoteVendorManagementParameters": {
+ "supportEndpoints": [
+ "10.0.0.0/24"
+ ]
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Get.json
new file mode 100644
index 000000000000..2f700121866f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Get.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "storageApplianceName": "storageApplianceName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListByResourceGroup.json
new file mode 100644
index 000000000000..293144d6bb59
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListByResourceGroup.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListBySubscription.json
new file mode 100644
index 000000000000..1bf669779889
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_ListBySubscription.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Patch.json
new file mode 100644
index 000000000000..38ab8f4f64c5
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/StorageAppliances_Patch.json
@@ -0,0 +1,139 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "storageApplianceName": "storageApplianceName",
+ "storageApplianceUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "serialNumber": "BM1219XXX"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/storageAppliances/storageApplianceName",
+ "name": "storageApplianceName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/storageAppliances",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "rackId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "storageApplianceSkuId": "684E-3B16-399E",
+ "rackSlot": 1,
+ "serialNumber": "BM1219XXX",
+ "administratorCredentials": {
+ "username": "adminUser"
+ },
+ "provisioningState": "Accepted",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "capacity": 893,
+ "capacityUsed": 500,
+ "remoteVendorManagementStatus": "Enabled",
+ "remoteVendorManagementFeature": "Supported",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Storage appliance is up and running",
+ "managementIpv4Address": "192.0.2.2",
+ "manufacturer": "Contoso Storage",
+ "model": "ArrayStore-Flash70",
+ "secretRotationStatus": [
+ {
+ "secretType": "Storage Appliance User",
+ "lastRotationTime": "2023-09-30T13:27:23.103Z",
+ "rotationPeriodDays": 60,
+ "expirePeriodDays": 90,
+ "secretArchiveReference": {
+ "keyVaultId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.KeyVault/vaults/keyVaultName",
+ "secretName": "ffffffff-ffff-ffff-ffff-ffffffffffff-resource-group-cluster-1679871-storage-appliance-credential-manager-ffffffff",
+ "secretVersion": "02ab6c1f9c0f4982b0632b0d5d74a33b"
+ }
+ }
+ ],
+ "version": "9.9.9"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Create.json
new file mode 100644
index 000000000000..c722a69c0feb
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Create.json
@@ -0,0 +1,119 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "trunkedNetworkName": "trunkedNetworkName",
+ "trunkedNetworkParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "name": "trunkedNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/trunkedNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ],
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Trunked network is up"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "name": "trunkedNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/trunkedNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ],
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Trunked network is up"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Delete.json
new file mode 100644
index 000000000000..7f0b82697c17
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "trunkedNetworkName": "trunkedNetworkName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Get.json
new file mode 100644
index 000000000000..5cac2b2c71c8
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Get.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "trunkedNetworkName": "trunkedNetworkName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "name": "trunkedNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/trunkedNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ],
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Trunked network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListByResourceGroup.json
new file mode 100644
index 000000000000..aa9bb3b80b4f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListByResourceGroup.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "name": "trunkedNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/trunkedNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ],
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Trunked network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListBySubscription.json
new file mode 100644
index 000000000000..5e00d3e2202f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_ListBySubscription.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "name": "trunkedNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/trunkedNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ],
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Trunked network is up"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Patch.json
new file mode 100644
index 000000000000..2c13e90665f4
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/TrunkedNetworks_Patch.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "trunkedNetworkName": "trunkedNetworkName",
+ "trunkedNetworkUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/trunkedNetworks/trunkedNetworkName",
+ "name": "trunkedNetworkName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/trunkedNetworks",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "interfaceName": "eth0",
+ "isolationDomainIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l2IsolationDomains/l2IsolationDomainName",
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/l3IsolationDomains/l3IsolationDomainName"
+ ],
+ "vlans": [
+ 12,
+ 14
+ ],
+ "provisioningState": "Succeeded",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "associatedResourceIds": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "Trunked network is up"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Create.json
new file mode 100644
index 000000000000..ca8744d428d1
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Create.json
@@ -0,0 +1,256 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "virtualMachineParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "password": "{password}",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Delete.json
new file mode 100644
index 000000000000..95dd87446ef8
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Get.json
new file mode 100644
index 000000000000..d40fa0c31f57
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Get.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListByResourceGroup.json
new file mode 100644
index 000000000000..376a9248612a
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListByResourceGroup.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListBySubscription.json
new file mode 100644
index 000000000000..7c99d9834625
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_ListBySubscription.json
@@ -0,0 +1,103 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Patch.json
new file mode 100644
index 000000000000..903b43d37012
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Patch.json
@@ -0,0 +1,207 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "virtualMachineUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "properties": {
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "password": "{password}",
+ "registryUrl": "myacr.azurecr.io"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Succeeded",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ }
+ },
+ "202": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName",
+ "name": "virtualMachineName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/virtualMachines",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "vmImage": "myacr.azurecr.io/foobar:latest",
+ "vmImageRepositoryCredentials": {
+ "username": "myuser",
+ "registryUrl": "myacr.azurecr.io"
+ },
+ "vmDeviceModel": "T2",
+ "cpuCores": 2,
+ "memorySizeGB": 8,
+ "storageProfile": {
+ "osDisk": {
+ "createOption": "Ephemeral",
+ "deleteOption": "Delete",
+ "diskSizeGB": 120
+ },
+ "volumeAttachments": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/cloudServicesNetworks/cloudServicesNetworkName",
+ "ipAllocationMethod": "Dynamic"
+ },
+ "networkAttachments": [
+ {
+ "networkAttachmentName": "netAttachName01",
+ "attachedNetworkId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/l3Networks/l3NetworkName",
+ "ipAllocationMethod": "Dynamic",
+ "ipv4Address": "198.51.100.1",
+ "ipv6Address": "2001:0db8:0000:0000:0000:0000:0000:0000",
+ "macAddress": "bf:1c:29:31:31:1f",
+ "defaultGateway": "True"
+ }
+ ],
+ "placementHints": [
+ {
+ "hintType": "Affinity",
+ "schedulingExecution": "Hard",
+ "resourceId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/racks/rackName",
+ "scope": ""
+ }
+ ],
+ "userData": "dXNlckRhdGVTYW1wbGU=",
+ "networkData": "bmV0d29ya0RhdGVTYW1wbGU=",
+ "bootMethod": "UEFI",
+ "adminUsername": "username",
+ "sshPublicKeys": [
+ {
+ "keyData": "ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1Xo+yYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"
+ }
+ ],
+ "provisioningState": "Accepted",
+ "availabilityZone": "1",
+ "clusterId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/clusters/clusterName",
+ "consoleExtendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/consoleCustomLocationName"
+ },
+ "powerState": "On",
+ "bareMetalMachineId": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/bareMetalMachines/bareMetalMachineName",
+ "detailedStatus": "Available",
+ "detailedStatusMessage": "VM is up and healthy",
+ "volumes": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName"
+ ]
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview",
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_PowerOff.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_PowerOff.json
new file mode 100644
index 000000000000..6b6164c7c9ae
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_PowerOff.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName",
+ "virtualMachinePowerOffParameters": {
+ "skipShutdown": "True"
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Reimage.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Reimage.json
new file mode 100644
index 000000000000..add35679642f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Reimage.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Restart.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Restart.json
new file mode 100644
index 000000000000..add35679642f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Restart.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Start.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Start.json
new file mode 100644
index 000000000000..add35679642f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/VirtualMachines_Start.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "virtualMachineName": "virtualMachineName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Create.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Create.json
new file mode 100644
index 000000000000..8c1b09c96793
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Create.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "volumeName": "volumeName",
+ "volumeParameters": {
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName",
+ "name": "volumeName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/volumes",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000,
+ "provisioningState": "Succeeded",
+ "serialNumber": "XXXX-XXXX-XXXX-XXXX",
+ "attachedTo": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Active",
+ "detailedStatusMessage": "Volume is available"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName",
+ "name": "volumeName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/volumes",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000,
+ "provisioningState": "Succeeded",
+ "serialNumber": "XXXX-XXXX-XXXX-XXXX",
+ "attachedTo": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Active",
+ "detailedStatusMessage": "Volume is available"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Delete.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Delete.json
new file mode 100644
index 000000000000..a0f0469b9da3
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Delete.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "volumeName": "volumeName"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://management.azure.com/subscriptions/123e4567-e89b-12d3-a456-426655440000/providers/Microsoft.NetworkCloud/locations/location/operationStatuses/operationId?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Get.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Get.json
new file mode 100644
index 000000000000..fd90a4af6f1f
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Get.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "volumeName": "volumeName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName",
+ "name": "volumeName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/volumes",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000,
+ "provisioningState": "Succeeded",
+ "serialNumber": "XXXX-XXXX-XXXX-XXXX",
+ "attachedTo": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Active",
+ "detailedStatusMessage": "Volume is available"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListByResourceGroup.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListByResourceGroup.json
new file mode 100644
index 000000000000..05f2228e0ca6
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListByResourceGroup.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName",
+ "name": "volumeName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/volumes",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000,
+ "provisioningState": "Succeeded",
+ "serialNumber": "XXXX-XXXX-XXXX-XXXX",
+ "attachedTo": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Active",
+ "detailedStatusMessage": "Volume is available"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListBySubscription.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListBySubscription.json
new file mode 100644
index 000000000000..3d24560b1d31
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_ListBySubscription.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName",
+ "name": "volumeName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/volumes",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000,
+ "provisioningState": "Succeeded",
+ "serialNumber": "XXXX-XXXX-XXXX-XXXX",
+ "attachedTo": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Active",
+ "detailedStatusMessage": "Volume is available"
+ }
+ }
+ ],
+ "nextLink": "https://fully.qualified.hyperlink"
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Patch.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Patch.json
new file mode 100644
index 000000000000..37edeac98827
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/examples/Volumes_Patch.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "123e4567-e89b-12d3-a456-426655440000",
+ "resourceGroupName": "resourceGroupName",
+ "volumeName": "volumeName",
+ "volumeUpdateParameters": {
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/volumes/volumeName",
+ "name": "volumeName",
+ "systemData": {
+ "createdAt": "2021-01-22T13:27:03.008Z",
+ "createdBy": "identityA",
+ "createdByType": "Application",
+ "lastModifiedAt": "2021-01-22T13:29:03.001Z",
+ "lastModifiedBy": "identityB",
+ "lastModifiedByType": "User"
+ },
+ "type": "Microsoft.NetworkCloud/volumes",
+ "location": "location",
+ "tags": {
+ "key1": "myvalue1",
+ "key2": "myvalue2"
+ },
+ "extendedLocation": {
+ "type": "CustomLocation",
+ "name": "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName"
+ },
+ "properties": {
+ "sizeMiB": 10000,
+ "provisioningState": "Succeeded",
+ "serialNumber": "XXXX-XXXX-XXXX-XXXX",
+ "attachedTo": [
+ "/subscriptions/123e4567-e89b-12d3-a456-426655440000/resourceGroups/resourceGroupName/providers/Microsoft.NetworkCloud/virtualMachines/virtualMachineName"
+ ],
+ "detailedStatus": "Active",
+ "detailedStatusMessage": "Volume is available"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/networkcloud.json b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/networkcloud.json
new file mode 100644
index 000000000000..5353fd8ef6e2
--- /dev/null
+++ b/specification/networkcloud/resource-manager/Microsoft.NetworkCloud/preview/2024-10-01-preview/networkcloud.json
@@ -0,0 +1,13591 @@
+{
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "schemes": [
+ "https"
+ ],
+ "swagger": "2.0",
+ "info": {
+ "description": "The Network Cloud APIs provide management of the Azure Operator Nexus compute resources such as on-premises clusters, hardware resources, and workload infrastructure resources.",
+ "title": "NetworkCloud",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "paths": {
+ "/providers/Microsoft.NetworkCloud/operations": {
+ "get": {
+ "description": "Get a list of all available resource provider operations. It contains a URL link to get the next set of results.",
+ "summary": "List resource provider operations.",
+ "operationId": "Operations_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List resource provider operations": {
+ "$ref": "./examples/Operations_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/bareMetalMachines": {
+ "get": {
+ "description": "Get a list of bare metal machines in the provided subscription.",
+ "summary": "List bare metal machines in the subscription.",
+ "operationId": "BareMetalMachines_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List bare metal machines for subscription": {
+ "$ref": "./examples/BareMetalMachines_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/cloudServicesNetworks": {
+ "get": {
+ "description": "Get a list of cloud services networks in the provided subscription.",
+ "summary": "List cloud services networks in the subscription.",
+ "operationId": "CloudServicesNetworks_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List cloud services networks for subscription": {
+ "$ref": "./examples/CloudServicesNetworks_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/clusterManagers": {
+ "get": {
+ "description": "Get a list of cluster managers in the provided subscription.",
+ "summary": "List cluster managers in the subscription.",
+ "operationId": "ClusterManagers_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterManagerList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List cluster managers for subscription": {
+ "$ref": "./examples/ClusterManagers_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/clusters": {
+ "get": {
+ "description": "Get a list of clusters in the provided subscription.",
+ "summary": "List clusters in the subscription.",
+ "operationId": "Clusters_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List clusters for subscription": {
+ "$ref": "./examples/Clusters_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/kubernetesClusters": {
+ "get": {
+ "description": "Get a list of Kubernetes clusters in the provided subscription.",
+ "summary": "List Kubernetes clusters in the subscription.",
+ "operationId": "KubernetesClusters_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Kubernetes clusters for subscription": {
+ "$ref": "./examples/KubernetesClusters_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/l2Networks": {
+ "get": {
+ "description": "Get a list of layer 2 (L2) networks in the provided subscription.",
+ "summary": "List layer 2 (L2) networks in the subscription.",
+ "operationId": "L2Networks_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/L2NetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List L2 networks for subscription": {
+ "$ref": "./examples/L2Networks_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/l3Networks": {
+ "get": {
+ "description": "Get a list of layer 3 (L3) networks in the provided subscription.",
+ "summary": "List layer 3 (L3) networks in the subscription.",
+ "operationId": "L3Networks_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/L3NetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List L3 networks for subscription": {
+ "$ref": "./examples/L3Networks_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/rackSkus": {
+ "get": {
+ "description": "Get a list of rack SKUs in the provided subscription.",
+ "summary": "List rack SKUs in the subscription.",
+ "operationId": "RackSkus_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/RackSkuList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List rack SKUs for subscription": {
+ "$ref": "./examples/RackSkus_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/rackSkus/{rackSkuName}": {
+ "get": {
+ "description": "Get the properties of the provided rack SKU.",
+ "summary": "Retrieve the rack SKU.",
+ "operationId": "RackSkus_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/RackSkuNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/RackSku"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get rack SKU resource": {
+ "$ref": "./examples/RackSkus_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/racks": {
+ "get": {
+ "description": "Get a list of racks in the provided subscription.",
+ "summary": "List racks in the subscription.",
+ "operationId": "Racks_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/RackList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List racks for subscription": {
+ "$ref": "./examples/Racks_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/storageAppliances": {
+ "get": {
+ "description": "Get a list of storage appliances in the provided subscription.",
+ "summary": "List storage appliances in the subscription.",
+ "operationId": "StorageAppliances_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/StorageApplianceList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List storage appliances for subscription": {
+ "$ref": "./examples/StorageAppliances_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/trunkedNetworks": {
+ "get": {
+ "description": "Get a list of trunked networks in the provided subscription.",
+ "summary": "List trunked networks in the subscription.",
+ "operationId": "TrunkedNetworks_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List trunked networks for subscription": {
+ "$ref": "./examples/TrunkedNetworks_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/virtualMachines": {
+ "get": {
+ "description": "Get a list of virtual machines in the provided subscription.",
+ "summary": "List virtual machines in the subscription.",
+ "operationId": "VirtualMachines_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List virtual machines for subscription": {
+ "$ref": "./examples/VirtualMachines_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.NetworkCloud/volumes": {
+ "get": {
+ "description": "Get a list of volumes in the provided subscription.",
+ "summary": "List volumes in the subscription.",
+ "operationId": "Volumes_ListBySubscription",
+ "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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/VolumeList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List volume for subscription": {
+ "$ref": "./examples/Volumes_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines": {
+ "get": {
+ "description": "Get a list of bare metal machines in the provided resource group.",
+ "summary": "List bare metal machines in the resource group.",
+ "operationId": "BareMetalMachines_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List bare metal machines for resource group": {
+ "$ref": "./examples/BareMetalMachines_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}": {
+ "get": {
+ "description": "Get properties of the provided bare metal machine.",
+ "summary": "Retrieve the bare metal machine.",
+ "operationId": "BareMetalMachines_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/BareMetalMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new bare metal machine or update the properties of the existing one.\nAll customer initiated requests will be rejected as the life cycle of this resource is managed by the system.",
+ "summary": "Create or update the bare metal machine.",
+ "operationId": "BareMetalMachines_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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachine"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachine"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachine"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided bare metal machine.\nAll customer initiated requests will be rejected as the life cycle of this resource is managed by the system.",
+ "summary": "Delete the bare metal machine.",
+ "operationId": "BareMetalMachines_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/BareMetalMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of the provided bare metal machine, or update tags associated with the bare metal machine. Properties and tag updates can be done independently.",
+ "summary": "Patch the bare metal machine.",
+ "operationId": "BareMetalMachines_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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachinePatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachine"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachine"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Patch.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.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/cordon": {
+ "post": {
+ "description": "Cordon the provided bare metal machine's Kubernetes node.",
+ "summary": "Cordon the bare metal machine.",
+ "operationId": "BareMetalMachines_Cordon",
+ "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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineCordonParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineCordonParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Cordon bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Cordon.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/powerOff": {
+ "post": {
+ "description": "Power off the provided bare metal machine.",
+ "summary": "Power off the bare metal machine.",
+ "operationId": "BareMetalMachines_PowerOff",
+ "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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachinePowerOffParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachinePowerOffParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Power off bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_PowerOff.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/reimage": {
+ "post": {
+ "description": "Reimage the provided bare metal machine.",
+ "summary": "Reimage the bare metal machine.",
+ "operationId": "BareMetalMachines_Reimage",
+ "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/BareMetalMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Reimage bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Reimage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/replace": {
+ "post": {
+ "description": "Replace the provided bare metal machine.",
+ "summary": "Replace (service) the bare metal machine.",
+ "operationId": "BareMetalMachines_Replace",
+ "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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineReplaceParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineReplaceParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Replace bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Replace.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/restart": {
+ "post": {
+ "description": "Restart the provided bare metal machine.",
+ "summary": "Restart the bare metal machine.",
+ "operationId": "BareMetalMachines_Restart",
+ "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/BareMetalMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Restart bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Restart.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/runCommand": {
+ "post": {
+ "description": "Run the command or the script on the provided bare metal machine. The URL to storage account with the command execution results and the command exit code can be retrieved from the operation status API once available.",
+ "summary": "Run the command on the bare metal machine.",
+ "operationId": "BareMetalMachines_RunCommand",
+ "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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineRunCommandParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineRunCommandParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Run command on bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_RunCommand.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/runDataExtracts": {
+ "post": {
+ "description": "Run one or more data extractions on the provided bare metal machine. The URL to storage account with the command execution results and the command exit code can be retrieved from the operation status API once available.",
+ "summary": "Run data extraction for a bare metal machine.",
+ "operationId": "BareMetalMachines_RunDataExtracts",
+ "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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineRunDataExtractsParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineRunDataExtractsParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Run data extraction on bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_RunDataExtracts.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/runReadCommands": {
+ "post": {
+ "description": "Run one or more read-only commands on the provided bare metal machine. The URL to storage account with the command execution results and the command exit code can be retrieved from the operation status API once available.",
+ "summary": "Run read-only commands against a bare metal machine.",
+ "operationId": "BareMetalMachines_RunReadCommands",
+ "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/BareMetalMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineRunReadCommandsParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineRunReadCommandsParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Run and retrieve output from read only commands on bare metal machine.": {
+ "$ref": "./examples/BareMetalMachines_RunReadCommands.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/start": {
+ "post": {
+ "description": "Start the provided bare metal machine.",
+ "summary": "Start the bare metal machine.",
+ "operationId": "BareMetalMachines_Start",
+ "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/BareMetalMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Start bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Start.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/bareMetalMachines/{bareMetalMachineName}/uncordon": {
+ "post": {
+ "description": "Uncordon the provided bare metal machine's Kubernetes node.",
+ "summary": "Uncordon the bare metal machine.",
+ "operationId": "BareMetalMachines_Uncordon",
+ "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/BareMetalMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Uncordon bare metal machine": {
+ "$ref": "./examples/BareMetalMachines_Uncordon.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/cloudServicesNetworks": {
+ "get": {
+ "description": "Get a list of cloud services networks in the provided resource group.",
+ "summary": "List cloud services networks in the resource group.",
+ "operationId": "CloudServicesNetworks_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List cloud services networks for resource group": {
+ "$ref": "./examples/CloudServicesNetworks_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/cloudServicesNetworks/{cloudServicesNetworkName}": {
+ "get": {
+ "description": "Get properties of the provided cloud services network.",
+ "summary": "Retrieve the cloud services network.",
+ "operationId": "CloudServicesNetworks_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/CloudServicesNetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get cloud services network": {
+ "$ref": "./examples/CloudServicesNetworks_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new cloud services network or update the properties of the existing cloud services network.",
+ "summary": "Create or update the cloud services network.",
+ "operationId": "CloudServicesNetworks_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/CloudServicesNetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "cloudServicesNetworkParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update cloud services network": {
+ "$ref": "./examples/CloudServicesNetworks_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided cloud services network.",
+ "summary": "Delete the cloud services network.",
+ "operationId": "CloudServicesNetworks_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/CloudServicesNetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete cloud services network": {
+ "$ref": "./examples/CloudServicesNetworks_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Update properties of the provided cloud services network, or update the tags associated with it. Properties and tag updates can be done independently.",
+ "summary": "Patch the cloud services network.",
+ "operationId": "CloudServicesNetworks_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/CloudServicesNetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "cloudServicesNetworkUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetworkPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch cloud services network": {
+ "$ref": "./examples/CloudServicesNetworks_Patch.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.NetworkCloud/clusterManagers": {
+ "get": {
+ "description": "Get a list of cluster managers in the provided resource group.",
+ "summary": "List cluster managers in the resource group.",
+ "operationId": "ClusterManagers_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterManagerList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List cluster managers for resource group": {
+ "$ref": "./examples/ClusterManagers_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusterManagers/{clusterManagerName}": {
+ "get": {
+ "description": "Get the properties of the provided cluster manager.",
+ "summary": "Retrieve the cluster manager.",
+ "operationId": "ClusterManagers_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/ClusterManagerNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterManager"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get cluster manager": {
+ "$ref": "./examples/ClusterManagers_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new cluster manager or update properties of the cluster manager if it exists.",
+ "summary": "Create or update the cluster manager.",
+ "operationId": "ClusterManagers_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/ClusterManagerNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterManagerParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterManager"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/ClusterManager"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/ClusterManager"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update cluster manager": {
+ "$ref": "./examples/ClusterManagers_Create.json"
+ },
+ "Create or update cluster manager with user assigned identity": {
+ "$ref": "./examples/ClusterManagers_Create_Uami.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided cluster manager.",
+ "summary": "Delete the cluster manager.",
+ "operationId": "ClusterManagers_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/ClusterManagerNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete cluster manager": {
+ "$ref": "./examples/ClusterManagers_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of the provided cluster manager, or update the tags assigned to the cluster manager. Properties and tag updates can be done independently.",
+ "summary": "Patch the cluster manager.",
+ "operationId": "ClusterManagers_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/ClusterManagerNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterManagerUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ClusterManagerPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/ClusterManager"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch cluster manager": {
+ "$ref": "./examples/ClusterManagers_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters": {
+ "get": {
+ "description": "Get a list of clusters in the provided resource group.",
+ "summary": "List clusters in the resource group.",
+ "operationId": "Clusters_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List clusters for resource group": {
+ "$ref": "./examples/Clusters_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}": {
+ "get": {
+ "description": "Get properties of the provided cluster.",
+ "summary": "Retrieve the cluster.",
+ "operationId": "Clusters_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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get cluster": {
+ "$ref": "./examples/Clusters_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new cluster or update the properties of the cluster if it exists.",
+ "summary": "Create or update the cluster.",
+ "operationId": "Clusters_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/ClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update cluster": {
+ "$ref": "./examples/Clusters_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided cluster.",
+ "summary": "Delete the cluster.",
+ "operationId": "Clusters_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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete cluster": {
+ "$ref": "./examples/Clusters_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch the properties of the provided cluster, or update the tags associated with the cluster. Properties and tag updates can be done independently.",
+ "summary": "Patch the cluster.",
+ "operationId": "Clusters_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/ClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ClusterPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/Cluster"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch cluster AggregatorOrSingleRackDefinition": {
+ "$ref": "./examples/Clusters_Patch_AggregatorOrSingleRackDefinition.json"
+ },
+ "Patch cluster analytics output": {
+ "$ref": "./examples/Clusters_Patch_AnalyticsOutput.json"
+ },
+ "Patch cluster command output": {
+ "$ref": "./examples/Clusters_Patch_CommandOutput.json"
+ },
+ "Patch cluster location": {
+ "$ref": "./examples/Clusters_Patch_Location.json"
+ },
+ "Patch runtime protection configuration": {
+ "$ref": "./examples/Clusters_Patch_RuntimeProtectionConfiguration.json"
+ },
+ "Patch secret archive": {
+ "$ref": "./examples/Clusters_Patch_SecretArchive.json"
+ },
+ "Patch update strategy": {
+ "$ref": "./examples/Clusters_Patch_UpdateStrategy.json"
+ },
+ "Patch vulnerability scanning": {
+ "$ref": "./examples/Clusters_Patch_VulnerabilityScanning.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.NetworkCloud/clusters/{clusterName}/bareMetalMachineKeySets": {
+ "get": {
+ "description": "Get a list of bare metal machine key sets for the provided cluster.",
+ "summary": "List bare metal machine key sets of the cluster.",
+ "operationId": "BareMetalMachineKeySets_ListByCluster",
+ "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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySetList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List bare metal machine key sets of the cluster": {
+ "$ref": "./examples/BareMetalMachineKeySets_ListByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/bareMetalMachineKeySets/{bareMetalMachineKeySetName}": {
+ "get": {
+ "description": "Get bare metal machine key set of the provided cluster.",
+ "summary": "Retrieve the bare metal machine key set of the cluster.",
+ "operationId": "BareMetalMachineKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BareMetalMachineKeySetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get bare metal machine key set of cluster": {
+ "$ref": "./examples/BareMetalMachineKeySets_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new bare metal machine key set or update the existing one for the provided cluster.",
+ "summary": "Create or update the bare metal machine key set of the cluster.",
+ "operationId": "BareMetalMachineKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BareMetalMachineKeySetNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineKeySetParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update bare metal machine key set of cluster": {
+ "$ref": "./examples/BareMetalMachineKeySets_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the bare metal machine key set of the provided cluster.",
+ "summary": "Delete the bare metal machine key set of the cluster.",
+ "operationId": "BareMetalMachineKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BareMetalMachineKeySetNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete bare metal machine key set of cluster": {
+ "$ref": "./examples/BareMetalMachineKeySets_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of bare metal machine key set for the provided cluster, or update the tags associated with it. Properties and tag updates can be done independently.",
+ "summary": "Patch bare metal machine key set of the cluster.",
+ "operationId": "BareMetalMachineKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BareMetalMachineKeySetNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bareMetalMachineKeySetUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySetPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch bare metal machine key set of cluster": {
+ "$ref": "./examples/BareMetalMachineKeySets_Patch.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.NetworkCloud/clusters/{clusterName}/bmcKeySets": {
+ "get": {
+ "description": "Get a list of baseboard management controller key sets for the provided cluster.",
+ "summary": "List baseboard management controller key sets of the cluster.",
+ "operationId": "BmcKeySets_ListByCluster",
+ "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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySetList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List baseboard management controller key sets of the cluster": {
+ "$ref": "./examples/BmcKeySets_ListByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/bmcKeySets/{bmcKeySetName}": {
+ "get": {
+ "description": "Get baseboard management controller key set of the provided cluster.",
+ "summary": "Retrieve the baseboard management controller key set of the cluster.",
+ "operationId": "BmcKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BmcKeySetNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySet"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get baseboard management controller key set of cluster": {
+ "$ref": "./examples/BmcKeySets_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new baseboard management controller key set or update the existing one for the provided cluster.",
+ "summary": "Create or update the baseboard management controller key set of the cluster.",
+ "operationId": "BmcKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BmcKeySetNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bmcKeySetParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BmcKeySet"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySet"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update baseboard management controller key set of cluster": {
+ "$ref": "./examples/BmcKeySets_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the baseboard management controller key set of the provided cluster.",
+ "summary": "Delete the baseboard management controller key set of the cluster.",
+ "operationId": "BmcKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BmcKeySetNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete baseboard management controller key set of cluster": {
+ "$ref": "./examples/BmcKeySets_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of baseboard management controller key set for the provided cluster, or update the tags associated with it. Properties and tag updates can be done independently.",
+ "summary": "Patch baseboard management controller key set of the cluster.",
+ "operationId": "BmcKeySets_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/BmcKeySetNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "bmcKeySetUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySetPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySet"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/BmcKeySet"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch baseboard management controller key set of cluster": {
+ "$ref": "./examples/BmcKeySets_Patch.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.NetworkCloud/clusters/{clusterName}/continueUpdateVersion": {
+ "post": {
+ "description": "Trigger the continuation of an update for a cluster with a matching update strategy that has paused after completing a segment of the update.",
+ "summary": "Continue a paused update to the cluster version.",
+ "operationId": "Clusters_ContinueUpdateVersion",
+ "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/ClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterContinueUpdateVersionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterContinueUpdateVersionParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Continue update cluster version": {
+ "$ref": "./examples/Clusters_ContinueUpdateVersion.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/deploy": {
+ "post": {
+ "description": "Deploy the cluster using the rack configuration provided during creation.",
+ "summary": "Deploy the cluster.",
+ "operationId": "Clusters_Deploy",
+ "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/ClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterDeployParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ClusterDeployParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Deploy cluster": {
+ "$ref": "./examples/Clusters_Deploy.json"
+ },
+ "Deploy cluster skipping validation": {
+ "$ref": "./examples/Clusters_Deploy_SkipValidation.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/metricsConfigurations": {
+ "get": {
+ "description": "Get a list of metrics configurations for the provided cluster.",
+ "summary": "List metrics configurations of the cluster.",
+ "operationId": "MetricsConfigurations_ListByCluster",
+ "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/ClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfigurationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List metrics configurations of the cluster": {
+ "$ref": "./examples/ClusterMetricsConfigurations_ListByCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/metricsConfigurations/{metricsConfigurationName}": {
+ "get": {
+ "description": "Get metrics configuration of the provided cluster.",
+ "summary": "Retrieve the metrics configuration of the cluster.",
+ "operationId": "MetricsConfigurations_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MetricsConfigurationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get metrics configuration of cluster": {
+ "$ref": "./examples/ClusterMetricsConfigurations_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create new or update the existing metrics configuration of the provided cluster.",
+ "summary": "Create or update metrics configuration of the cluster.",
+ "operationId": "MetricsConfigurations_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MetricsConfigurationName"
+ },
+ {
+ "description": "The request body.",
+ "name": "metricsConfigurationParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update metrics configuration of cluster": {
+ "$ref": "./examples/ClusterMetricsConfigurations_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the metrics configuration of the provided cluster.",
+ "summary": "Delete the metrics configuration of the cluster.",
+ "operationId": "MetricsConfigurations_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MetricsConfigurationName"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete metrics configuration of cluster": {
+ "$ref": "./examples/ClusterMetricsConfigurations_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of metrics configuration for the provided cluster, or update the tags associated with it. Properties and tag updates can be done independently.",
+ "summary": "Patch metrics configuration of the cluster.",
+ "operationId": "MetricsConfigurations_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/ClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/MetricsConfigurationName"
+ },
+ {
+ "description": "The request body.",
+ "name": "metricsConfigurationUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfigurationPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch metrics configuration of cluster": {
+ "$ref": "./examples/ClusterMetricsConfigurations_Patch.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.NetworkCloud/clusters/{clusterName}/scanRuntime": {
+ "post": {
+ "description": "Triggers the execution of a runtime protection scan to detect and remediate detected issues, in accordance with the cluster configuration.",
+ "summary": "Execute a runtime protection scan on the cluster.",
+ "operationId": "Clusters_ScanRuntime",
+ "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/ClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "ClusterScanRuntimeParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ClusterScanRuntimeParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Execute a runtime protection scan on the cluster": {
+ "$ref": "./examples/Clusters_ScanRuntime.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}/updateVersion": {
+ "post": {
+ "description": "Update the version of the provided cluster to one of the available supported versions.",
+ "summary": "Update the cluster version.",
+ "operationId": "Clusters_UpdateVersion",
+ "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/ClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "clusterUpdateVersionParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterUpdateVersionParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update cluster version": {
+ "$ref": "./examples/Clusters_UpdateVersion.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/kubernetesClusters": {
+ "get": {
+ "description": "Get a list of Kubernetes clusters in the provided resource group.",
+ "summary": "List Kubernetes clusters in the resource group.",
+ "operationId": "KubernetesClusters_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Kubernetes clusters for resource group": {
+ "$ref": "./examples/KubernetesClusters_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/kubernetesClusters/{kubernetesClusterName}": {
+ "get": {
+ "description": "Get properties of the provided the Kubernetes cluster.",
+ "summary": "Retrieve the Kubernetes cluster.",
+ "operationId": "KubernetesClusters_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/KubernetesClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesCluster"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Kubernetes cluster": {
+ "$ref": "./examples/KubernetesClusters_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new Kubernetes cluster or update the properties of the existing one.",
+ "summary": "Create or update the Kubernetes cluster.",
+ "operationId": "KubernetesClusters_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/KubernetesClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "kubernetesClusterParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/KubernetesCluster"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesCluster"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesCluster"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update Kubernetes cluster": {
+ "$ref": "./examples/KubernetesClusters_Create.json"
+ },
+ "Create or update Kubernetes cluster with a layer 2 load balancer": {
+ "$ref": "./examples/KubernetesClusters_L2LoadBalancer_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided Kubernetes cluster.",
+ "summary": "Delete the Kubernetes cluster.",
+ "operationId": "KubernetesClusters_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/KubernetesClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Kubernetes cluster": {
+ "$ref": "./examples/KubernetesClusters_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch the properties of the provided Kubernetes cluster, or update the tags associated with the Kubernetes cluster. Properties and tag updates can be done independently.",
+ "summary": "Patch the Kubernetes cluster.",
+ "operationId": "KubernetesClusters_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/KubernetesClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "kubernetesClusterUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesCluster"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesCluster"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Kubernetes cluster": {
+ "$ref": "./examples/KubernetesClusters_Patch.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.NetworkCloud/kubernetesClusters/{kubernetesClusterName}/agentPools": {
+ "get": {
+ "description": "Get a list of agent pools for the provided Kubernetes cluster.",
+ "summary": "List agent pools of the Kubernetes cluster.",
+ "operationId": "AgentPools_ListByKubernetesCluster",
+ "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/KubernetesClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List agent pools of the Kubernetes cluster": {
+ "$ref": "./examples/AgentPools_ListByKubernetesCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/kubernetesClusters/{kubernetesClusterName}/agentPools/{agentPoolName}": {
+ "get": {
+ "description": "Get properties of the provided Kubernetes cluster agent pool.",
+ "summary": "Retrieve the Kubernetes cluster agent pool.",
+ "operationId": "AgentPools_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/AgentPoolNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Kubernetes cluster agent pool": {
+ "$ref": "./examples/AgentPools_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new Kubernetes cluster agent pool or update the properties of the existing one.",
+ "summary": "Create or update the Kubernetes cluster agent pool.",
+ "operationId": "AgentPools_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/AgentPoolNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "agentPoolParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update Kubernetes cluster agent pool": {
+ "$ref": "./examples/AgentPools_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided Kubernetes cluster agent pool.",
+ "summary": "Delete the Kubernetes cluster agent pool.",
+ "operationId": "AgentPools_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/AgentPoolNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Kubernetes cluster agent pool": {
+ "$ref": "./examples/AgentPools_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch the properties of the provided Kubernetes cluster agent pool, or update the tags associated with the Kubernetes cluster agent pool. Properties and tag updates can be done independently.",
+ "summary": "Patch the Kubernetes cluster agent pool.",
+ "operationId": "AgentPools_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/AgentPoolNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "agentPoolUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/AgentPoolPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/AgentPool"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Kubernetes cluster agent pool": {
+ "$ref": "./examples/AgentPools_Patch.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.NetworkCloud/kubernetesClusters/{kubernetesClusterName}/features": {
+ "get": {
+ "description": "Get a list of features for the provided Kubernetes cluster.",
+ "summary": "List features for the Kubernetes cluster.",
+ "operationId": "KubernetesClusterFeatures_ListByKubernetesCluster",
+ "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/KubernetesClusterNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeatureList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List features for the Kubernetes cluster.": {
+ "$ref": "./examples/KubernetesClusterFeatures_ListByKubernetesCluster.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/kubernetesClusters/{kubernetesClusterName}/features/{featureName}": {
+ "get": {
+ "description": "Get properties of the provided the Kubernetes cluster feature.",
+ "summary": "Retrieve the Kubernetes cluster feature.",
+ "operationId": "KubernetesClusterFeatures_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/FeatureNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Kubernetes cluster feature": {
+ "$ref": "./examples/KubernetesClusterFeatures_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new Kubernetes cluster feature or update properties of the Kubernetes cluster feature if it exists.",
+ "summary": "Create or update the Kubernetes cluster feature.",
+ "operationId": "KubernetesClusterFeatures_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/FeatureNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "kubernetesClusterFeatureParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update Kubernetes cluster feature": {
+ "$ref": "./examples/KubernetesClusterFeatures_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided Kubernetes cluster feature.",
+ "summary": "Delete the Kubernetes cluster feature.",
+ "operationId": "KubernetesClusterFeatures_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/FeatureNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete Kubernetes cluster feature": {
+ "$ref": "./examples/KubernetesClusterFeatures_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of the provided Kubernetes cluster feature.",
+ "summary": "Patch the Kubernetes cluster feature.",
+ "operationId": "KubernetesClusterFeatures_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/KubernetesClusterNameParameter"
+ },
+ {
+ "$ref": "#/parameters/FeatureNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "kubernetesClusterFeatureUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeaturePatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch Kubernetes cluster feature": {
+ "$ref": "./examples/KubernetesClusterFeatures_Patch.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.NetworkCloud/kubernetesClusters/{kubernetesClusterName}/restartNode": {
+ "post": {
+ "description": "Restart a targeted node of a Kubernetes cluster.",
+ "summary": "Restart a targeted node.",
+ "operationId": "KubernetesClusters_RestartNode",
+ "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/KubernetesClusterNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "kubernetesClusterRestartNodeParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/KubernetesClusterRestartNodeParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Restart a Kubernetes cluster node": {
+ "$ref": "./examples/KubernetesClusters_RestartNode.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/l2Networks": {
+ "get": {
+ "description": "Get a list of layer 2 (L2) networks in the provided resource group.",
+ "summary": "List layer 2 (L2) networks in the resource group.",
+ "operationId": "L2Networks_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/L2NetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List L2 networks for resource group": {
+ "$ref": "./examples/L2Networks_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/l2Networks/{l2NetworkName}": {
+ "get": {
+ "description": "Get properties of the provided layer 2 (L2) network.",
+ "summary": "Retrieve the layer 2 (L2) network.",
+ "operationId": "L2Networks_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/L2NetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/L2Network"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get L2 network": {
+ "$ref": "./examples/L2Networks_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new layer 2 (L2) network or update the properties of the existing network.",
+ "summary": "Create or update the layer 2 (L2) network.",
+ "operationId": "L2Networks_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/L2NetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "l2NetworkParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/L2Network"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/L2Network"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/L2Network"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update L2 network": {
+ "$ref": "./examples/L2Networks_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided layer 2 (L2) network.",
+ "summary": "Delete the layer 2 (L2) network.",
+ "operationId": "L2Networks_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/L2NetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete L2 network": {
+ "$ref": "./examples/L2Networks_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Update tags associated with the provided layer 2 (L2) network.",
+ "summary": "Patch the layer 2 (L2) network.",
+ "operationId": "L2Networks_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/L2NetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "l2NetworkUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/L2NetworkPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/L2Network"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch L2 network": {
+ "$ref": "./examples/L2Networks_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/l3Networks": {
+ "get": {
+ "description": "Get a list of layer 3 (L3) networks in the provided resource group.",
+ "summary": "List layer 3 (L3) networks in the resource group.",
+ "operationId": "L3Networks_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/L3NetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List L3 networks for resource group": {
+ "$ref": "./examples/L3Networks_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/l3Networks/{l3NetworkName}": {
+ "get": {
+ "description": "Get properties of the provided layer 3 (L3) network.",
+ "summary": "Retrieve the layer 3 (L3) network.",
+ "operationId": "L3Networks_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/L3NetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/L3Network"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get L3network": {
+ "$ref": "./examples/L3Networks_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new layer 3 (L3) network or update the properties of the existing network.",
+ "summary": "Create or update the layer 3 (L3) network.",
+ "operationId": "L3Networks_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/L3NetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "l3NetworkParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/L3Network"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/L3Network"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/L3Network"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update L3 network": {
+ "$ref": "./examples/L3Networks_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided layer 3 (L3) network.",
+ "summary": "Delete the layer 3 (L3) network.",
+ "operationId": "L3Networks_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/L3NetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete L3 network": {
+ "$ref": "./examples/L3Networks_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Update tags associated with the provided layer 3 (L3) network.",
+ "summary": "Patch the layer 3 (L3) network.",
+ "operationId": "L3Networks_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/L3NetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "l3NetworkUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/L3NetworkPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/L3Network"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch L3 network": {
+ "$ref": "./examples/L3Networks_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/racks": {
+ "get": {
+ "description": "Get a list of racks in the provided resource group.",
+ "summary": "List racks in the resource group.",
+ "operationId": "Racks_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/RackList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List racks for resource group": {
+ "$ref": "./examples/Racks_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/racks/{rackName}": {
+ "get": {
+ "description": "Get properties of the provided rack.",
+ "summary": "Retrieve the rack.",
+ "operationId": "Racks_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/RackNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/Rack"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get rack": {
+ "$ref": "./examples/Racks_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new rack or update properties of the existing one.\nAll customer initiated requests will be rejected as the life cycle of this resource is managed by the system.",
+ "summary": "Create or update the rack.",
+ "operationId": "Racks_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/RackNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "rackParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Rack"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/Rack"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/Rack"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update rack": {
+ "$ref": "./examples/Racks_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided rack.\nAll customer initiated requests will be rejected as the life cycle of this resource is managed by the system.",
+ "summary": "Delete the rack.",
+ "operationId": "Racks_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/RackNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete rack": {
+ "$ref": "./examples/Racks_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch properties of the provided rack, or update the tags associated with the rack. Properties and tag updates can be done independently.",
+ "summary": "Patch the rack.",
+ "operationId": "Racks_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/RackNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "rackUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/RackPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Rack"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/Rack"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch rack": {
+ "$ref": "./examples/Racks_Patch.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.NetworkCloud/storageAppliances": {
+ "get": {
+ "description": "Get a list of storage appliances in the provided resource group.",
+ "summary": "List storage appliances in the resource group.",
+ "operationId": "StorageAppliances_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/StorageApplianceList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List storage appliances for resource group": {
+ "$ref": "./examples/StorageAppliances_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/storageAppliances/{storageApplianceName}": {
+ "get": {
+ "description": "Get properties of the provided storage appliance.",
+ "summary": "Retrieve the storage appliance.",
+ "operationId": "StorageAppliances_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/StorageApplianceNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/StorageAppliance"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get storage appliance": {
+ "$ref": "./examples/StorageAppliances_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new storage appliance or update the properties of the existing one.\nAll customer initiated requests will be rejected as the life cycle of this resource is managed by the system.",
+ "summary": "Create or update the storage appliance.",
+ "operationId": "StorageAppliances_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/StorageApplianceNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "storageApplianceParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/StorageAppliance"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/StorageAppliance"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/StorageAppliance"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update storage appliance": {
+ "$ref": "./examples/StorageAppliances_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided storage appliance.\nAll customer initiated requests will be rejected as the life cycle of this resource is managed by the system.",
+ "summary": "Delete the storage appliance.",
+ "operationId": "StorageAppliances_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/StorageApplianceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete storage appliance": {
+ "$ref": "./examples/StorageAppliances_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Update properties of the provided storage appliance, or update tags associated with the storage appliance Properties and tag updates can be done independently.",
+ "summary": "Patch the storage appliance.",
+ "operationId": "StorageAppliances_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/StorageApplianceNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "storageApplianceUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/StorageAppliancePatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/StorageAppliance"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/StorageAppliance"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch storage appliance": {
+ "$ref": "./examples/StorageAppliances_Patch.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.NetworkCloud/storageAppliances/{storageApplianceName}/disableRemoteVendorManagement": {
+ "post": {
+ "description": "Disable remote vendor management of the provided storage appliance.",
+ "summary": "Turn off remote vendor management for a storage appliance, if supported.",
+ "operationId": "StorageAppliances_DisableRemoteVendorManagement",
+ "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/StorageApplianceNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Turn off remote vendor management for storage appliance": {
+ "$ref": "./examples/StorageAppliances_DisableRemoteVendorManagement.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/storageAppliances/{storageApplianceName}/enableRemoteVendorManagement": {
+ "post": {
+ "description": "Enable remote vendor management of the provided storage appliance.",
+ "summary": "Turn on remote vendor management for a storage appliance, if supported.",
+ "operationId": "StorageAppliances_EnableRemoteVendorManagement",
+ "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/StorageApplianceNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "storageApplianceEnableRemoteVendorManagementParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/StorageApplianceEnableRemoteVendorManagementParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Turn on remote vendor management for storage appliance": {
+ "$ref": "./examples/StorageAppliances_EnableRemoteVendorManagement.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/trunkedNetworks": {
+ "get": {
+ "description": "Get a list of trunked networks in the provided resource group.",
+ "summary": "List trunked networks in the resource group.",
+ "operationId": "TrunkedNetworks_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetworkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Trunked networks for resource group": {
+ "$ref": "./examples/TrunkedNetworks_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/trunkedNetworks/{trunkedNetworkName}": {
+ "get": {
+ "description": "Get properties of the provided trunked network.",
+ "summary": "Retrieve the trunked network.",
+ "operationId": "TrunkedNetworks_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/TrunkedNetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetwork"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Trunked network": {
+ "$ref": "./examples/TrunkedNetworks_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new trunked network or update the properties of the existing trunked network.",
+ "summary": "Create or update the trunked network.",
+ "operationId": "TrunkedNetworks_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/TrunkedNetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "trunkedNetworkParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetwork"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetwork"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetwork"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update trunked network": {
+ "$ref": "./examples/TrunkedNetworks_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided trunked network.",
+ "summary": "Delete the trunked network.",
+ "operationId": "TrunkedNetworks_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/TrunkedNetworkNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete trunked network": {
+ "$ref": "./examples/TrunkedNetworks_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Update tags associated with the provided trunked network.",
+ "summary": "Patch the trunked network.",
+ "operationId": "TrunkedNetworks_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/TrunkedNetworkNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "trunkedNetworkUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetworkPatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/TrunkedNetwork"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch trunked network": {
+ "$ref": "./examples/TrunkedNetworks_Patch.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/virtualMachines": {
+ "get": {
+ "description": "Get a list of virtual machines in the provided resource group.",
+ "summary": "List virtual machines in the resource group.",
+ "operationId": "VirtualMachines_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachineList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List virtual machines for resource group": {
+ "$ref": "./examples/VirtualMachines_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/virtualMachines/{virtualMachineName}": {
+ "get": {
+ "description": "Get properties of the provided virtual machine.",
+ "summary": "Retrieve the virtual machine.",
+ "operationId": "VirtualMachines_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/VirtualMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get virtual machine": {
+ "$ref": "./examples/VirtualMachines_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new virtual machine or update the properties of the existing virtual machine.",
+ "summary": "Create or update the virtual machine.",
+ "operationId": "VirtualMachines_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/VirtualMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "virtualMachineParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update virtual machine": {
+ "$ref": "./examples/VirtualMachines_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided virtual machine.",
+ "summary": "Delete the virtual machine.",
+ "operationId": "VirtualMachines_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/VirtualMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete virtual machine": {
+ "$ref": "./examples/VirtualMachines_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch the properties of the provided virtual machine, or update the tags associated with the virtual machine. Properties and tag updates can be done independently.",
+ "summary": "Patch the virtual machine.",
+ "operationId": "VirtualMachines_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/VirtualMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "virtualMachineUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachinePatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachine"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch virtual machine": {
+ "$ref": "./examples/VirtualMachines_Patch.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.NetworkCloud/virtualMachines/{virtualMachineName}/consoles": {
+ "get": {
+ "description": "Get a list of consoles for the provided virtual machine.",
+ "summary": "List consoles of the virtual machine.",
+ "operationId": "Consoles_ListByVirtualMachine",
+ "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/VirtualMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/ConsoleList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List consoles of the virtual machine": {
+ "$ref": "./examples/Consoles_ListByVirtualMachine.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/virtualMachines/{virtualMachineName}/consoles/{consoleName}": {
+ "get": {
+ "description": "Get properties of the provided virtual machine console.",
+ "summary": "Retrieve the virtual machine console.",
+ "operationId": "Consoles_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/VirtualMachineNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConsoleNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/Console"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get virtual machine console": {
+ "$ref": "./examples/Consoles_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new virtual machine console or update the properties of the existing virtual machine console.",
+ "summary": "Create or update the virtual machine console.",
+ "operationId": "Consoles_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/VirtualMachineNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConsoleNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "consoleParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Console"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/Console"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/Console"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update virtual machine console": {
+ "$ref": "./examples/Consoles_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided virtual machine console.",
+ "summary": "Delete the virtual machine console.",
+ "operationId": "Consoles_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/VirtualMachineNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConsoleNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete virtual machine console": {
+ "$ref": "./examples/Consoles_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Patch the properties of the provided virtual machine console, or update the tags associated with the virtual machine console. Properties and tag updates can be done independently.",
+ "summary": "Patch the virtual machine console.",
+ "operationId": "Consoles_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/VirtualMachineNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ConsoleNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "consoleUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/ConsolePatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Console"
+ }
+ },
+ "202": {
+ "description": "The resource has been accepted for update.",
+ "schema": {
+ "$ref": "#/definitions/Console"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ },
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch virtual machine console": {
+ "$ref": "./examples/Consoles_Patch.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.NetworkCloud/virtualMachines/{virtualMachineName}/powerOff": {
+ "post": {
+ "description": "Power off the provided virtual machine.",
+ "summary": "Power off the virtual machine.",
+ "operationId": "VirtualMachines_PowerOff",
+ "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/VirtualMachineNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "virtualMachinePowerOffParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/VirtualMachinePowerOffParameters"
+ }
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Power off virtual machine": {
+ "$ref": "./examples/VirtualMachines_PowerOff.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/virtualMachines/{virtualMachineName}/reimage": {
+ "post": {
+ "description": "Reimage the provided virtual machine.",
+ "summary": "Reimage the virtual machine.",
+ "operationId": "VirtualMachines_Reimage",
+ "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/VirtualMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Reimage virtual machine": {
+ "$ref": "./examples/VirtualMachines_Reimage.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/virtualMachines/{virtualMachineName}/restart": {
+ "post": {
+ "description": "Restart the provided virtual machine.",
+ "summary": "Restart the virtual machine.",
+ "operationId": "VirtualMachines_Restart",
+ "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/VirtualMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Restart virtual machine": {
+ "$ref": "./examples/VirtualMachines_Restart.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/virtualMachines/{virtualMachineName}/start": {
+ "post": {
+ "description": "Start the provided virtual machine.",
+ "summary": "Start the virtual machine.",
+ "operationId": "VirtualMachines_Start",
+ "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/VirtualMachineNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The action has been initiated for the resource.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Start virtual machine": {
+ "$ref": "./examples/VirtualMachines_Start.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/volumes": {
+ "get": {
+ "description": "Get a list of volumes in the provided resource group.",
+ "summary": "List volumes in the resource group.",
+ "operationId": "Volumes_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 resource list has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/VolumeList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List volumes for resource group": {
+ "$ref": "./examples/Volumes_ListByResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/volumes/{volumeName}": {
+ "get": {
+ "description": "Get properties of the provided volume.",
+ "summary": "Retrieve the volume.",
+ "operationId": "Volumes_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/VolumeNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully retrieved.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get volume": {
+ "$ref": "./examples/Volumes_Get.json"
+ }
+ }
+ },
+ "put": {
+ "description": "Create a new volume or update the properties of the existing one.",
+ "summary": "Create or update the volume.",
+ "operationId": "Volumes_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/VolumeNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "volumeParameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully created or updated.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "201": {
+ "description": "The resource has been accepted for creation or update.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or update volume": {
+ "$ref": "./examples/Volumes_Create.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ },
+ "delete": {
+ "description": "Delete the provided volume.",
+ "summary": "Delete the volume.",
+ "operationId": "Volumes_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/VolumeNameParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The resource has been accepted for deletion.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The URL to retrieve the status of the asynchronous operation."
+ }
+ }
+ },
+ "204": {
+ "description": "The resource has been successfully deleted or does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete volume": {
+ "$ref": "./examples/Volumes_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-schema": "#/definitions/OperationStatusResult",
+ "final-state-via": "location"
+ }
+ },
+ "patch": {
+ "description": "Update tags associated with the provided volume.",
+ "summary": "Patch the volume.",
+ "operationId": "Volumes_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/VolumeNameParameter"
+ },
+ {
+ "description": "The request body.",
+ "name": "volumeUpdateParameters",
+ "in": "body",
+ "schema": {
+ "$ref": "#/definitions/VolumePatchParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The resource has been successfully updated.",
+ "schema": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Patch volume": {
+ "$ref": "./examples/Volumes_Patch.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AadConfiguration": {
+ "type": "object",
+ "title": "AadConfiguration represents the Azure Active Directory Integration properties.",
+ "required": [
+ "adminGroupObjectIds"
+ ],
+ "properties": {
+ "adminGroupObjectIds": {
+ "description": "The list of Azure Active Directory group object IDs that will have an administrative role on the Kubernetes cluster.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "AdministrativeCredentials": {
+ "type": "object",
+ "title": "AdministrativeCredentials represents the admin credentials for the device requiring password-based authentication.",
+ "required": [
+ "username",
+ "password"
+ ],
+ "properties": {
+ "password": {
+ "description": "The password of the administrator of the device used during initialization.",
+ "type": "string",
+ "minLength": 1,
+ "x-ms-secret": true
+ },
+ "username": {
+ "description": "The username of the administrator of the device used during initialization.",
+ "type": "string",
+ "minLength": 1
+ }
+ }
+ },
+ "AdministratorConfiguration": {
+ "type": "object",
+ "title": "AdministratorConfiguration represents the administrative credentials that will be applied to the control plane and agent pool nodes in Kubernetes clusters.",
+ "properties": {
+ "adminUsername": {
+ "description": "The user name for the administrator that will be applied to the operating systems that run Kubernetes nodes. If not supplied, a user name will be chosen by the service.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "sshPublicKeys": {
+ "description": "The SSH configuration for the operating systems that run the nodes in the Kubernetes cluster. In some cases, specification of public keys may be required to produce a working environment.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKey"
+ }
+ }
+ }
+ },
+ "AdministratorConfigurationPatch": {
+ "type": "object",
+ "title": "AdministratorConfigurationPatch represents the patching capabilities for the administrator configuration.",
+ "properties": {
+ "sshPublicKeys": {
+ "description": "SshPublicKey represents the public key used to authenticate with a resource through SSH.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKey"
+ },
+ "x-ms-identifiers": [
+ "keyData"
+ ]
+ }
+ }
+ },
+ "AgentOptions": {
+ "type": "object",
+ "title": "AgentOptions are configurations that will be applied to each agent in an agent pool.",
+ "required": [
+ "hugepagesCount"
+ ],
+ "properties": {
+ "hugepagesCount": {
+ "description": "The number of hugepages to allocate.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "hugepagesSize": {
+ "description": "The size of the hugepages to allocate.",
+ "type": "string",
+ "default": "2M",
+ "enum": [
+ "2M",
+ "1G"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "HugepagesSize"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "AgentPool": {
+ "type": "object",
+ "title": "AgentPool represents the agent pool of Kubernetes cluster.",
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/AgentPoolProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "AgentPoolConfiguration": {
+ "type": "object",
+ "title": "AgentPoolConfiguration specifies the configuration of a pool of nodes.",
+ "required": [
+ "count",
+ "mode",
+ "vmSkuName"
+ ],
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfiguration",
+ "description": "The administrator credentials to be used for the nodes in this agent pool."
+ },
+ "agentOptions": {
+ "$ref": "#/definitions/AgentOptions",
+ "description": "The configurations that will be applied to each agent in this agent pool.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "attachedNetworkConfiguration": {
+ "$ref": "#/definitions/AttachedNetworkConfiguration",
+ "description": "The configuration of networks being attached to the agent pool for use by the workloads that run on this Kubernetes cluster.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availabilityZones": {
+ "description": "The list of availability zones of the Network Cloud cluster used for the provisioning of nodes in this agent pool. If not specified, all availability zones will be used.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "count": {
+ "description": "The number of virtual machines that use this configuration.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "labels": {
+ "description": "The labels applied to the nodes in this agent pool.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "mode": {
+ "description": "The selection of how this agent pool is utilized, either as a system pool or a user pool. System pools run the features and critical services for the Kubernetes Cluster, while user pools are dedicated to user workloads. Every Kubernetes cluster must contain at least one system node pool with at least one node.",
+ "type": "string",
+ "enum": [
+ "System",
+ "User",
+ "NotApplicable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AgentPoolMode"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "taints": {
+ "description": "The taints applied to the nodes in this agent pool.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "The configuration of the agent pool."
+ },
+ "vmSkuName": {
+ "description": "The name of the VM SKU that determines the size of resources allocated for node VMs.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "AgentPoolList": {
+ "type": "object",
+ "title": "AgentPoolList represents a list of Kubernetes cluster agent pools.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of agent pools.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AgentPool"
+ }
+ }
+ }
+ },
+ "AgentPoolPatchParameters": {
+ "type": "object",
+ "title": "AgentPoolPatchParameters represents the body of the request to patch the Kubernetes cluster agent pool.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AgentPoolPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "AgentPoolPatchProperties": {
+ "type": "object",
+ "title": "AgentPoolPatchProperties represents the properties of an agent pool that can be modified.",
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/NodePoolAdministratorConfigurationPatch",
+ "description": "The configuration of administrator credentials for the control plane nodes."
+ },
+ "count": {
+ "description": "The number of virtual machines that use this configuration.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "The configuration of the agent pool."
+ }
+ }
+ },
+ "AgentPoolProperties": {
+ "type": "object",
+ "title": "AgentPoolProperties represents the properties of the Kubernetes cluster agent pool.",
+ "required": [
+ "count",
+ "mode",
+ "vmSkuName"
+ ],
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfiguration",
+ "description": "The administrator credentials to be used for the nodes in this agent pool.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "agentOptions": {
+ "$ref": "#/definitions/AgentOptions",
+ "description": "The configurations that will be applied to each agent in this agent pool.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "attachedNetworkConfiguration": {
+ "$ref": "#/definitions/AttachedNetworkConfiguration",
+ "description": "The configuration of networks being attached to the agent pool for use by the workloads that run on this Kubernetes cluster.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availabilityZones": {
+ "description": "The list of availability zones of the Network Cloud cluster used for the provisioning of nodes in this agent pool. If not specified, all availability zones will be used.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "count": {
+ "description": "The number of virtual machines that use this configuration.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "detailedStatus": {
+ "description": "The current status of the agent pool.",
+ "type": "string",
+ "enum": [
+ "Available",
+ "Error",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AgentPoolDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kubernetesVersion": {
+ "description": "The Kubernetes version running in this agent pool.",
+ "type": "string",
+ "readOnly": true
+ },
+ "labels": {
+ "description": "The labels applied to the nodes in this agent pool.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "mode": {
+ "description": "The selection of how this agent pool is utilized, either as a system pool or a user pool. System pools run the features and critical services for the Kubernetes Cluster, while user pools are dedicated to user workloads. Every Kubernetes cluster must contain at least one system node pool with at least one node.",
+ "type": "string",
+ "enum": [
+ "System",
+ "User",
+ "NotApplicable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AgentPoolMode"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the agent pool.",
+ "type": "string",
+ "enum": [
+ "Accepted",
+ "Canceled",
+ "Deleting",
+ "Failed",
+ "InProgress",
+ "Succeeded",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AgentPoolProvisioningState"
+ },
+ "readOnly": true
+ },
+ "taints": {
+ "description": "The taints applied to the nodes in this agent pool.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "The configuration of the agent pool."
+ },
+ "vmSkuName": {
+ "description": "The name of the VM SKU that determines the size of resources allocated for node VMs.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "AgentPoolUpgradeSettings": {
+ "type": "object",
+ "title": "AgentPoolUpgradeSettings specifies the upgrade settings for an agent pool.",
+ "properties": {
+ "drainTimeout": {
+ "description": "The maximum time in seconds that is allowed for a node drain to complete before proceeding with the upgrade of the agent pool. If not specified during creation, a value of 1800 seconds is used.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 86400,
+ "minimum": 60
+ },
+ "maxSurge": {
+ "description": "The maximum number or percentage of nodes that are surged during upgrade. 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 during creation, a value of 1 is used. One of MaxSurge and MaxUnavailable must be greater than 0.",
+ "type": "string"
+ },
+ "maxUnavailable": {
+ "description": "The maximum number or percentage of nodes that can be unavailable during upgrade. 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 during creation, a value of 0 is used. One of MaxSurge and MaxUnavailable must be greater than 0.",
+ "type": "string"
+ }
+ }
+ },
+ "AnalyticsOutputSettings": {
+ "type": "object",
+ "title": "AnalyticsOutputSettings represents the settings for the log analytics workspace used for output of logs from this cluster.",
+ "properties": {
+ "analyticsWorkspaceId": {
+ "description": "The resource ID of the analytics workspace that is to be used by the specified identity.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.OperationalInsights/workspaces"
+ }
+ ]
+ }
+ },
+ "associatedIdentity": {
+ "$ref": "#/definitions/IdentitySelector",
+ "description": "The selection of the managed identity to use with this analytics workspace. The identity type must be either system assigned or user assigned."
+ }
+ }
+ },
+ "AttachedNetworkConfiguration": {
+ "type": "object",
+ "title": "AttachedNetworkConfiguration represents the set of workload networks to attach to a resource.",
+ "properties": {
+ "l2Networks": {
+ "description": "The list of Layer 2 Networks and related configuration for attachment.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/L2NetworkAttachmentConfiguration"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "l3Networks": {
+ "description": "The list of Layer 3 Networks and related configuration for attachment.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/L3NetworkAttachmentConfiguration"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "trunkedNetworks": {
+ "description": "The list of Trunked Networks and related configuration for attachment.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TrunkedNetworkAttachmentConfiguration"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "AvailableUpgrade": {
+ "type": "object",
+ "title": "AvailableUpgrade represents an upgrade available for a Kubernetes cluster.",
+ "properties": {
+ "availabilityLifecycle": {
+ "description": "The version lifecycle indicator.",
+ "type": "string",
+ "enum": [
+ "Preview",
+ "GenerallyAvailable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AvailabilityLifecycle"
+ },
+ "readOnly": true
+ },
+ "version": {
+ "description": "The version available for upgrading.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "BareMetalMachine": {
+ "type": "object",
+ "title": "BareMetalMachine represents the physical machine in the rack.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/BareMetalMachineProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "BareMetalMachineCommandSpecification": {
+ "type": "object",
+ "title": "BareMetalMachineCommandSpecification represents the command and optional arguments to exercise against the bare metal machine.",
+ "required": [
+ "command"
+ ],
+ "properties": {
+ "arguments": {
+ "description": "The list of string arguments that will be passed to the script in order as separate arguments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "command": {
+ "description": "The command to execute against the bare metal machine.",
+ "type": "string"
+ }
+ }
+ },
+ "BareMetalMachineConfigurationData": {
+ "type": "object",
+ "title": "BareMetalMachineConfigurationData represents configuration for the bare metal machine.",
+ "required": [
+ "rackSlot",
+ "bootMacAddress",
+ "bmcCredentials",
+ "bmcMacAddress",
+ "serialNumber"
+ ],
+ "properties": {
+ "bmcConnectionString": {
+ "description": "The connection string for the baseboard management controller including IP address and protocol.",
+ "type": "string",
+ "readOnly": true
+ },
+ "bmcCredentials": {
+ "$ref": "#/definitions/AdministrativeCredentials",
+ "description": "The credentials of the baseboard management controller on this bare metal machine. The password field is expected to be an Azure Key Vault key URL. Until the cluster is converted to utilize managed identity by setting the secret archive settings, the actual password value should be provided instead."
+ },
+ "bmcMacAddress": {
+ "description": "The MAC address of the BMC for this machine.",
+ "type": "string",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
+ },
+ "bootMacAddress": {
+ "description": "The MAC address associated with the PXE NIC card.",
+ "type": "string",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
+ },
+ "machineDetails": {
+ "description": "The free-form additional information about the machine, e.g. an asset tag.",
+ "type": "string",
+ "maxLength": 256
+ },
+ "machineName": {
+ "description": "The user-provided name for the bare metal machine created from this specification.\nIf not provided, the machine name will be generated programmatically.",
+ "type": "string",
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$"
+ },
+ "rackSlot": {
+ "description": "The slot the physical machine is in the rack based on the BOM configuration.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 256,
+ "minimum": 1
+ },
+ "serialNumber": {
+ "description": "The serial number of the machine. Hardware suppliers may use an alternate value. For example, service tag.",
+ "type": "string",
+ "maxLength": 64
+ }
+ }
+ },
+ "BareMetalMachineCordonParameters": {
+ "type": "object",
+ "title": "BareMetalMachineCordonParameters represents the body of the request to evacuate workloads from node on a bare metal machine.",
+ "properties": {
+ "evacuate": {
+ "description": "The indicator of whether to evacuate the node workload when the bare metal machine is cordoned.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineEvacuate"
+ }
+ }
+ }
+ },
+ "BareMetalMachineKeySet": {
+ "type": "object",
+ "title": "BareMetalMachineKeySet represents the bare metal machine key set.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/BareMetalMachineKeySetProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "BareMetalMachineKeySetList": {
+ "type": "object",
+ "title": "BareMetalMachineKeySetList represents a list of bare metal machine key sets.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of bare metal machine key sets.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BareMetalMachineKeySet"
+ }
+ }
+ }
+ },
+ "BareMetalMachineKeySetPatchParameters": {
+ "type": "object",
+ "title": "BareMetalMachineKeySetPatchParameters represents the body of the request to patch the bare metal machine key set.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/BareMetalMachineKeySetPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "BareMetalMachineKeySetPatchProperties": {
+ "type": "object",
+ "title": "BareMetalMachineKeySetPatchProperties represents the properties of bare metal machine key set that can be patched.",
+ "properties": {
+ "expiration": {
+ "description": "The date and time after which the users in this key set will be removed from the bare metal machines.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "jumpHostsAllowed": {
+ "description": "The list of IP addresses of jump hosts with management network access from which a login will be allowed for the users.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "userList": {
+ "description": "The unique list of permitted users.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KeySetUser"
+ },
+ "x-ms-identifiers": [
+ "azureUserName"
+ ]
+ }
+ }
+ },
+ "BareMetalMachineKeySetProperties": {
+ "type": "object",
+ "title": "BareMetalMachineKeySetProperties represents the properties of bare metal machine key set.",
+ "required": [
+ "privilegeLevel",
+ "expiration",
+ "azureGroupId",
+ "jumpHostsAllowed",
+ "userList"
+ ],
+ "properties": {
+ "azureGroupId": {
+ "description": "The object ID of Azure Active Directory group that all users in the list must be in for access to be granted. Users that are not in the group will not have access.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the key set.",
+ "type": "string",
+ "enum": [
+ "AllActive",
+ "SomeInvalid",
+ "AllInvalid",
+ "Validating"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineKeySetDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "expiration": {
+ "description": "The date and time after which the users in this key set will be removed from the bare metal machines.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "jumpHostsAllowed": {
+ "description": "The list of IP addresses of jump hosts with management network access from which a login will be allowed for the users.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lastValidation": {
+ "description": "The last time this key set was validated.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "osGroupName": {
+ "description": "The name of the group that users will be assigned to on the operating system of the machines.",
+ "type": "string",
+ "maxLength": 32,
+ "pattern": "^([A-Za-z]([A-Za-z0-9]*))$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "privilegeLevel": {
+ "description": "The access level allowed for the users in this key set.",
+ "type": "string",
+ "enum": [
+ "Standard",
+ "Superuser"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineKeySetPrivilegeLevel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the bare metal machine key set.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineKeySetProvisioningState"
+ },
+ "readOnly": true
+ },
+ "userList": {
+ "description": "The unique list of permitted users.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KeySetUser"
+ },
+ "x-ms-identifiers": [
+ "azureUserName"
+ ]
+ },
+ "userListStatus": {
+ "description": "The status evaluation of each user.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KeySetUserStatus"
+ },
+ "x-ms-identifiers": [
+ "azureUserName"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "BareMetalMachineList": {
+ "type": "object",
+ "title": "BareMetalMachineList represents a list of bare metal machines.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of bare metal machines.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BareMetalMachine"
+ }
+ }
+ }
+ },
+ "BareMetalMachinePatchParameters": {
+ "type": "object",
+ "title": "BareMetalMachinePatchParameters represents the body of the request to patch bare metal machine properties.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/BareMetalMachinePatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "BareMetalMachinePatchProperties": {
+ "type": "object",
+ "title": "BareMetalMachinePatchProperties represents the properties of the bare metal machine that can be patched.",
+ "properties": {
+ "machineDetails": {
+ "description": "The details provided by the customer during the creation of rack manifests\nthat allows for custom data to be associated with this machine.",
+ "type": "string",
+ "maxLength": 256
+ }
+ }
+ },
+ "BareMetalMachinePowerOffParameters": {
+ "type": "object",
+ "title": "BareMetalMachinePowerOffParameters represents the body of the request to power off bare metal machine.",
+ "properties": {
+ "skipShutdown": {
+ "description": "The indicator of whether to skip the graceful OS shutdown and power off the bare metal machine immediately.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineSkipShutdown"
+ }
+ }
+ }
+ },
+ "BareMetalMachineProperties": {
+ "type": "object",
+ "title": "BareMetalMachineProperties represents the properties of a bare metal machine.",
+ "required": [
+ "rackId",
+ "machineSkuId",
+ "rackSlot",
+ "machineName",
+ "bootMacAddress",
+ "bmcMacAddress",
+ "bmcCredentials",
+ "bmcConnectionString",
+ "machineDetails",
+ "serialNumber"
+ ],
+ "properties": {
+ "associatedResourceIds": {
+ "description": "The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "bmcConnectionString": {
+ "description": "The connection string for the baseboard management controller including IP address and protocol.",
+ "type": "string"
+ },
+ "bmcCredentials": {
+ "$ref": "#/definitions/AdministrativeCredentials",
+ "description": "The credentials of the baseboard management controller on this bare metal machine."
+ },
+ "bmcMacAddress": {
+ "description": "The MAC address of the BMC device.",
+ "type": "string",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
+ },
+ "bootMacAddress": {
+ "description": "The MAC address of a NIC connected to the PXE network.",
+ "type": "string",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
+ },
+ "clusterId": {
+ "description": "The resource ID of the cluster this bare metal machine is associated with.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "cordonStatus": {
+ "description": "The cordon status of the bare metal machine.",
+ "type": "string",
+ "enum": [
+ "Cordoned",
+ "Uncordoned"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineCordonStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the bare metal machine.",
+ "type": "string",
+ "enum": [
+ "Preparing",
+ "Error",
+ "Available",
+ "Provisioning",
+ "Provisioned",
+ "Deprovisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "hardwareInventory": {
+ "$ref": "#/definitions/HardwareInventory",
+ "description": "The hardware inventory, including information acquired from the model/sku information and from the ironic inspector.",
+ "readOnly": true
+ },
+ "hardwareValidationStatus": {
+ "$ref": "#/definitions/HardwareValidationStatus",
+ "description": "The details of the latest hardware validation performed for this bare metal machine.",
+ "readOnly": true
+ },
+ "hybridAksClustersAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of the resource IDs for the HybridAksClusters that have nodes hosted on this bare metal machine.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "kubernetesNodeName": {
+ "description": "The name of this machine represented by the host object in the Cluster's Kubernetes control plane.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kubernetesVersion": {
+ "description": "The version of Kubernetes running on this machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "machineClusterVersion": {
+ "description": "The cluster version that has been applied to this machine during deployment or a version update.",
+ "type": "string"
+ },
+ "machineDetails": {
+ "description": "The custom details provided by the customer.",
+ "type": "string",
+ "maxLength": 256
+ },
+ "machineName": {
+ "description": "The OS-level hostname assigned to this machine.",
+ "type": "string",
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$"
+ },
+ "machineRoles": {
+ "description": "The list of roles that are assigned to the cluster node running on this machine.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "machineSkuId": {
+ "description": "The unique internal identifier of the bare metal machine SKU.",
+ "type": "string"
+ },
+ "oamIpv4Address": {
+ "description": "The IPv4 address that is assigned to the bare metal machine during the cluster deployment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "oamIpv6Address": {
+ "description": "The IPv6 address that is assigned to the bare metal machine during the cluster deployment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "osImage": {
+ "description": "The image that is currently provisioned to the OS disk.",
+ "type": "string",
+ "readOnly": true
+ },
+ "powerState": {
+ "description": "The power state derived from the baseboard management controller.",
+ "type": "string",
+ "enum": [
+ "On",
+ "Off"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachinePowerState"
+ },
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the bare metal machine.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineProvisioningState"
+ },
+ "readOnly": true
+ },
+ "rackId": {
+ "description": "The resource ID of the rack where this bare metal machine resides.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/racks"
+ }
+ ]
+ }
+ },
+ "rackSlot": {
+ "description": "The rack slot in which this bare metal machine is located, ordered from the bottom up i.e. the lowest slot is 1.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 256,
+ "minimum": 1
+ },
+ "readyState": {
+ "description": "The indicator of whether the bare metal machine is ready to receive workloads.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineReadyState"
+ },
+ "readOnly": true
+ },
+ "runtimeProtectionStatus": {
+ "$ref": "#/definitions/RuntimeProtectionStatus",
+ "description": "The runtime protection status of the bare metal machine.",
+ "readOnly": true
+ },
+ "secretRotationStatus": {
+ "description": "The list of statuses that represent secret rotation activity.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SecretRotationStatus"
+ },
+ "x-ms-identifiers": [
+ "secretType"
+ ],
+ "readOnly": true
+ },
+ "serialNumber": {
+ "description": "The serial number of the bare metal machine.",
+ "type": "string",
+ "maxLength": 64,
+ "minLength": 1
+ },
+ "serviceTag": {
+ "description": "The discovered value of the machine's service tag.",
+ "type": "string",
+ "readOnly": true
+ },
+ "virtualMachinesAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of the resource IDs for the VirtualMachines that are hosted on this bare metal machine.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "BareMetalMachineReplaceParameters": {
+ "type": "object",
+ "title": "BareMetalMachineReplaceParameters represents the body of the request to physically swap a bare metal machine for another.",
+ "properties": {
+ "bmcCredentials": {
+ "$ref": "#/definitions/AdministrativeCredentials",
+ "description": "The credentials of the baseboard management controller on this bare metal machine. The password field is expected to be an Azure Key Vault key URL. Until the cluster is converted to utilize managed identity by setting the secret archive settings, the actual password value should be provided instead."
+ },
+ "bmcMacAddress": {
+ "description": "The MAC address of the BMC device.",
+ "type": "string",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
+ },
+ "bootMacAddress": {
+ "description": "The MAC address of a NIC connected to the PXE network.",
+ "type": "string",
+ "pattern": "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
+ },
+ "machineName": {
+ "description": "The OS-level hostname assigned to this machine.",
+ "type": "string",
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$"
+ },
+ "serialNumber": {
+ "description": "The serial number of the bare metal machine.",
+ "type": "string",
+ "maxLength": 64,
+ "minLength": 1
+ }
+ }
+ },
+ "BareMetalMachineRunCommandParameters": {
+ "type": "object",
+ "title": "BareMetalMachineRunCommandParameters represents the body of the request to execute a script on the bare metal machine.",
+ "required": [
+ "script",
+ "limitTimeSeconds"
+ ],
+ "properties": {
+ "arguments": {
+ "description": "The list of string arguments that will be passed to the script in order as separate arguments.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "limitTimeSeconds": {
+ "description": "The maximum time the script is allowed to run.\nIf the execution time exceeds the maximum, the script will be stopped, any output produced until then will be captured, and the exit code matching a timeout will be returned (252).",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 14400,
+ "minimum": 60
+ },
+ "script": {
+ "description": "The base64 encoded script to execute on the bare metal machine.",
+ "type": "string"
+ }
+ }
+ },
+ "BareMetalMachineRunDataExtractsParameters": {
+ "type": "object",
+ "title": "BareMetalMachineRunDataExtractsParameters represents the body of request containing list of curated data extraction commands to run on the bare metal machine.",
+ "required": [
+ "commands",
+ "limitTimeSeconds"
+ ],
+ "properties": {
+ "commands": {
+ "description": "The list of curated data extraction commands to be executed directly against the target machine.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/definitions/BareMetalMachineCommandSpecification"
+ },
+ "x-ms-identifiers": []
+ },
+ "limitTimeSeconds": {
+ "description": "The maximum time the commands are allowed to run.\nIf the execution time exceeds the maximum, the script will be stopped, any output produced until then will be captured, and the exit code matching a timeout will be returned (252).",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 14400,
+ "minimum": 60
+ }
+ }
+ },
+ "BareMetalMachineRunReadCommandsParameters": {
+ "type": "object",
+ "title": "BareMetalMachineRunReadCommandsParameters represents the body of request containing list of read-only commands to run on the bare metal machine.",
+ "required": [
+ "commands",
+ "limitTimeSeconds"
+ ],
+ "properties": {
+ "commands": {
+ "description": "The list of read-only commands to be executed directly against the target machine.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/definitions/BareMetalMachineCommandSpecification"
+ },
+ "x-ms-identifiers": []
+ },
+ "limitTimeSeconds": {
+ "description": "The maximum time the commands are allowed to run.\nIf the execution time exceeds the maximum, the script will be stopped, any output produced until then will be captured, and the exit code matching a timeout will be returned (252).",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 14400,
+ "minimum": 60
+ }
+ }
+ },
+ "BgpAdvertisement": {
+ "type": "object",
+ "title": "BgpAdvertisement represents the association of IP address pools to the communities and peers.",
+ "required": [
+ "ipAddressPools"
+ ],
+ "properties": {
+ "advertiseToFabric": {
+ "description": "The indicator of if this advertisement is also made to the network fabric associated with the Network Cloud Cluster. This field is ignored if fabricPeeringEnabled is set to False.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AdvertiseToFabric"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "communities": {
+ "description": "The names of the BGP communities to be associated with the announcement, utilizing a BGP community string in 1234:1234 format.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "ipAddressPools": {
+ "description": "The names of the IP address pools associated with this announcement.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "peers": {
+ "description": "The names of the BGP peers to limit this advertisement to. If no values are specified, all BGP peers will receive this advertisement.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "BgpServiceLoadBalancerConfiguration": {
+ "type": "object",
+ "title": "BgpServiceLoadBalancerConfiguration represents the configuration of a BGP service load balancer.",
+ "properties": {
+ "bgpAdvertisements": {
+ "description": "The association of IP address pools to the communities and peers, allowing for announcement of IPs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BgpAdvertisement"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "bgpPeers": {
+ "description": "The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ServiceLoadBalancerBgpPeer"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "fabricPeeringEnabled": {
+ "description": "The indicator to specify if the load balancer peers with the network fabric.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "FabricPeeringEnabled"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "ipAddressPools": {
+ "description": "The list of pools of IP addresses that can be allocated to load balancer services.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IpAddressPool"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "BmcKeySet": {
+ "type": "object",
+ "title": "BmcKeySet represents the baseboard management controller key set.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/BmcKeySetProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "BmcKeySetList": {
+ "type": "object",
+ "title": "BmcKeySetList represents a list of baseboard management controller key sets.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of baseboard management controller key sets.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BmcKeySet"
+ }
+ }
+ }
+ },
+ "BmcKeySetPatchParameters": {
+ "type": "object",
+ "title": "BmcKeySetPatchParameters represents the body of the request to patch the baseboard management controller key set.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/BmcKeySetPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "BmcKeySetPatchProperties": {
+ "type": "object",
+ "title": "BmcKeySetPatchProperties represents the properties of baseboard management controller key set that are patchable.",
+ "properties": {
+ "expiration": {
+ "description": "The date and time after which the users in this key set will be removed from the baseboard management controllers.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "userList": {
+ "description": "The unique list of permitted users.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KeySetUser"
+ },
+ "x-ms-identifiers": [
+ "azureUserName"
+ ]
+ }
+ }
+ },
+ "BmcKeySetProperties": {
+ "type": "object",
+ "title": "BmcKeySetProperties represents the properties of baseboard management controller key set.",
+ "required": [
+ "privilegeLevel",
+ "expiration",
+ "azureGroupId",
+ "userList"
+ ],
+ "properties": {
+ "azureGroupId": {
+ "description": "The object ID of Azure Active Directory group that all users in the list must be in for access to be granted. Users that are not in the group will not have access.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the key set.",
+ "type": "string",
+ "enum": [
+ "AllActive",
+ "SomeInvalid",
+ "AllInvalid",
+ "Validating"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BmcKeySetDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "expiration": {
+ "description": "The date and time after which the users in this key set will be removed from the baseboard management controllers.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastValidation": {
+ "description": "The last time this key set was validated.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "privilegeLevel": {
+ "description": "The access level allowed for the users in this key set.",
+ "type": "string",
+ "enum": [
+ "ReadOnly",
+ "Administrator"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BmcKeySetPrivilegeLevel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the baseboard management controller key set.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BmcKeySetProvisioningState"
+ },
+ "readOnly": true
+ },
+ "userList": {
+ "description": "The unique list of permitted users.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KeySetUser"
+ },
+ "x-ms-identifiers": [
+ "azureUserName"
+ ]
+ },
+ "userListStatus": {
+ "description": "The status evaluation of each user.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KeySetUserStatus"
+ },
+ "x-ms-identifiers": [
+ "azureUserName"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServicesNetwork": {
+ "description": "Upon creation, the additional services that are provided by the platform will be allocated and\nrepresented in the status of this resource. All resources associated with this cloud services network will be part\nof the same layer 2 (L2) isolation domain. At least one service network must be created but may be reused across many\nvirtual machines and/or Hybrid AKS clusters.",
+ "type": "object",
+ "title": "CloudServicesNetwork represents additional egress information that will be used by associated virtual machines or hybrid AKS clusters.",
+ "required": [
+ "extendedLocation"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServicesNetworkProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "CloudServicesNetworkList": {
+ "type": "object",
+ "title": "CloudServicesNetworkList represents a list of cloud services networks.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of cloud services networks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServicesNetwork"
+ }
+ }
+ }
+ },
+ "CloudServicesNetworkPatchParameters": {
+ "type": "object",
+ "title": "CloudServicesNetworkPatchParameters represents the body of the request to patch the cloud services network.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CloudServicesNetworkPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "CloudServicesNetworkPatchProperties": {
+ "type": "object",
+ "title": "CloudServicesNetworkPatchProperties represents the properties of the cloud services network that can be updated using a patch request.",
+ "properties": {
+ "additionalEgressEndpoints": {
+ "description": "The list of egress endpoints. This allows for connection from a Hybrid AKS cluster to the specified endpoint.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EgressEndpoint"
+ },
+ "x-ms-identifiers": []
+ },
+ "enableDefaultEgressEndpoints": {
+ "description": "The indicator of whether the platform default endpoints are allowed for the egress traffic.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "CloudServicesNetworkEnableDefaultEgressEndpoints"
+ }
+ }
+ }
+ },
+ "CloudServicesNetworkProperties": {
+ "type": "object",
+ "title": "CloudServicesNetworkProperties represents properties of the cloud services network.",
+ "properties": {
+ "additionalEgressEndpoints": {
+ "description": "The list of egress endpoints. This allows for connection from a Hybrid AKS cluster to the specified endpoint.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EgressEndpoint"
+ },
+ "x-ms-identifiers": []
+ },
+ "associatedResourceIds": {
+ "description": "The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "The resource ID of the Network Cloud cluster this cloud services network is associated with.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the cloud services network.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Available",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "CloudServicesNetworkDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "enableDefaultEgressEndpoints": {
+ "description": "The indicator of whether the platform default endpoints are allowed for the egress traffic.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "CloudServicesNetworkEnableDefaultEgressEndpoints"
+ }
+ },
+ "enabledEgressEndpoints": {
+ "description": "The full list of additional and default egress endpoints that are currently enabled.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EgressEndpoint"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "hybridAksClustersAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of Hybrid AKS cluster resource IDs that are associated with this cloud services network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "interfaceName": {
+ "description": "The name of the interface that will be present in the virtual machine to represent this network.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the cloud services network.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "CloudServicesNetworkProvisioningState"
+ },
+ "readOnly": true
+ },
+ "virtualMachinesAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of virtual machine resource IDs, excluding any Hybrid AKS virtual machines, that are currently using this cloud services network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "Cluster": {
+ "type": "object",
+ "title": "Cluster represents the on-premises Network Cloud cluster.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster manager associated with the cluster."
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The identity for the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/ClusterProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "ClusterAvailableUpgradeVersion": {
+ "type": "object",
+ "title": "ClusterAvailableUpgradeVersion represents the various cluster upgrade parameters.",
+ "properties": {
+ "controlImpact": {
+ "description": "The indicator of whether the control plane will be impacted during the upgrade.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ControlImpact"
+ },
+ "readOnly": true
+ },
+ "expectedDuration": {
+ "description": "The expected duration needed for this upgrade.",
+ "type": "string",
+ "readOnly": true
+ },
+ "impactDescription": {
+ "description": "The impact description including the specific details and release notes.",
+ "type": "string",
+ "readOnly": true
+ },
+ "supportExpiryDate": {
+ "description": "The last date the version of the platform is supported.",
+ "type": "string",
+ "readOnly": true
+ },
+ "targetClusterVersion": {
+ "description": "The target version this cluster will be upgraded to.",
+ "type": "string",
+ "readOnly": true
+ },
+ "workloadImpact": {
+ "description": "The indicator of whether the workload will be impacted during the upgrade.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "WorkloadImpact"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterAvailableVersion": {
+ "type": "object",
+ "title": "ClusterAvailableVersion represents the cluster version that the cluster manager can be asked to create and manage.",
+ "properties": {
+ "supportExpiryDate": {
+ "description": "The last date the version of the platform is supported.",
+ "type": "string",
+ "readOnly": true
+ },
+ "targetClusterVersion": {
+ "description": "The version of the cluster to be deployed.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterCapacity": {
+ "type": "object",
+ "title": "ClusterCapacity represents various details regarding compute capacity.",
+ "properties": {
+ "availableApplianceStorageGB": {
+ "description": "The remaining appliance-based storage in GB available for workload use. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "availableCoreCount": {
+ "description": "The remaining number of cores that are available in this cluster for workload use.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "availableHostStorageGB": {
+ "description": "The remaining machine or host-based storage in GB available for workload use. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "availableMemoryGB": {
+ "description": "The remaining memory in GB that are available in this cluster for workload use. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "totalApplianceStorageGB": {
+ "description": "The total appliance-based storage in GB supported by this cluster for workload use. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "totalCoreCount": {
+ "description": "The total number of cores that are supported by this cluster for workload use.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "totalHostStorageGB": {
+ "description": "The total machine or host-based storage in GB supported by this cluster for workload use. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "totalMemoryGB": {
+ "description": "The total memory supported by this cluster for workload use. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ }
+ }
+ },
+ "ClusterContinueUpdateVersionParameters": {
+ "type": "object",
+ "title": "ClusterContinueUpdateVersionParameters represents the body of the request to continue the update of a cluster version.",
+ "properties": {
+ "machineGroupTargetingMode": {
+ "description": "The mode by which the cluster will target the next grouping of servers to continue the update.",
+ "type": "string",
+ "default": "AlphaByRack",
+ "enum": [
+ "AlphaByRack"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterContinueUpdateVersionMachineGroupTargetingMode"
+ }
+ }
+ }
+ },
+ "ClusterDeployParameters": {
+ "type": "object",
+ "title": "ClusterDeployParameters represents the body of the request to deploy cluster.",
+ "properties": {
+ "skipValidationsForMachines": {
+ "description": "The names of bare metal machines in the cluster that should be skipped during environment validation.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ClusterList": {
+ "type": "object",
+ "title": "ClusterList represents a list of clusters.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of clusters.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Cluster"
+ }
+ }
+ }
+ },
+ "ClusterManager": {
+ "type": "object",
+ "title": "ClusterManager represents a control-plane to manage one or more on-premises clusters.",
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The identity of the cluster manager."
+ },
+ "properties": {
+ "$ref": "#/definitions/ClusterManagerProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "ClusterManagerList": {
+ "type": "object",
+ "title": "ClusterManagerList represents a list of cluster manager objects.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of cluster managers.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClusterManager"
+ }
+ }
+ }
+ },
+ "ClusterManagerPatchParameters": {
+ "type": "object",
+ "title": "ClusterManagerPatchParameters represents the body of the request to patch the cluster properties.",
+ "properties": {
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The identity for the resource."
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ClusterManagerProperties": {
+ "type": "object",
+ "title": "ClusterManagerProperties represents the properties of a cluster manager.",
+ "required": [
+ "fabricControllerId"
+ ],
+ "properties": {
+ "analyticsWorkspaceId": {
+ "description": "The resource ID of the Log Analytics workspace that is used for the logs collection.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.OperationalInsights/workspaces"
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availabilityZones": {
+ "description": "Field deprecated, this value will no longer influence the cluster manager allocation process and will be removed in a future version. The Azure availability zones within the region that will be used to support the cluster manager resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "clusterVersions": {
+ "description": "The list of the cluster versions the manager supports. It is used as input in clusterVersion property of a cluster resource.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClusterAvailableVersion"
+ },
+ "x-ms-identifiers": [
+ "targetClusterVersion"
+ ],
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The detailed status that provides additional information about the cluster manager.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Available",
+ "Provisioning",
+ "ProvisioningFailed",
+ "Updating",
+ "UpdateFailed"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterManagerDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "fabricControllerId": {
+ "description": "The resource ID of the fabric controller that has one to one mapping with the cluster manager.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "managedResourceGroupConfiguration": {
+ "$ref": "#/definitions/ManagedResourceGroupConfiguration",
+ "description": "The configuration of the managed resource group associated with the resource."
+ },
+ "managerExtendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location (custom location) that represents the cluster manager's control plane location. This extended location is used when creating cluster and rack manifest resources.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the cluster manager.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterManagerProvisioningState"
+ },
+ "readOnly": true
+ },
+ "vmSize": {
+ "description": "Field deprecated, this value will no longer influence the cluster manager allocation process and will be removed in a future version. The size of the Azure virtual machines to use for hosting the cluster manager resource.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "ClusterMetricsConfiguration": {
+ "type": "object",
+ "title": "ClusterMetricsConfiguration represents the metrics configuration of an on-premises Network Cloud cluster.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/ClusterMetricsConfigurationProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "ClusterMetricsConfigurationList": {
+ "type": "object",
+ "title": "ClusterMetricsConfigurationList represents a list of metrics configuration of the cluster.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of metrics configurations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClusterMetricsConfiguration"
+ }
+ }
+ }
+ },
+ "ClusterMetricsConfigurationPatchParameters": {
+ "type": "object",
+ "title": "ClusterMetricsConfigurationPatchParameters represents the body of the request to patch the metrics configuration of cluster.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ClusterMetricsConfigurationPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ClusterMetricsConfigurationPatchProperties": {
+ "type": "object",
+ "title": "ClusterMetricsConfigurationPatchProperties represents the properties of metrics configuration for the cluster for patching.",
+ "properties": {
+ "collectionInterval": {
+ "description": "The interval in minutes by which metrics will be collected.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 1440,
+ "minimum": 1
+ },
+ "enabledMetrics": {
+ "description": "The list of metric names that have been chosen to be enabled in addition to the core set of enabled metrics.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ClusterMetricsConfigurationProperties": {
+ "type": "object",
+ "title": "ClusterMetricsConfigurationProperties represents the properties of metrics configuration for the cluster.",
+ "required": [
+ "collectionInterval"
+ ],
+ "properties": {
+ "collectionInterval": {
+ "description": "The interval in minutes by which metrics will be collected.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 1440,
+ "minimum": 1
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the metrics configuration.",
+ "type": "string",
+ "enum": [
+ "Processing",
+ "Applied",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterMetricsConfigurationDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "disabledMetrics": {
+ "description": "The list of metrics that are available for the cluster but disabled at the moment.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "enabledMetrics": {
+ "description": "The list of metric names that have been chosen to be enabled in addition to the core set of enabled metrics.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the metrics configuration.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterMetricsConfigurationProvisioningState"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterPatchParameters": {
+ "type": "object",
+ "title": "ClusterPatchParameters represents the body of the request to patch the cluster properties.",
+ "properties": {
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The identity for the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/ClusterPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ClusterPatchProperties": {
+ "type": "object",
+ "title": "ClusterPatchProperties represents the properties of the cluster for patching.",
+ "properties": {
+ "aggregatorOrSingleRackDefinition": {
+ "$ref": "#/definitions/RackDefinition",
+ "description": "The rack definition that is intended to reflect only a single rack in a single rack cluster, or an aggregator rack in a multi-rack cluster."
+ },
+ "analyticsOutputSettings": {
+ "$ref": "#/definitions/AnalyticsOutputSettings",
+ "description": "The settings for the log analytics workspace used for output of logs from this cluster.",
+ "x-nullable": true
+ },
+ "clusterLocation": {
+ "description": "The customer-provided location information to identify where the cluster resides.",
+ "type": "string"
+ },
+ "clusterServicePrincipal": {
+ "$ref": "#/definitions/ServicePrincipalInformation",
+ "description": "The service principal to be used by the cluster during Arc Appliance installation.",
+ "x-nullable": true
+ },
+ "commandOutputSettings": {
+ "$ref": "#/definitions/CommandOutputSettings",
+ "description": "The settings for commands run in this cluster, such as bare metal machine run read only commands and data extracts.",
+ "x-nullable": true
+ },
+ "computeDeploymentThreshold": {
+ "$ref": "#/definitions/ValidationThreshold",
+ "description": "The validation threshold indicating the allowable failures of compute machines during environment validation and deployment.",
+ "x-nullable": true
+ },
+ "computeRackDefinitions": {
+ "description": "The list of rack definitions for the compute racks in a multi-rack\ncluster, or an empty list in a single-rack cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RackDefinition"
+ },
+ "x-ms-identifiers": [
+ "networkRackId"
+ ]
+ },
+ "runtimeProtectionConfiguration": {
+ "$ref": "#/definitions/RuntimeProtectionConfiguration",
+ "description": "The settings for cluster runtime protection.",
+ "x-nullable": true
+ },
+ "secretArchive": {
+ "$ref": "#/definitions/ClusterSecretArchive",
+ "description": "The configuration for use of a key vault to store secrets for later retrieval by the operator.",
+ "x-nullable": true
+ },
+ "secretArchiveSettings": {
+ "$ref": "#/definitions/SecretArchiveSettings",
+ "description": "The settings for the secret archive used to hold credentials for the cluster.",
+ "x-nullable": true
+ },
+ "updateStrategy": {
+ "$ref": "#/definitions/ClusterUpdateStrategy",
+ "description": "The strategy for updating the cluster.",
+ "x-nullable": true
+ },
+ "vulnerabilityScanningSettings": {
+ "$ref": "#/definitions/VulnerabilityScanningSettingsPatch",
+ "description": "The settings for how security vulnerability scanning is applied to the cluster.",
+ "x-nullable": true
+ }
+ }
+ },
+ "ClusterProperties": {
+ "type": "object",
+ "title": "ClusterProperties represents the properties of a cluster.",
+ "required": [
+ "networkFabricId",
+ "clusterType",
+ "clusterVersion",
+ "aggregatorOrSingleRackDefinition"
+ ],
+ "properties": {
+ "aggregatorOrSingleRackDefinition": {
+ "$ref": "#/definitions/RackDefinition",
+ "description": "The rack definition that is intended to reflect only a single rack in a single rack cluster, or an aggregator rack in a multi-rack cluster."
+ },
+ "analyticsOutputSettings": {
+ "$ref": "#/definitions/AnalyticsOutputSettings",
+ "description": "The settings for the log analytics workspace used for output of logs from this cluster."
+ },
+ "analyticsWorkspaceId": {
+ "description": "Field Deprecated. The resource ID of the Log Analytics Workspace that will be used for storing relevant logs.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.OperationalInsights/workspaces"
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availableUpgradeVersions": {
+ "description": "The list of cluster runtime version upgrades available for this cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClusterAvailableUpgradeVersion"
+ },
+ "x-ms-identifiers": [
+ "targetClusterVersion"
+ ],
+ "readOnly": true
+ },
+ "clusterCapacity": {
+ "$ref": "#/definitions/ClusterCapacity",
+ "description": "The capacity supported by this cluster.",
+ "readOnly": true
+ },
+ "clusterConnectionStatus": {
+ "description": "The latest heartbeat status between the cluster manager and the cluster.",
+ "type": "string",
+ "enum": [
+ "Connected",
+ "Disconnected",
+ "Timeout",
+ "Undefined"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterConnectionStatus"
+ },
+ "readOnly": true
+ },
+ "clusterExtendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location (custom location) that represents the cluster's control plane location. This extended location is used to route the requests of child objects of the cluster that are handled by the platform operator.",
+ "readOnly": true
+ },
+ "clusterLocation": {
+ "description": "The customer-provided location information to identify where the cluster resides.",
+ "type": "string",
+ "maxLength": 256
+ },
+ "clusterManagerConnectionStatus": {
+ "description": "The latest connectivity status between cluster manager and the cluster.",
+ "type": "string",
+ "enum": [
+ "Connected",
+ "Unreachable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterManagerConnectionStatus"
+ },
+ "readOnly": true
+ },
+ "clusterManagerId": {
+ "description": "The resource ID of the cluster manager that manages this cluster. This is set by the Cluster Manager when the cluster is created.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/clusterManagers"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "clusterServicePrincipal": {
+ "$ref": "#/definitions/ServicePrincipalInformation",
+ "description": "The service principal to be used by the cluster during Arc Appliance installation."
+ },
+ "clusterType": {
+ "description": "The type of rack configuration for the cluster.",
+ "type": "string",
+ "enum": [
+ "SingleRack",
+ "MultiRack"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "clusterVersion": {
+ "description": "The current runtime version of the cluster.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "commandOutputSettings": {
+ "$ref": "#/definitions/CommandOutputSettings",
+ "description": "The settings for commands run in this cluster, such as bare metal machine run read only commands and data extracts."
+ },
+ "computeDeploymentThreshold": {
+ "$ref": "#/definitions/ValidationThreshold",
+ "description": "The validation threshold indicating the allowable failures of compute machines during environment validation and deployment."
+ },
+ "computeRackDefinitions": {
+ "description": "The list of rack definitions for the compute racks in a multi-rack\ncluster, or an empty list in a single-rack cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RackDefinition"
+ },
+ "x-ms-identifiers": [
+ "networkRackId"
+ ]
+ },
+ "detailedStatus": {
+ "description": "The current detailed status of the cluster.",
+ "type": "string",
+ "enum": [
+ "PendingDeployment",
+ "Deploying",
+ "Running",
+ "Updating",
+ "UpdatePaused",
+ "Degraded",
+ "Deleting",
+ "Disconnected",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "hybridAksExtendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "Field Deprecated. This field will not be populated in an upcoming version. The extended location (custom location) that represents the Hybrid AKS control plane location. This extended location is used when creating provisioned clusters (Hybrid AKS clusters).",
+ "readOnly": true
+ },
+ "managedResourceGroupConfiguration": {
+ "$ref": "#/definitions/ManagedResourceGroupConfiguration",
+ "description": "The configuration of the managed resource group associated with the resource."
+ },
+ "manualActionCount": {
+ "description": "The count of Manual Action Taken (MAT) events that have not been validated.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "networkFabricId": {
+ "description": "The resource ID of the Network Fabric associated with the cluster.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the cluster.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "Validating",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterProvisioningState"
+ },
+ "readOnly": true
+ },
+ "runtimeProtectionConfiguration": {
+ "$ref": "#/definitions/RuntimeProtectionConfiguration",
+ "description": "The settings for cluster runtime protection."
+ },
+ "secretArchive": {
+ "$ref": "#/definitions/ClusterSecretArchive",
+ "description": "The configuration for use of a key vault to store secrets for later retrieval by the operator."
+ },
+ "secretArchiveSettings": {
+ "$ref": "#/definitions/SecretArchiveSettings",
+ "description": "The settings for the secret archive used to hold credentials for the cluster."
+ },
+ "supportExpiryDate": {
+ "description": "The support end date of the runtime version of the cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "updateStrategy": {
+ "$ref": "#/definitions/ClusterUpdateStrategy",
+ "description": "The strategy for updating the cluster."
+ },
+ "vulnerabilityScanningSettings": {
+ "$ref": "#/definitions/VulnerabilityScanningSettings",
+ "description": "The settings for how security vulnerability scanning is applied to the cluster."
+ },
+ "workloadResourceIds": {
+ "description": "The list of workload resource IDs that are hosted within this cluster.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ClusterScanRuntimeParameters": {
+ "type": "object",
+ "title": "ClusterScanRuntimeParameters defines the parameters for the cluster scan runtime operation.",
+ "properties": {
+ "scanActivity": {
+ "description": "The choice of if the scan operation should run the scan.",
+ "type": "string",
+ "default": "Scan",
+ "enum": [
+ "Scan",
+ "Skip"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterScanRuntimeParametersScanActivity"
+ }
+ }
+ }
+ },
+ "ClusterSecretArchive": {
+ "type": "object",
+ "title": "ClusterSecretArchive configures the key vault to archive the secrets of the cluster for later retrieval.",
+ "required": [
+ "keyVaultId"
+ ],
+ "properties": {
+ "keyVaultId": {
+ "description": "The resource ID of the key vault to archive the secrets of the cluster.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ ]
+ }
+ },
+ "useKeyVault": {
+ "description": "The indicator if the specified key vault should be used to archive the secrets of the cluster.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterSecretArchiveEnabled"
+ }
+ }
+ }
+ },
+ "ClusterUpdateStrategy": {
+ "type": "object",
+ "title": "ClusterUpdateStrategy represents the strategy for updating the cluster.",
+ "required": [
+ "strategyType",
+ "thresholdType",
+ "thresholdValue"
+ ],
+ "properties": {
+ "maxUnavailable": {
+ "description": "The maximum number of worker nodes that can be offline within the increment of update, e.g., rack-by-rack.\nLimited by the maximum number of machines in the increment. Defaults to the whole increment size.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 1
+ },
+ "strategyType": {
+ "description": "The mode of operation for runtime protection.",
+ "type": "string",
+ "enum": [
+ "Rack",
+ "PauseAfterRack"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ClusterUpdateStrategyType"
+ }
+ },
+ "thresholdType": {
+ "description": "Selection of how the threshold should be evaluated.",
+ "type": "string",
+ "enum": [
+ "CountSuccess",
+ "PercentSuccess"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ValidationThresholdType"
+ }
+ },
+ "thresholdValue": {
+ "description": "The numeric threshold value.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 0
+ },
+ "waitTimeMinutes": {
+ "description": "The time to wait between the increments of update defined by the strategy.",
+ "type": "integer",
+ "format": "int64",
+ "default": 15,
+ "maximum": 60,
+ "minimum": 0
+ }
+ }
+ },
+ "ClusterUpdateVersionParameters": {
+ "type": "object",
+ "title": "ClusterUpdateVersionParameters represents the body of the request to update cluster version.",
+ "required": [
+ "targetClusterVersion"
+ ],
+ "properties": {
+ "targetClusterVersion": {
+ "description": "The version to be applied to the cluster during update.",
+ "type": "string"
+ }
+ }
+ },
+ "CommandOutputSettings": {
+ "type": "object",
+ "title": "CommandOutputSettings represents the settings for commands run within the cluster such as bare metal machine run read-only commands.",
+ "properties": {
+ "associatedIdentity": {
+ "$ref": "#/definitions/IdentitySelector",
+ "description": "The selection of the managed identity to use with this storage account container. The identity type must be either system assigned or user assigned."
+ },
+ "containerUrl": {
+ "description": "The URL of the storage account container that is to be used by the specified identities.",
+ "type": "string",
+ "format": "uri"
+ }
+ }
+ },
+ "Console": {
+ "type": "object",
+ "title": "Console represents the console of an on-premises Network Cloud virtual machine.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster manager associated with the cluster this virtual machine is created on."
+ },
+ "properties": {
+ "$ref": "#/definitions/ConsoleProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "ConsoleList": {
+ "type": "object",
+ "title": "ConsoleList represents a list of virtual machine consoles.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of virtual machine consoles.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Console"
+ }
+ }
+ }
+ },
+ "ConsolePatchParameters": {
+ "type": "object",
+ "title": "ConsolePatchParameters represents the body of the request to patch the virtual machine console.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ConsolePatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ConsolePatchProperties": {
+ "type": "object",
+ "title": "ConsolePatchProperties represents the properties of the virtual machine console that can be patched.",
+ "properties": {
+ "enabled": {
+ "description": "The indicator of whether the console access is enabled.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConsoleEnabled"
+ }
+ },
+ "expiration": {
+ "description": "The date and time after which the key will be disallowed access.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "sshPublicKey": {
+ "$ref": "#/definitions/SshPublicKey",
+ "description": "The SSH public key that will be provisioned for user access. The user is expected to have the corresponding SSH private key for logging in."
+ }
+ }
+ },
+ "ConsoleProperties": {
+ "type": "object",
+ "title": "ConsoleProperties represents the properties of the virtual machine console.",
+ "required": [
+ "sshPublicKey",
+ "enabled"
+ ],
+ "properties": {
+ "detailedStatus": {
+ "description": "The more detailed status of the console.",
+ "type": "string",
+ "enum": [
+ "Ready",
+ "Error"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConsoleDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "enabled": {
+ "description": "The indicator of whether the console access is enabled.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConsoleEnabled"
+ }
+ },
+ "expiration": {
+ "description": "The date and time after which the key will be disallowed access.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "privateLinkServiceId": {
+ "description": "The resource ID of the private link service that is used to provide virtual machine console access.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Network/privateLinkServices"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the virtual machine console.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConsoleProvisioningState"
+ },
+ "readOnly": true
+ },
+ "sshPublicKey": {
+ "$ref": "#/definitions/SshPublicKey",
+ "description": "The SSH public key that will be provisioned for user access. The user is expected to have the corresponding SSH private key for logging in."
+ },
+ "virtualMachineAccessId": {
+ "description": "The unique identifier for the virtual machine that is used to access the console.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ControlPlaneNodeConfiguration": {
+ "type": "object",
+ "title": "ControlPlaneNodeConfiguration represents the selection of virtual machines and size of the control plane for a Kubernetes cluster.",
+ "required": [
+ "count",
+ "vmSkuName"
+ ],
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfiguration",
+ "description": "The administrator credentials to be used for the nodes in the control plane.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availabilityZones": {
+ "description": "The list of availability zones of the Network Cloud cluster to be used for the provisioning of nodes in the control plane. If not specified, all availability zones will be used.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "count": {
+ "description": "The number of virtual machines that use this configuration.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 1
+ },
+ "vmSkuName": {
+ "description": "The name of the VM SKU supplied during creation.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "ControlPlaneNodePatchConfiguration": {
+ "type": "object",
+ "title": "ControlPlaneNodePatchConfiguration represents the properties of the control plane that can be patched for this Kubernetes cluster.",
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfigurationPatch",
+ "description": "The configuration of administrator credentials for the control plane nodes."
+ },
+ "count": {
+ "description": "The number of virtual machines that use this configuration.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 1
+ }
+ }
+ },
+ "EgressEndpoint": {
+ "type": "object",
+ "title": "EgressEndpoint represents the connection from a cloud services network to the specified endpoint for a common purpose.",
+ "required": [
+ "category",
+ "endpoints"
+ ],
+ "properties": {
+ "category": {
+ "description": "The descriptive category name of endpoints accessible by the AKS agent node. For example, azure-resource-management, API server, etc. The platform egress endpoints provided by default will use the category 'default'.",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "The list of endpoint dependencies.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/definitions/EndpointDependency"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "EndpointDependency": {
+ "type": "object",
+ "title": "EndpointDependency represents the definition of an endpoint, including the domain and details.",
+ "required": [
+ "domainName"
+ ],
+ "properties": {
+ "domainName": {
+ "description": "The domain name of the dependency.",
+ "type": "string"
+ },
+ "port": {
+ "description": "The port of this endpoint.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 65535,
+ "minimum": 1
+ }
+ }
+ },
+ "ExtendedLocation": {
+ "type": "object",
+ "title": "ExtendedLocation represents the Azure custom location where the resource will be created.",
+ "required": [
+ "type",
+ "name"
+ ],
+ "properties": {
+ "name": {
+ "description": "The resource ID of the extended location on which the resource will be created.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "type": {
+ "description": "The extended location type, for example, CustomLocation.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "FeatureStatus": {
+ "type": "object",
+ "title": "FeatureStatus contains information regarding a Kubernetes cluster feature.",
+ "properties": {
+ "detailedStatus": {
+ "description": "The status representing the state of this feature.",
+ "type": "string",
+ "enum": [
+ "Running",
+ "Failed",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "FeatureDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the feature.",
+ "type": "string",
+ "readOnly": true
+ },
+ "version": {
+ "description": "The version of the feature.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "HardwareInventory": {
+ "type": "object",
+ "title": "HardwareInventory represents the hardware configuration of this machine as exposed to the customer, including information acquired from the model/sku information and from the ironic inspector.",
+ "properties": {
+ "additionalHostInformation": {
+ "description": "Freeform data extracted from the environment about this machine. This information varies depending on the specific hardware and configuration.",
+ "type": "string",
+ "readOnly": true
+ },
+ "interfaces": {
+ "description": "The list of network interfaces and associated details for the bare metal machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HardwareInventoryNetworkInterface"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ },
+ "nics": {
+ "description": "Field Deprecated. Will be removed in an upcoming version. The list of network interface cards and associated details for the bare metal machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Nic"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ }
+ }
+ },
+ "HardwareInventoryNetworkInterface": {
+ "type": "object",
+ "title": "HardwareInventoryNetworkInterface represents the network interface details as part of a hardware inventory.",
+ "properties": {
+ "linkStatus": {
+ "description": "The current status of the link.",
+ "type": "string",
+ "readOnly": true
+ },
+ "macAddress": {
+ "description": "The MAC address associated with this interface.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the interface.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkInterfaceId": {
+ "description": "The resource ID of the network interface for the port on the switch that this machine's interface is connected to.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "HardwareValidationStatus": {
+ "type": "object",
+ "title": "HardwareValidationStatus represents the latest hardware validation details performed for this bare metal machine.",
+ "properties": {
+ "lastValidationTime": {
+ "description": "The timestamp of the hardware validation execution.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "result": {
+ "description": "The outcome of the hardware validation.",
+ "type": "string",
+ "enum": [
+ "Pass",
+ "Fail"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineHardwareValidationResult"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "IdentitySelector": {
+ "type": "object",
+ "title": "IdentitySelector represents the selection of a managed identity for use.",
+ "properties": {
+ "identityType": {
+ "description": "The type of managed identity that is being selected.",
+ "type": "string",
+ "enum": [
+ "SystemAssignedIdentity",
+ "UserAssignedIdentity"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ManagedServiceIdentitySelectorType"
+ }
+ },
+ "userAssignedIdentityResourceId": {
+ "description": "The user assigned managed identity resource ID to use. Mutually exclusive with a system assigned identity type.",
+ "type": "string",
+ "x-nullable": true,
+ "format": "arm-id"
+ }
+ }
+ },
+ "ImageRepositoryCredentials": {
+ "type": "object",
+ "title": "ImageRepositoryCredentials represents the credentials used to login to the image repository.",
+ "required": [
+ "username",
+ "password",
+ "registryUrl"
+ ],
+ "properties": {
+ "password": {
+ "description": "The password or token used to access an image in the target repository.",
+ "type": "string",
+ "minLength": 1,
+ "x-ms-secret": true
+ },
+ "registryUrl": {
+ "description": "The URL of the authentication server used to validate the repository credentials.",
+ "type": "string"
+ },
+ "username": {
+ "description": "The username used to access an image in the target repository.",
+ "type": "string",
+ "minLength": 1
+ }
+ }
+ },
+ "InitialAgentPoolConfiguration": {
+ "type": "object",
+ "title": "InitialAgentPoolConfiguration specifies the configuration of a pool of virtual machines that are initially defined with a Kubernetes cluster.",
+ "required": [
+ "count",
+ "mode",
+ "vmSkuName",
+ "name"
+ ],
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfiguration",
+ "description": "The administrator credentials to be used for the nodes in this agent pool.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "agentOptions": {
+ "$ref": "#/definitions/AgentOptions",
+ "description": "The configurations that will be applied to each agent in this agent pool.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "attachedNetworkConfiguration": {
+ "$ref": "#/definitions/AttachedNetworkConfiguration",
+ "description": "The configuration of networks being attached to the agent pool for use by the workloads that run on this Kubernetes cluster.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availabilityZones": {
+ "description": "The list of availability zones of the Network Cloud cluster used for the provisioning of nodes in this agent pool. If not specified, all availability zones will be used.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "count": {
+ "description": "The number of virtual machines that use this configuration.",
+ "type": "integer",
+ "format": "int64",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "labels": {
+ "description": "The labels applied to the nodes in this agent pool.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "mode": {
+ "description": "The selection of how this agent pool is utilized, either as a system pool or a user pool. System pools run the features and critical services for the Kubernetes Cluster, while user pools are dedicated to user workloads. Every Kubernetes cluster must contain at least one system node pool with at least one node.",
+ "type": "string",
+ "enum": [
+ "System",
+ "User",
+ "NotApplicable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AgentPoolMode"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "name": {
+ "description": "The name that will be used for the agent pool resource representing this agent pool.",
+ "type": "string",
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "taints": {
+ "description": "The taints applied to the nodes in this agent pool.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "upgradeSettings": {
+ "$ref": "#/definitions/AgentPoolUpgradeSettings",
+ "description": "The configuration of the agent pool."
+ },
+ "vmSkuName": {
+ "description": "The name of the VM SKU that determines the size of resources allocated for node VMs.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "IpAddressPool": {
+ "type": "object",
+ "title": "IpAddressPool represents a pool of IP addresses that can be allocated to a service.",
+ "required": [
+ "addresses",
+ "name"
+ ],
+ "properties": {
+ "addresses": {
+ "description": "The list of IP address ranges. Each range can be a either a subnet in CIDR format or an explicit start-end range of IP addresses. For a BGP service load balancer configuration, only CIDR format is supported and excludes /32 (IPv4) and /128 (IPv6) prefixes.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "autoAssign": {
+ "description": "The indicator to determine if automatic allocation from the pool should occur.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BfdEnabled"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "name": {
+ "description": "The name used to identify this IP address pool for association with a BGP advertisement.",
+ "type": "string",
+ "pattern": "^[a-z0-9]([a-z0-9.-]{0,61}[a-z0-9]){0,1}$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "onlyUseHostIps": {
+ "description": "The indicator to prevent the use of IP addresses ending with .0 and .255 for this pool. Enabling this option will only use IP addresses between .1 and .254 inclusive.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BfdEnabled"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "KeySetUser": {
+ "type": "object",
+ "title": "KeySetUser represents the properties of the user in the key set.",
+ "required": [
+ "azureUserName",
+ "sshPublicKey"
+ ],
+ "properties": {
+ "azureUserName": {
+ "description": "The user name that will be used for access.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The free-form description for this user.",
+ "type": "string",
+ "maxLength": 256
+ },
+ "sshPublicKey": {
+ "$ref": "#/definitions/SshPublicKey",
+ "description": "The SSH public key that will be provisioned for user access. The user is expected to have the corresponding SSH private key for logging in."
+ },
+ "userPrincipalName": {
+ "description": "The user principal name (email format) used to validate this user's group membership.",
+ "type": "string"
+ }
+ }
+ },
+ "KeySetUserStatus": {
+ "type": "object",
+ "title": "KeySetUserStatus represents the status of the key set user.",
+ "properties": {
+ "azureUserName": {
+ "description": "The user name that will be used for access.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "description": "The indicator of whether the user is currently deployed for access.",
+ "type": "string",
+ "enum": [
+ "Active",
+ "Invalid"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BareMetalMachineKeySetUserSetupStatus"
+ },
+ "readOnly": true
+ },
+ "statusMessage": {
+ "description": "The additional information describing the current status of this user, if any available.",
+ "type": "string",
+ "maxLength": 256,
+ "readOnly": true
+ }
+ }
+ },
+ "KubernetesCluster": {
+ "type": "object",
+ "title": "KubernetesCluster represents the Kubernetes cluster hosted on Network Cloud.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/KubernetesClusterProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "KubernetesClusterFeature": {
+ "type": "object",
+ "title": "KubernetesClusterFeature represents the feature of a Kubernetes cluster.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/KubernetesClusterFeatureProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "KubernetesClusterFeatureList": {
+ "type": "object",
+ "title": "KubernetesClusterFeatureList represents the list of Kubernetes cluster feature resources.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of Kubernetes cluster features.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesClusterFeature"
+ }
+ }
+ }
+ },
+ "KubernetesClusterFeaturePatchParameters": {
+ "type": "object",
+ "title": "KubernetesClusterFeaturePatchParameters represents the body of the request to patch the Kubernetes cluster feature.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/KubernetesClusterFeaturePatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "KubernetesClusterFeaturePatchProperties": {
+ "type": "object",
+ "title": "KubernetesClusterFeaturePatchProperties represents the Kubernetes cluster feature properties for patching.",
+ "properties": {
+ "options": {
+ "description": "The configured options for the feature.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringKeyValuePair"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ]
+ }
+ }
+ },
+ "KubernetesClusterFeatureProperties": {
+ "type": "object",
+ "title": "KubernetesClusterFeatureProperties represents the properties of a Kubernetes cluster feature.",
+ "properties": {
+ "availabilityLifecycle": {
+ "description": "The lifecycle indicator of the feature.",
+ "type": "string",
+ "enum": [
+ "Preview",
+ "GenerallyAvailable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterFeatureAvailabilityLifecycle"
+ },
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The detailed status of the feature.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Provisioning",
+ "Installed"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterFeatureDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message for the detailed status of the feature.",
+ "type": "string",
+ "readOnly": true
+ },
+ "options": {
+ "description": "The configured options for the feature.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringKeyValuePair"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the Kubernetes cluster feature.",
+ "type": "string",
+ "enum": [
+ "Accepted",
+ "Canceled",
+ "Deleting",
+ "Failed",
+ "Succeeded",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterFeatureProvisioningState"
+ },
+ "readOnly": true
+ },
+ "required": {
+ "description": "The indicator of if the feature is required or optional. Optional features may be deleted by the user, while required features are managed with the kubernetes cluster lifecycle.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterFeatureRequired"
+ },
+ "readOnly": true
+ },
+ "version": {
+ "description": "The version of the feature.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "KubernetesClusterList": {
+ "type": "object",
+ "title": "KubernetesClusterList represents a list of Kubernetes clusters.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of additional details related to Kubernetes clusters.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesCluster"
+ }
+ }
+ }
+ },
+ "KubernetesClusterNode": {
+ "type": "object",
+ "title": "KubernetesClusterNode represents the details of a node in a Kubernetes cluster.",
+ "properties": {
+ "agentPoolId": {
+ "description": "The resource ID of the agent pool that this node belongs to. This value is not represented on control plane nodes.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/kubernetesClusters/agentPools"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "availabilityZone": {
+ "description": "The availability zone this node is running within.",
+ "type": "string",
+ "readOnly": true
+ },
+ "bareMetalMachineId": {
+ "description": "The resource ID of the bare metal machine that hosts this node.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "cpuCores": {
+ "description": "The number of CPU cores configured for this node, derived from the VM SKU specified.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The detailed state of this node.",
+ "type": "string",
+ "enum": [
+ "Available",
+ "Error",
+ "Provisioning",
+ "Running",
+ "Scheduling",
+ "Stopped",
+ "Terminating",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterNodeDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "diskSizeGB": {
+ "description": "The size of the disk configured for this node. Allocations are measured in gibibytes.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "image": {
+ "description": "The machine image used to deploy this node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "kubernetesVersion": {
+ "description": "The currently running version of Kubernetes and bundled features running on this node.",
+ "type": "string",
+ "readOnly": true
+ },
+ "labels": {
+ "description": "The list of labels on this node that have been assigned to the agent pool containing this node.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ],
+ "readOnly": true
+ },
+ "memorySizeGB": {
+ "description": "The amount of memory configured for this node, derived from the vm SKU specified. Allocations are measured in gibibytes.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "mode": {
+ "description": "The mode of the agent pool containing this node. Not applicable for control plane nodes.",
+ "type": "string",
+ "enum": [
+ "System",
+ "User",
+ "NotApplicable"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AgentPoolMode"
+ },
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of this node, as realized in the Kubernetes cluster.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkAttachments": {
+ "description": "The NetworkAttachments made to this node.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkAttachment"
+ },
+ "x-ms-identifiers": [
+ "networkAttachmentName"
+ ],
+ "readOnly": true
+ },
+ "powerState": {
+ "description": "The power state of this node.",
+ "type": "string",
+ "enum": [
+ "On",
+ "Off",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesNodePowerState"
+ },
+ "readOnly": true
+ },
+ "role": {
+ "description": "The role of this node in the cluster.",
+ "type": "string",
+ "enum": [
+ "ControlPlane",
+ "Worker"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesNodeRole"
+ },
+ "readOnly": true
+ },
+ "taints": {
+ "description": "The list of taints that have been assigned to the agent pool containing this node.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesLabel"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ],
+ "readOnly": true
+ },
+ "vmSkuName": {
+ "description": "The VM SKU name that was used to create this cluster node.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "KubernetesClusterPatchParameters": {
+ "type": "object",
+ "title": "KubernetesClusterPatchParameters represents the body of the request to patch the Hybrid AKS cluster.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/KubernetesClusterPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "KubernetesClusterPatchProperties": {
+ "type": "object",
+ "title": "KubernetesClusterPatchProperties represents the properties of the Kubernetes cluster that can be patched.",
+ "properties": {
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfigurationPatch",
+ "description": "The configuration of the default administrator credentials."
+ },
+ "controlPlaneNodeConfiguration": {
+ "$ref": "#/definitions/ControlPlaneNodePatchConfiguration",
+ "description": "The defining characteristics of the control plane that can be patched for this Kubernetes cluster."
+ },
+ "kubernetesVersion": {
+ "description": "The Kubernetes version for this cluster.",
+ "type": "string"
+ }
+ }
+ },
+ "KubernetesClusterProperties": {
+ "type": "object",
+ "title": "KubernetesClusterProperties represents the properties of Kubernetes cluster resource.",
+ "required": [
+ "initialAgentPoolConfigurations",
+ "controlPlaneNodeConfiguration",
+ "kubernetesVersion",
+ "networkConfiguration"
+ ],
+ "properties": {
+ "aadConfiguration": {
+ "$ref": "#/definitions/AadConfiguration",
+ "description": "The Azure Active Directory Integration properties.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "administratorConfiguration": {
+ "$ref": "#/definitions/AdministratorConfiguration",
+ "description": "The administrative credentials that will be applied to the control plane and agent pool nodes that do not specify their own values."
+ },
+ "attachedNetworkIds": {
+ "description": "The full list of network resource IDs that are attached to this cluster, including those attached only to specific agent pools.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "availableUpgrades": {
+ "description": "The list of versions that this Kubernetes cluster can be upgraded to.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AvailableUpgrade"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "The resource ID of the Network Cloud cluster.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "connectedClusterId": {
+ "description": "The resource ID of the connected cluster set up when this Kubernetes cluster is created.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Kubernetes/connectedClusters"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "controlPlaneKubernetesVersion": {
+ "description": "The current running version of Kubernetes on the control plane.",
+ "type": "string",
+ "readOnly": true
+ },
+ "controlPlaneNodeConfiguration": {
+ "$ref": "#/definitions/ControlPlaneNodeConfiguration",
+ "description": "The defining characteristics of the control plane for this Kubernetes Cluster."
+ },
+ "detailedStatus": {
+ "description": "The current status of the Kubernetes cluster.",
+ "type": "string",
+ "enum": [
+ "Available",
+ "Error",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "featureStatuses": {
+ "description": "The current feature settings.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FeatureStatus"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ },
+ "initialAgentPoolConfigurations": {
+ "description": "The agent pools that are created with this Kubernetes cluster for running critical system services and workloads. This data in this field is only used during creation, and the field will be empty following the creation of the Kubernetes Cluster. After creation, the management of agent pools is done using the agentPools sub-resource.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/definitions/InitialAgentPoolConfiguration"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "kubernetesVersion": {
+ "description": "The Kubernetes version for this cluster.",
+ "type": "string"
+ },
+ "managedResourceGroupConfiguration": {
+ "$ref": "#/definitions/ManagedResourceGroupConfiguration",
+ "description": "The configuration of the managed resource group associated with the resource."
+ },
+ "networkConfiguration": {
+ "$ref": "#/definitions/NetworkConfiguration",
+ "description": "The configuration of the Kubernetes cluster networking, including the attachment of networks that span the cluster.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "nodes": {
+ "description": "The details of the nodes in this cluster.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/KubernetesClusterNode"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the Kubernetes cluster resource.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Accepted",
+ "InProgress",
+ "Created",
+ "Updating",
+ "Deleting"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesClusterProvisioningState"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "KubernetesClusterRestartNodeParameters": {
+ "type": "object",
+ "title": "KubernetesClusterRestartNodeParameters represents the body of the request to restart the node of a Kubernetes cluster.",
+ "required": [
+ "nodeName"
+ ],
+ "properties": {
+ "nodeName": {
+ "description": "The name of the node to restart.",
+ "type": "string"
+ }
+ }
+ },
+ "KubernetesLabel": {
+ "type": "object",
+ "title": "KubernetesLabel represents a single entry for a Kubernetes label or taint such as those used on a node or pod.",
+ "required": [
+ "key",
+ "value"
+ ],
+ "properties": {
+ "key": {
+ "description": "The name of the label or taint.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "value": {
+ "description": "The value of the label or taint.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "L2Network": {
+ "type": "object",
+ "title": "L2Network represents a network that utilizes a single isolation domain set up for layer-2 resources.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/L2NetworkProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "L2NetworkAttachmentConfiguration": {
+ "type": "object",
+ "title": "L2NetworkAttachmentConfiguration represents the configuration of the attachment of a Layer 2 network.",
+ "required": [
+ "networkId"
+ ],
+ "properties": {
+ "networkId": {
+ "description": "The resource ID of the network that is being configured for attachment.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/l2Networks"
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "pluginType": {
+ "description": "The indicator of how this network will be utilized by the Kubernetes cluster.",
+ "type": "string",
+ "default": "SRIOV",
+ "enum": [
+ "DPDK",
+ "SRIOV",
+ "OSDevice",
+ "MACVLAN",
+ "IPVLAN"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesPluginType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "L2NetworkList": {
+ "type": "object",
+ "title": "L2NetworkList represents a list of L2 networks.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of L2 networks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/L2Network"
+ }
+ }
+ }
+ },
+ "L2NetworkPatchParameters": {
+ "type": "object",
+ "title": "L2NetworkPatchParameters represents the body of the request to patch the L2 network.",
+ "properties": {
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "L2NetworkProperties": {
+ "type": "object",
+ "title": "L2NetworkProperties represents properties of the L2 network.",
+ "required": [
+ "l2IsolationDomainId"
+ ],
+ "properties": {
+ "associatedResourceIds": {
+ "description": "The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "The resource ID of the Network Cloud cluster this L2 network is associated with.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the L2 network.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Available",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "L2NetworkDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "hybridAksClustersAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of Hybrid AKS cluster resource ID(s) that are associated with this L2 network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "hybridAksPluginType": {
+ "description": "Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The network plugin type for Hybrid AKS.",
+ "type": "string",
+ "default": "SRIOV",
+ "enum": [
+ "DPDK",
+ "SRIOV",
+ "OSDevice"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "HybridAksPluginType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "interfaceName": {
+ "description": "The default interface name for this L2 network in the virtual machine. This name can be overridden by the name supplied in the network attachment configuration of that virtual machine.",
+ "type": "string",
+ "maxLength": 12,
+ "pattern": "^[a-zA-Z0-9@._-]*$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "l2IsolationDomainId": {
+ "description": "The resource ID of the Network Fabric l2IsolationDomain.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the L2 network.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "L2NetworkProvisioningState"
+ },
+ "readOnly": true
+ },
+ "virtualMachinesAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of virtual machine resource ID(s), excluding any Hybrid AKS virtual machines, that are currently using this L2 network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "L2ServiceLoadBalancerConfiguration": {
+ "type": "object",
+ "title": "L2ServiceLoadBalancerConfiguration represents the configuration of a layer 2 service load balancer.",
+ "properties": {
+ "ipAddressPools": {
+ "description": "The list of pools of IP addresses that can be allocated to load balancer services.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IpAddressPool"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "L3Network": {
+ "type": "object",
+ "title": "L3Network represents a network that utilizes a single isolation domain set up for layer-3 resources.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/L3NetworkProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "L3NetworkAttachmentConfiguration": {
+ "type": "object",
+ "title": "L3NetworkAttachmentConfiguration represents the configuration of the attachment of a Layer 3 network.",
+ "required": [
+ "networkId"
+ ],
+ "properties": {
+ "ipamEnabled": {
+ "description": "The indication of whether this network will or will not perform IP address management and allocate IP addresses when attached.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "L3NetworkConfigurationIpamEnabled"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "networkId": {
+ "description": "The resource ID of the network that is being configured for attachment.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/l3Networks"
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "pluginType": {
+ "description": "The indicator of how this network will be utilized by the Kubernetes cluster.",
+ "type": "string",
+ "default": "SRIOV",
+ "enum": [
+ "DPDK",
+ "SRIOV",
+ "OSDevice",
+ "MACVLAN",
+ "IPVLAN"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesPluginType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "L3NetworkList": {
+ "type": "object",
+ "title": "L3NetworkList represents a list of L3 networks.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of L3 networks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/L3Network"
+ }
+ }
+ }
+ },
+ "L3NetworkPatchParameters": {
+ "type": "object",
+ "title": "L3NetworkPatchParameters represents the body of the request to patch the cloud services network.",
+ "properties": {
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "L3NetworkProperties": {
+ "type": "object",
+ "title": "L3NetworkProperties represents properties of the L3 network.",
+ "required": [
+ "l3IsolationDomainId",
+ "vlan"
+ ],
+ "properties": {
+ "associatedResourceIds": {
+ "description": "The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "The resource ID of the Network Cloud cluster this L3 network is associated with.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the L3 network.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Available",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "L3NetworkDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "hybridAksClustersAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of Hybrid AKS cluster resource IDs that are associated with this L3 network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "hybridAksIpamEnabled": {
+ "description": "Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The indicator of whether or not to disable IPAM allocation on the network attachment definition injected into the Hybrid AKS Cluster.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "HybridAksIpamEnabled"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "hybridAksPluginType": {
+ "description": "Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The network plugin type for Hybrid AKS.",
+ "type": "string",
+ "default": "SRIOV",
+ "enum": [
+ "DPDK",
+ "SRIOV",
+ "OSDevice"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "HybridAksPluginType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "interfaceName": {
+ "description": "The default interface name for this L3 network in the virtual machine. This name can be overridden by the name supplied in the network attachment configuration of that virtual machine.",
+ "type": "string",
+ "maxLength": 12,
+ "pattern": "^[a-zA-Z0-9@._-]*$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "ipAllocationType": {
+ "description": "The type of the IP address allocation, defaulted to \"DualStack\".",
+ "type": "string",
+ "default": "DualStack",
+ "enum": [
+ "IPV4",
+ "IPV6",
+ "DualStack"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IpAllocationType"
+ }
+ },
+ "ipv4ConnectedPrefix": {
+ "description": "The IPV4 prefix (CIDR) assigned to this L3 network. Required when the IP allocation type\nis IPV4 or DualStack.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "ipv6ConnectedPrefix": {
+ "description": "The IPV6 prefix (CIDR) assigned to this L3 network. Required when the IP allocation type\nis IPV6 or DualStack.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "l3IsolationDomainId": {
+ "description": "The resource ID of the Network Fabric l3IsolationDomain.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the L3 network.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "L3NetworkProvisioningState"
+ },
+ "readOnly": true
+ },
+ "virtualMachinesAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of virtual machine resource IDs, excluding any Hybrid AKS virtual machines, that are currently using this L3 network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "vlan": {
+ "description": "The VLAN from the l3IsolationDomain that is used for this network.",
+ "type": "integer",
+ "format": "int64",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "LldpNeighbor": {
+ "type": "object",
+ "title": "Type Deprecated. Will be removed in an upcoming version. LldpNeighbor represents the details about the device connected to the NIC.",
+ "properties": {
+ "portDescription": {
+ "description": "The descriptive information about the port on the connected device.",
+ "type": "string",
+ "readOnly": true
+ },
+ "portName": {
+ "description": "The system-assigned name of the port on the connected device.",
+ "type": "string",
+ "readOnly": true
+ },
+ "systemDescription": {
+ "description": "The descriptive information about the connected device.",
+ "type": "string",
+ "readOnly": true
+ },
+ "systemName": {
+ "description": "The system-assigned name of the connected device.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "MachineDisk": {
+ "type": "object",
+ "title": "Disk represents the properties of the disk.",
+ "properties": {
+ "capacityGB": {
+ "description": "The maximum amount of storage. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "connection": {
+ "description": "The connection type of the rack SKU resource.",
+ "type": "string",
+ "enum": [
+ "PCIE",
+ "SATA",
+ "RAID",
+ "SAS"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MachineSkuDiskConnectionType"
+ },
+ "readOnly": true
+ },
+ "type": {
+ "description": "The disk type of rack SKU resource.",
+ "type": "string",
+ "enum": [
+ "HDD",
+ "SSD"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DiskType"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "MachineSkuProperties": {
+ "type": "object",
+ "title": "MachineSkuProperties represents the properties of the machine SKU.",
+ "properties": {
+ "bootstrapProtocol": {
+ "description": "The type of bootstrap protocol used.",
+ "type": "string",
+ "enum": [
+ "PXE"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BootstrapProtocol"
+ },
+ "readOnly": true
+ },
+ "cpuCores": {
+ "description": "The count of CPU cores for this machine.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "cpuSockets": {
+ "description": "The count of CPU sockets for this machine.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "disks": {
+ "description": "The list of disks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineDisk"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "generation": {
+ "description": "The generation of the architecture.",
+ "type": "string",
+ "readOnly": true
+ },
+ "hardwareVersion": {
+ "description": "The hardware version of the machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "memoryCapacityGB": {
+ "description": "The maximum amount of memory. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "model": {
+ "description": "The model of the machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkInterfaces": {
+ "description": "The list of network interfaces.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInterface"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "totalThreads": {
+ "description": "The count of SMT and physical core threads for this machine.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "vendor": {
+ "description": "The make of the machine.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "MachineSkuSlot": {
+ "type": "object",
+ "title": "MachineSkuSlot represents a single SKU and rack slot associated with the machine.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MachineSkuProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "rackSlot": {
+ "description": "The position in the rack for the machine.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ }
+ }
+ },
+ "ManagedResourceGroupConfiguration": {
+ "type": "object",
+ "title": "ManagedResourceGroupConfiguration represents the configuration of the resource group managed by Azure.",
+ "properties": {
+ "location": {
+ "description": "The location of the managed resource group. If not specified, the location of the parent resource is chosen.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "name": {
+ "description": "The name for the managed resource group. If not specified, the unique name is automatically generated.",
+ "type": "string",
+ "maxLength": 75,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "NetworkAttachment": {
+ "type": "object",
+ "title": "NetworkAttachment represents the single network attachment.",
+ "required": [
+ "attachedNetworkId",
+ "ipAllocationMethod"
+ ],
+ "properties": {
+ "attachedNetworkId": {
+ "description": "The resource ID of the associated network attached to the virtual machine.\nIt can be one of cloudServicesNetwork, l3Network, l2Network or trunkedNetwork resources.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "defaultGateway": {
+ "description": "The indicator of whether this is the default gateway.\nOnly one of the attached networks (including the CloudServicesNetwork attachment) for a single machine may be specified as True.",
+ "type": "string",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DefaultGateway"
+ }
+ },
+ "ipAllocationMethod": {
+ "description": "The IP allocation mechanism for the virtual machine.\nDynamic and Static are only valid for l3Network which may also specify Disabled.\nOtherwise, Disabled is the only permitted value.",
+ "type": "string",
+ "enum": [
+ "Dynamic",
+ "Static",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineIPAllocationMethod"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "ipv4Address": {
+ "description": "The IPv4 address of the virtual machine.\n\nThis field is used only if the attached network has IPAllocationType of IPV4 or DualStack.\n\nIf IPAllocationMethod is:\nStatic - this field must contain a user specified IPv4 address from within the subnet specified in the attached network.\nDynamic - this field is read-only, but will be populated with an address from within the subnet specified in the attached network.\nDisabled - this field will be empty.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "ipv6Address": {
+ "description": "The IPv6 address of the virtual machine.\n\nThis field is used only if the attached network has IPAllocationType of IPV6 or DualStack.\n\nIf IPAllocationMethod is:\nStatic - this field must contain an IPv6 address range from within the range specified in the attached network.\nDynamic - this field is read-only, but will be populated with an range from within the subnet specified in the attached network.\nDisabled - this field will be empty.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "macAddress": {
+ "description": "The MAC address of the interface for the virtual machine that corresponds to this network attachment.",
+ "type": "string",
+ "readOnly": true
+ },
+ "networkAttachmentName": {
+ "description": "The associated network's interface name.\nIf specified, the network attachment name has a maximum length of 15 characters and must be unique to this virtual machine.\nIf the user doesn’t specify this value, the default interface name of the network resource will be used.\nFor a CloudServicesNetwork resource, this name will be ignored.",
+ "type": "string",
+ "maxLength": 15,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "NetworkConfiguration": {
+ "type": "object",
+ "title": "NetworkConfiguration specifies the Kubernetes cluster network related configuration.",
+ "required": [
+ "cloudServicesNetworkId",
+ "cniNetworkId"
+ ],
+ "properties": {
+ "attachedNetworkConfiguration": {
+ "$ref": "#/definitions/AttachedNetworkConfiguration",
+ "description": "The configuration of networks being attached to the cluster for use by the workloads that run on this Kubernetes cluster.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "bgpServiceLoadBalancerConfiguration": {
+ "$ref": "#/definitions/BgpServiceLoadBalancerConfiguration",
+ "description": "The configuration of the BGP service load balancer for this Kubernetes cluster. A maximum of one service load balancer may be specified, either Layer 2 or BGP.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "cloudServicesNetworkId": {
+ "description": "The resource ID of the associated Cloud Services network.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "cniNetworkId": {
+ "description": "The resource ID of the Layer 3 network that is used for creation of the Container Networking Interface network.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "dnsServiceIp": {
+ "description": "The IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in service CIDR.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "l2ServiceLoadBalancerConfiguration": {
+ "$ref": "#/definitions/L2ServiceLoadBalancerConfiguration",
+ "description": "The configuration of the Layer 2 service load balancer for this Kubernetes cluster. A maximum of one service load balancer may be specified, either Layer 2 or BGP.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "podCidrs": {
+ "description": "The CIDR notation IP ranges from which to assign pod IPs. One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "serviceCidrs": {
+ "description": "The CIDR notation IP ranges from which to assign service IPs. One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "NetworkInterface": {
+ "type": "object",
+ "title": "NetworkInterface represents properties of the network interface.",
+ "properties": {
+ "address": {
+ "description": "The partial address of Peripheral Component Interconnect (PCI).",
+ "type": "string",
+ "readOnly": true
+ },
+ "deviceConnectionType": {
+ "description": "The connection type of the device.",
+ "type": "string",
+ "enum": [
+ "PCI"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DeviceConnectionType"
+ },
+ "readOnly": true
+ },
+ "model": {
+ "description": "The model name of the device.",
+ "type": "string",
+ "readOnly": true
+ },
+ "physicalSlot": {
+ "description": "The physical slot for this device.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "portCount": {
+ "description": "The number of ports on the device.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "portSpeed": {
+ "description": "The maximum amount of data in gigabits that the line card transmits through a port at any given second.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "vendor": {
+ "description": "The vendor name of the device.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Nic": {
+ "type": "object",
+ "title": "Type Deprecated. Will be removed in an upcoming version. Nic represents the network interface card details.",
+ "properties": {
+ "lldpNeighbor": {
+ "$ref": "#/definitions/LldpNeighbor",
+ "description": "The information about the device connected to this NIC.",
+ "readOnly": true
+ },
+ "macAddress": {
+ "description": "The MAC address associated with this NIC.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the NIC/interface.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "NodePoolAdministratorConfigurationPatch": {
+ "type": "object",
+ "title": "NodePoolAdministratorConfigurationPatch represents the patching capabilities for the administrator configuration.",
+ "properties": {
+ "sshPublicKeys": {
+ "description": "SshPublicKey represents the public key used to authenticate with a resource through SSH.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKey"
+ },
+ "x-ms-identifiers": [
+ "keyData"
+ ]
+ }
+ }
+ },
+ "OperationStatusResult": {
+ "type": "object",
+ "title": "The current status of an async operation.",
+ "required": [
+ "status"
+ ],
+ "properties": {
+ "endTime": {
+ "description": "The end time of the operation.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "error": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorDetail",
+ "description": "If present, details of the operation error.",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Fully qualified ID for the async operation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the async operation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "operations": {
+ "description": "The operations list.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OperationStatusResult"
+ },
+ "readOnly": true
+ },
+ "percentComplete": {
+ "description": "Percent of the operation that is complete.",
+ "type": "number",
+ "maximum": 100,
+ "minimum": 0,
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/OperationStatusResultProperties",
+ "description": "The additional properties of the operation status result.",
+ "x-ms-client-flatten": true
+ },
+ "resourceId": {
+ "description": "Fully qualified ID of the resource against which the original async operation was started.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "startTime": {
+ "description": "The start time of the operation.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "status": {
+ "description": "Operation status.",
+ "type": "string"
+ }
+ }
+ },
+ "OperationStatusResultProperties": {
+ "type": "object",
+ "title": "OperationStatusResultProperties represents additional properties of the operation status result.",
+ "properties": {
+ "exitCode": {
+ "description": "For actions that run commands or scripts, the exit code of the script execution.",
+ "type": "string",
+ "readOnly": true
+ },
+ "outputHead": {
+ "description": "For actions that run commands or scripts, the leading bytes of the output of the script execution.",
+ "type": "string",
+ "readOnly": true
+ },
+ "resultRef": {
+ "description": "For actions that run commands or scripts, a reference to the location of the result.",
+ "type": "string",
+ "format": "uri",
+ "readOnly": true
+ },
+ "resultUrl": {
+ "description": "For actions that run commands or scripts, the URL where the full output of the script output can be retrieved.",
+ "type": "string",
+ "format": "uri",
+ "readOnly": true
+ }
+ }
+ },
+ "OsDisk": {
+ "type": "object",
+ "title": "OsDisk represents configuration of the boot disk.",
+ "required": [
+ "diskSizeGB"
+ ],
+ "properties": {
+ "createOption": {
+ "description": "The strategy for creating the OS disk.",
+ "type": "string",
+ "default": "Ephemeral",
+ "enum": [
+ "Ephemeral",
+ "Persistent"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "OsDiskCreateOption",
+ "values": [
+ {
+ "description": "Utilize the local storage of the host machine.",
+ "name": "Ephemeral",
+ "value": "Ephemeral"
+ },
+ {
+ "description": "Utilize a storage appliance backed volume to host the disk.",
+ "name": "Persistent",
+ "value": "Persistent"
+ }
+ ]
+ }
+ },
+ "deleteOption": {
+ "description": "The strategy for deleting the OS disk.",
+ "type": "string",
+ "default": "Delete",
+ "enum": [
+ "Delete"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "OsDiskDeleteOption"
+ }
+ },
+ "diskSizeGB": {
+ "description": "The size of the disk. Required if the createOption is Ephemeral. Allocations are measured in gibibytes.",
+ "type": "integer",
+ "format": "int64"
+ }
+ }
+ },
+ "Rack": {
+ "type": "object",
+ "title": "Rack represents the hardware of the rack and is dependent upon the cluster for lifecycle.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/RackProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "RackDefinition": {
+ "type": "object",
+ "title": "RackDefinition represents details regarding the rack.",
+ "required": [
+ "networkRackId",
+ "rackSkuId",
+ "rackSerialNumber"
+ ],
+ "properties": {
+ "availabilityZone": {
+ "description": "The zone name used for this rack when created. Availability zones are used for workload placement.",
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1,10}$"
+ },
+ "bareMetalMachineConfigurationData": {
+ "description": "The unordered list of bare metal machine configuration.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BareMetalMachineConfigurationData"
+ },
+ "x-ms-identifiers": []
+ },
+ "networkRackId": {
+ "description": "The resource ID of the network rack that matches this rack definition.",
+ "type": "string",
+ "format": "arm-id"
+ },
+ "rackLocation": {
+ "description": "The free-form description of the rack's location.",
+ "type": "string",
+ "maxLength": 256
+ },
+ "rackSerialNumber": {
+ "description": "The unique identifier for the rack within Network Cloud cluster. An alternate unique alphanumeric value other than a serial number may be provided if desired.",
+ "type": "string",
+ "maxLength": 64,
+ "minLength": 1
+ },
+ "rackSkuId": {
+ "description": "The resource ID of the sku for the rack being added.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/rackSkus"
+ }
+ ]
+ }
+ },
+ "storageApplianceConfigurationData": {
+ "description": "The list of storage appliance configuration data for this rack.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageApplianceConfigurationData"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "RackList": {
+ "type": "object",
+ "title": "RackList represents a list of racks.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of racks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Rack"
+ }
+ }
+ }
+ },
+ "RackPatchParameters": {
+ "type": "object",
+ "title": "RackPatchParameters represents the body of the request to patch the rack properties.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RacksPatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "RackProperties": {
+ "type": "object",
+ "title": "RackProperties represents the properties of the rack.",
+ "required": [
+ "rackSkuId",
+ "rackSerialNumber",
+ "availabilityZone",
+ "rackLocation"
+ ],
+ "properties": {
+ "availabilityZone": {
+ "description": "The value that will be used for machines in this rack to represent the availability zones that can be referenced by Hybrid AKS Clusters for node arrangement.",
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1,10}$"
+ },
+ "clusterId": {
+ "description": "The resource ID of the cluster the rack is created for. This value is set when the rack is created by the cluster.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the rack.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Available",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RackDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the rack resource.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RackProvisioningState"
+ },
+ "readOnly": true
+ },
+ "rackLocation": {
+ "description": "The free-form description of the rack location. (e.g. “DTN Datacenter, Floor 3, Isle 9, Rack 2B”)",
+ "type": "string",
+ "maxLength": 256
+ },
+ "rackSerialNumber": {
+ "description": "The unique identifier for the rack within Network Cloud cluster. An alternate unique alphanumeric value other than a serial number may be provided if desired.",
+ "type": "string",
+ "maxLength": 64,
+ "minLength": 1
+ },
+ "rackSkuId": {
+ "description": "The SKU for the rack.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/rackSkus"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "RackSku": {
+ "type": "object",
+ "title": "RackSku represents the SKU information of the rack.",
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RackSkuProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "RackSkuList": {
+ "type": "object",
+ "title": "RackSkuList represents a list of rack SKUs.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of Rack SKUs.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RackSku"
+ }
+ }
+ }
+ },
+ "RackSkuProperties": {
+ "type": "object",
+ "title": "RackSkuProperties represents the properties of compute-related hardware for a rack. This supports both aggregator and compute racks.",
+ "properties": {
+ "computeMachines": {
+ "description": "The list of machine SKUs and associated rack slot for the compute-dedicated machines in this rack model.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineSkuSlot"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "controllerMachines": {
+ "description": "The list of machine SKUs and associated rack slot for the control-plane dedicated machines in this rack model.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineSkuSlot"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "description": {
+ "description": "The free-form text describing the rack.",
+ "type": "string",
+ "readOnly": true
+ },
+ "maxClusterSlots": {
+ "description": "The maximum number of compute racks supported by an aggregator rack. 0 if this is a compute rack or a rack for a single rack cluster(rackType=\"Single\").",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the rack SKU resource.",
+ "type": "string",
+ "enum": [
+ "Canceled",
+ "Failed",
+ "Succeeded"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RackSkuProvisioningState"
+ },
+ "readOnly": true
+ },
+ "rackType": {
+ "description": "The type of the rack.",
+ "type": "string",
+ "enum": [
+ "Aggregator",
+ "Compute",
+ "Single"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RackSkuType"
+ },
+ "readOnly": true
+ },
+ "storageAppliances": {
+ "description": "The list of appliance SKUs and associated rack slot for the storage appliance(s) in this rack model.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageApplianceSkuSlot"
+ },
+ "x-ms-identifiers": [],
+ "readOnly": true
+ },
+ "supportedRackSkuIds": {
+ "description": "The list of supported SKUs if the rack is an aggregator.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "RacksPatchProperties": {
+ "type": "object",
+ "title": "RacksPatchProperties represents the properties of the rack during patching.",
+ "properties": {
+ "rackLocation": {
+ "description": "The free-form description of the rack location. (e.g. “DTN Datacenter, Floor 3, Isle 9, Rack 2B”)",
+ "type": "string",
+ "maxLength": 256
+ },
+ "rackSerialNumber": {
+ "description": "The globally unique identifier for the rack.",
+ "type": "string",
+ "maxLength": 64,
+ "minLength": 1
+ }
+ }
+ },
+ "RuntimeProtectionConfiguration": {
+ "type": "object",
+ "title": "RuntimeProtectionConfiguration represents the runtime protection configuration for the cluster.",
+ "properties": {
+ "enforcementLevel": {
+ "description": "The mode of operation for runtime protection.",
+ "type": "string",
+ "default": "Disabled",
+ "enum": [
+ "Audit",
+ "Disabled",
+ "OnDemand",
+ "Passive",
+ "RealTime"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RuntimeProtectionEnforcementLevel"
+ }
+ }
+ }
+ },
+ "RuntimeProtectionStatus": {
+ "type": "object",
+ "title": "RuntimeProtectionStatus represents the runtime protection status of the bare metal machine.",
+ "properties": {
+ "definitionsLastUpdated": {
+ "description": "The timestamp when the malware definitions were last updated.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "definitionsVersion": {
+ "description": "The version of the malware definitions.",
+ "type": "string",
+ "readOnly": true
+ },
+ "scanCompletedTime": {
+ "description": "The timestamp of the most recently completed scan, or empty if there has never been a scan.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "scanScheduledTime": {
+ "description": "The timestamp of the most recently scheduled scan, or empty if no scan has been scheduled.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "scanStartedTime": {
+ "description": "The timestamp of the most recently started scan, or empty if there has never been a scan.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "SecretArchiveReference": {
+ "type": "object",
+ "title": "SecretArchiveReference represents the reference to a secret in a key vault.",
+ "properties": {
+ "keyVaultId": {
+ "description": "The resource ID of the key vault containing the secret.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "secretName": {
+ "description": "The name of the secret in the key vault.",
+ "type": "string",
+ "readOnly": true
+ },
+ "secretVersion": {
+ "description": "The version of the secret in the key vault.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SecretArchiveSettings": {
+ "type": "object",
+ "title": "SecretArchiveSettings represents the settings for the secret archive used to hold credentials for the cluster.",
+ "properties": {
+ "associatedIdentity": {
+ "$ref": "#/definitions/IdentitySelector",
+ "description": "The selection of the managed identity to use with this vault URI. The identity type must be either system assigned or user assigned."
+ },
+ "vaultUri": {
+ "description": "The URI for the key vault used as the secret archive.",
+ "type": "string",
+ "format": "uri"
+ }
+ }
+ },
+ "SecretRotationStatus": {
+ "type": "object",
+ "title": "SecretRotationStatus represents the status of a secret rotation.",
+ "properties": {
+ "expirePeriodDays": {
+ "description": "The maximum number of days the secret may be used before it must be changed.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "lastRotationTime": {
+ "description": "The date and time when the secret was last changed.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "rotationPeriodDays": {
+ "description": "The number of days a secret exists before rotations will be attempted.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "secretArchiveReference": {
+ "$ref": "#/definitions/SecretArchiveReference",
+ "description": "The reference to the secret in a key vault.",
+ "readOnly": true
+ },
+ "secretType": {
+ "description": "The type name used to identify the purpose of the secret.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ServiceLoadBalancerBgpPeer": {
+ "type": "object",
+ "title": "ServiceLoadBalancerBgpPeer represents the configuration of the BGP service load balancer for the Kubernetes cluster.",
+ "required": [
+ "name",
+ "peerAddress",
+ "peerAsn"
+ ],
+ "properties": {
+ "bfdEnabled": {
+ "description": "The indicator of BFD enablement for this BgpPeer.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BfdEnabled"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "bgpMultiHop": {
+ "description": "The indicator to enable multi-hop peering support.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BgpMultiHop"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "holdTime": {
+ "description": "Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The requested BGP hold time value. This field uses ISO 8601 duration format, for example P1H.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "keepAliveTime": {
+ "description": "Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The requested BGP keepalive time value. This field uses ISO 8601 duration format, for example P1H.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "myAsn": {
+ "description": "The autonomous system number used for the local end of the BGP session.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 4294967295,
+ "minimum": 0,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "name": {
+ "description": "The name used to identify this BGP peer for association with a BGP advertisement.",
+ "type": "string",
+ "pattern": "^[a-z0-9]([a-z0-9.-]{0,61}[a-z0-9]){0,1}$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "password": {
+ "description": "The authentication password for routers enforcing TCP MD5 authenticated sessions.",
+ "type": "string",
+ "maxLength": 80,
+ "pattern": "^[a-zA-Z0-9]{0,80}$",
+ "x-ms-mutability": [
+ "create"
+ ],
+ "x-ms-secret": true
+ },
+ "peerAddress": {
+ "description": "The IPv4 or IPv6 address used to connect this BGP session.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "peerAsn": {
+ "description": "The autonomous system number expected from the remote end of the BGP session.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 4294967295,
+ "minimum": 0,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "peerPort": {
+ "description": "The port used to connect this BGP session.",
+ "type": "integer",
+ "format": "int64",
+ "default": 179,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "ServicePrincipalInformation": {
+ "type": "object",
+ "title": "ServicePrincipalInformation represents the details of the service principal to be used by the cluster during Arc Appliance installation.",
+ "required": [
+ "tenantId",
+ "principalId",
+ "applicationId",
+ "password"
+ ],
+ "properties": {
+ "applicationId": {
+ "description": "The application ID, also known as client ID, of the service principal.",
+ "type": "string"
+ },
+ "password": {
+ "description": "The password of the service principal.",
+ "type": "string",
+ "x-ms-secret": true
+ },
+ "principalId": {
+ "description": "The principal ID, also known as the object ID, of the service principal.",
+ "type": "string"
+ },
+ "tenantId": {
+ "description": "The tenant ID, also known as the directory ID, of the tenant in which the service principal is created.",
+ "type": "string"
+ }
+ }
+ },
+ "SshPublicKey": {
+ "type": "object",
+ "title": "SshPublicKey represents the public key used to authenticate with a resource through SSH.",
+ "required": [
+ "keyData"
+ ],
+ "properties": {
+ "keyData": {
+ "description": "The SSH public key data.",
+ "type": "string",
+ "minLength": 1
+ }
+ }
+ },
+ "StorageAppliance": {
+ "type": "object",
+ "title": "StorageAppliance represents on-premises Network Cloud storage appliance.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/StorageApplianceProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "StorageApplianceConfigurationData": {
+ "type": "object",
+ "title": "StorageApplianceConfigurationData represents configuration for the storage application.",
+ "required": [
+ "rackSlot",
+ "adminCredentials",
+ "serialNumber"
+ ],
+ "properties": {
+ "adminCredentials": {
+ "$ref": "#/definitions/AdministrativeCredentials",
+ "description": "The credentials of the administrative interface on this storage appliance. The password field is expected to be an Azure Key Vault key URL. Until the cluster is converted to utilize managed identity by setting the secret archive settings, the actual password value should be provided instead."
+ },
+ "rackSlot": {
+ "description": "The slot that storage appliance is in the rack based on the BOM configuration.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 256,
+ "minimum": 1
+ },
+ "serialNumber": {
+ "description": "The serial number of the appliance.",
+ "type": "string"
+ },
+ "storageApplianceName": {
+ "description": "The user-provided name for the storage appliance that will be created from this specification.",
+ "type": "string",
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$"
+ }
+ }
+ },
+ "StorageApplianceEnableRemoteVendorManagementParameters": {
+ "type": "object",
+ "title": "StorageApplianceEnableRemoteVendorManagementParameters represents the body of the request to enable remote vendor management of a storage appliance.",
+ "properties": {
+ "supportEndpoints": {
+ "description": "Field Deprecated. This field is not used and will be rejected if provided. The list of IPv4 subnets (in CIDR format), IPv6 subnets (in CIDR format), or hostnames that the storage appliance needs accessible in order to turn on the remote vendor management.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "StorageApplianceList": {
+ "type": "object",
+ "title": "StorageApplianceList represents a list of storage appliances.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of storage appliances.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAppliance"
+ }
+ }
+ }
+ },
+ "StorageAppliancePatchParameters": {
+ "type": "object",
+ "title": "StorageAppliancePatchParameters represents the body of the request to patch storage appliance properties.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/StorageAppliancePatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "StorageAppliancePatchProperties": {
+ "type": "object",
+ "title": "StorageAppliancePatchProperties represents the properties of the storage appliance that can be patched.",
+ "properties": {
+ "serialNumber": {
+ "description": "The serial number for the storage appliance.",
+ "type": "string"
+ }
+ }
+ },
+ "StorageApplianceProperties": {
+ "type": "object",
+ "title": "StorageApplianceProperties represents the properties of the storage appliance.",
+ "required": [
+ "rackId",
+ "storageApplianceSkuId",
+ "rackSlot",
+ "serialNumber",
+ "administratorCredentials"
+ ],
+ "properties": {
+ "administratorCredentials": {
+ "$ref": "#/definitions/AdministrativeCredentials",
+ "description": "The credentials of the administrative interface on this storage appliance.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "capacity": {
+ "description": "The total capacity of the storage appliance. Measured in GiB.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "capacityUsed": {
+ "description": "The amount of storage consumed.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "The resource ID of the cluster this storage appliance is associated with. Measured in GiB.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The detailed status of the storage appliance.",
+ "type": "string",
+ "enum": [
+ "Available",
+ "Degraded",
+ "Error",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "StorageApplianceDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "managementIpv4Address": {
+ "description": "The endpoint for the management interface of the storage appliance.",
+ "type": "string",
+ "readOnly": true
+ },
+ "manufacturer": {
+ "description": "The manufacturer of the storage appliance.",
+ "type": "string",
+ "readOnly": true
+ },
+ "model": {
+ "description": "The model of the storage appliance.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the storage appliance.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "StorageApplianceProvisioningState"
+ },
+ "readOnly": true
+ },
+ "rackId": {
+ "description": "The resource ID of the rack where this storage appliance resides.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "rackSlot": {
+ "description": "The slot the storage appliance is in the rack based on the BOM configuration.",
+ "type": "integer",
+ "format": "int64",
+ "maximum": 256,
+ "minimum": 1,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "remoteVendorManagementFeature": {
+ "description": "The indicator of whether the storage appliance supports remote vendor management.",
+ "type": "string",
+ "enum": [
+ "Supported",
+ "Unsupported"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RemoteVendorManagementFeature"
+ },
+ "readOnly": true
+ },
+ "remoteVendorManagementStatus": {
+ "description": "The indicator of whether the remote vendor management feature is enabled or disabled, or unsupported if it is an unsupported feature.",
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled",
+ "Unsupported"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RemoteVendorManagementStatus"
+ },
+ "readOnly": true
+ },
+ "secretRotationStatus": {
+ "description": "The list of statuses that represent secret rotation activity.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SecretRotationStatus"
+ },
+ "x-ms-identifiers": [
+ "secretType"
+ ],
+ "readOnly": true
+ },
+ "serialNumber": {
+ "description": "The serial number for the storage appliance.",
+ "type": "string"
+ },
+ "storageApplianceSkuId": {
+ "description": "The SKU for the storage appliance.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "version": {
+ "description": "The version of the storage appliance.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageApplianceSkuProperties": {
+ "type": "object",
+ "title": "StorageApplianceSkuProperties represents the properties of the storage appliance SKU.",
+ "properties": {
+ "capacityGB": {
+ "description": "The maximum capacity of the storage appliance. Measured in gibibytes.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ },
+ "model": {
+ "description": "The model of the storage appliance.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageApplianceSkuSlot": {
+ "type": "object",
+ "title": "StorageApplianceSkuSlot represents the single SKU and rack slot associated with the storage appliance.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/StorageApplianceSkuProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "rackSlot": {
+ "description": "The position in the rack for the storage appliance.",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ }
+ }
+ },
+ "StorageProfile": {
+ "type": "object",
+ "title": "StorageProfile represents information about a disk.",
+ "required": [
+ "osDisk"
+ ],
+ "properties": {
+ "osDisk": {
+ "$ref": "#/definitions/OsDisk",
+ "description": "The disk to use with this virtual machine."
+ },
+ "volumeAttachments": {
+ "description": "The resource IDs of volumes that are requested to be attached to the virtual machine.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "StringKeyValuePair": {
+ "type": "object",
+ "title": "StringKeyValuePair represents a single entry in a mapping of keys to values.",
+ "required": [
+ "key",
+ "value"
+ ],
+ "properties": {
+ "key": {
+ "description": "The key to the mapped value.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "value": {
+ "description": "The value of the mapping key.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "TagsParameter": {
+ "type": "object",
+ "title": "TagsParameter represents the resource tags.",
+ "properties": {
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "TrunkedNetwork": {
+ "type": "object",
+ "title": "TrunkedNetwork represents a network that utilizes multiple isolation domains and specified VLANs to create a trunked network.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/TrunkedNetworkProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "TrunkedNetworkAttachmentConfiguration": {
+ "type": "object",
+ "title": "TrunkedNetworkAttachmentConfiguration represents the configuration of the attachment of a trunked network.",
+ "required": [
+ "networkId"
+ ],
+ "properties": {
+ "networkId": {
+ "description": "The resource ID of the network that is being configured for attachment.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.NetworkCloud/trunkedNetworks"
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "pluginType": {
+ "description": "The indicator of how this network will be utilized by the Kubernetes cluster.",
+ "type": "string",
+ "default": "SRIOV",
+ "enum": [
+ "DPDK",
+ "SRIOV",
+ "OSDevice",
+ "MACVLAN",
+ "IPVLAN"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KubernetesPluginType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "TrunkedNetworkList": {
+ "type": "object",
+ "title": "TrunkedNetworkList represents a list of trunked networks.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of trunked networks.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TrunkedNetwork"
+ }
+ }
+ }
+ },
+ "TrunkedNetworkPatchParameters": {
+ "type": "object",
+ "title": "TrunkedNetworkPatchParameters represents the body of the request to patch the Trunked network.",
+ "properties": {
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "TrunkedNetworkProperties": {
+ "type": "object",
+ "title": "TrunkedNetworkProperties represents properties of the trunked network.",
+ "required": [
+ "isolationDomainIds",
+ "vlans"
+ ],
+ "properties": {
+ "associatedResourceIds": {
+ "description": "The list of resource IDs for the other Microsoft.NetworkCloud resources that have attached this network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "clusterId": {
+ "description": "The resource ID of the Network Cloud cluster this trunked network is associated with.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the trunked network.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Available",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TrunkedNetworkDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "hybridAksClustersAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of Hybrid AKS cluster resource IDs that are associated with this trunked network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "hybridAksPluginType": {
+ "description": "Field Deprecated. The field was previously optional, now it will have no defined behavior and will be ignored. The network plugin type for Hybrid AKS.",
+ "type": "string",
+ "default": "SRIOV",
+ "enum": [
+ "DPDK",
+ "SRIOV",
+ "OSDevice"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "HybridAksPluginType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "interfaceName": {
+ "description": "The default interface name for this trunked network in the virtual machine. This name can be overridden by the name supplied in the network attachment configuration of that virtual machine.",
+ "type": "string",
+ "maxLength": 12,
+ "pattern": "^[a-zA-Z0-9@._-]*$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "isolationDomainIds": {
+ "description": "The list of resource IDs representing the Network Fabric isolation domains. It can be any combination of l2IsolationDomain and l3IsolationDomain resources.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the trunked network.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TrunkedNetworkProvisioningState"
+ },
+ "readOnly": true
+ },
+ "virtualMachinesAssociatedIds": {
+ "description": "Field Deprecated. These fields will be empty/omitted. The list of virtual machine resource IDs, excluding any Hybrid AKS virtual machines, that are currently using this trunked network.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "vlans": {
+ "description": "The list of vlans that are selected from the isolation domains for trunking.",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "type": "integer",
+ "format": "int64"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "ValidationThreshold": {
+ "type": "object",
+ "title": "ValidationThreshold indicates allowed machine and node hardware and deployment failures.",
+ "required": [
+ "type",
+ "grouping",
+ "value"
+ ],
+ "properties": {
+ "grouping": {
+ "description": "Selection of how the type evaluation is applied to the cluster calculation.",
+ "type": "string",
+ "enum": [
+ "PerCluster",
+ "PerRack"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ValidationThresholdGrouping"
+ }
+ },
+ "type": {
+ "description": "Selection of how the threshold should be evaluated.",
+ "type": "string",
+ "enum": [
+ "CountSuccess",
+ "PercentSuccess"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ValidationThresholdType"
+ }
+ },
+ "value": {
+ "description": "The numeric threshold value.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 0
+ }
+ }
+ },
+ "VirtualMachine": {
+ "type": "object",
+ "title": "VirtualMachine represents the on-premises Network Cloud virtual machine.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/VirtualMachineProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "VirtualMachineList": {
+ "type": "object",
+ "title": "VirtualMachineList represents a list of virtual machines.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of virtual machines.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachine"
+ }
+ }
+ }
+ },
+ "VirtualMachinePatchParameters": {
+ "type": "object",
+ "title": "VirtualMachinePatchParameters represents the body of the request to patch the virtual machine.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/VirtualMachinePatchProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ },
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "VirtualMachinePatchProperties": {
+ "type": "object",
+ "title": "VirtualMachinePatchProperties represents the properties of the virtual machine that can be patched.",
+ "properties": {
+ "vmImageRepositoryCredentials": {
+ "$ref": "#/definitions/ImageRepositoryCredentials",
+ "description": "The credentials used to login to the image repository that has access to the specified image."
+ }
+ }
+ },
+ "VirtualMachinePlacementHint": {
+ "type": "object",
+ "title": "VirtualMachinePlacementHint represents a single scheduling hint of the virtual machine.",
+ "required": [
+ "hintType",
+ "schedulingExecution",
+ "resourceId",
+ "scope"
+ ],
+ "properties": {
+ "hintType": {
+ "description": "The specification of whether this hint supports affinity or anti-affinity with the referenced resources.",
+ "type": "string",
+ "enum": [
+ "Affinity",
+ "AntiAffinity"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachinePlacementHintType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "resourceId": {
+ "description": "The resource ID of the target object that the placement hints will be checked against, e.g., the bare metal node to host the virtual machine.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "schedulingExecution": {
+ "description": "The indicator of whether the hint is a hard or soft requirement during scheduling.",
+ "type": "string",
+ "enum": [
+ "Hard",
+ "Soft"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineSchedulingExecution"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "scope": {
+ "description": "The scope for the virtual machine affinity or anti-affinity placement hint. It should always be \"Machine\" in the case of node affinity.",
+ "type": "string",
+ "enum": [
+ "Rack",
+ "Machine"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachinePlacementHintPodAffinityScope"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "VirtualMachinePowerOffParameters": {
+ "type": "object",
+ "title": "VirtualMachinePowerOffParameters represents the body of the request to power off virtual machine.",
+ "properties": {
+ "skipShutdown": {
+ "description": "The indicator of whether to skip the graceful OS shutdown and power off the virtual machine immediately.",
+ "type": "string",
+ "default": "False",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SkipShutdown"
+ }
+ }
+ }
+ },
+ "VirtualMachineProperties": {
+ "type": "object",
+ "title": "VirtualMachineProperties represents the properties of the virtual machine.",
+ "required": [
+ "vmImage",
+ "cpuCores",
+ "memorySizeGB",
+ "storageProfile",
+ "cloudServicesNetworkAttachment",
+ "adminUsername"
+ ],
+ "properties": {
+ "adminUsername": {
+ "description": "The name of the administrator to which the ssh public keys will be added into the authorized keys.",
+ "type": "string",
+ "maxLength": 32,
+ "minLength": 1,
+ "pattern": "^[a-z_][a-z0-9_]{0,31}$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "availabilityZone": {
+ "description": "The cluster availability zone containing this virtual machine.",
+ "type": "string",
+ "readOnly": true
+ },
+ "bareMetalMachineId": {
+ "description": "The resource ID of the bare metal machine that hosts the virtual machine.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "bootMethod": {
+ "description": "Selects the boot method for the virtual machine.",
+ "type": "string",
+ "default": "UEFI",
+ "enum": [
+ "UEFI",
+ "BIOS"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineBootMethod"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "cloudServicesNetworkAttachment": {
+ "$ref": "#/definitions/NetworkAttachment",
+ "description": "The cloud service network that provides platform-level services for the virtual machine.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "clusterId": {
+ "description": "The resource ID of the cluster the virtual machine is created for.",
+ "type": "string",
+ "format": "arm-id",
+ "readOnly": true
+ },
+ "consoleExtendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location to use for creation of a VM console resource."
+ },
+ "cpuCores": {
+ "description": "The number of CPU cores in the virtual machine.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 2,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the virtual machine.",
+ "type": "string",
+ "enum": [
+ "Available",
+ "Error",
+ "Provisioning",
+ "Running",
+ "Scheduling",
+ "Stopped",
+ "Terminating",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isolateEmulatorThread": {
+ "description": "Field Deprecated, the value will be ignored if provided. The indicator of whether one of the specified CPU cores is isolated to run the emulator thread for this virtual machine.",
+ "type": "string",
+ "default": "True",
+ "enum": [
+ "True",
+ "False"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineIsolateEmulatorThread"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "memorySizeGB": {
+ "description": "The memory size of the virtual machine. Allocations are measured in gibibytes.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 1,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "networkAttachments": {
+ "description": "The list of network attachments to the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkAttachment"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "networkData": {
+ "description": "The Base64 encoded cloud-init network data.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "placementHints": {
+ "description": "The scheduling hints for the virtual machine.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualMachinePlacementHint"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "powerState": {
+ "description": "The power state of the virtual machine.",
+ "type": "string",
+ "enum": [
+ "On",
+ "Off",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachinePowerState"
+ },
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the virtual machine.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineProvisioningState"
+ },
+ "readOnly": true
+ },
+ "sshPublicKeys": {
+ "description": "The list of ssh public keys. Each key will be added to the virtual machine using the cloud-init ssh_authorized_keys mechanism for the adminUsername.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SshPublicKey"
+ },
+ "x-ms-identifiers": [],
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "storageProfile": {
+ "$ref": "#/definitions/StorageProfile",
+ "description": "The storage profile that specifies size and other parameters about the disks related to the virtual machine.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "userData": {
+ "description": "The Base64 encoded cloud-init user data.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "virtioInterface": {
+ "description": "Field Deprecated, use virtualizationModel instead. The type of the virtio interface.",
+ "type": "string",
+ "default": "Modern",
+ "enum": [
+ "Modern",
+ "Transitional"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineVirtioInterfaceType"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "vmDeviceModel": {
+ "description": "The type of the device model to use.",
+ "type": "string",
+ "default": "T2",
+ "enum": [
+ "T1",
+ "T2",
+ "T3"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VirtualMachineDeviceModelType",
+ "values": [
+ {
+ "description": "Traditional and most compatible device virtualization interface.",
+ "name": "T1",
+ "value": "T1"
+ },
+ {
+ "description": "Modern and enhanced device virtualization interface.",
+ "name": "T2",
+ "value": "T2"
+ },
+ {
+ "description": "Improved security and functionality (including TPM and secure boot support).",
+ "name": "T3",
+ "value": "T3"
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "vmImage": {
+ "description": "The virtual machine image that is currently provisioned to the OS disk, using the full url and tag notation used to pull the image.",
+ "type": "string",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "vmImageRepositoryCredentials": {
+ "$ref": "#/definitions/ImageRepositoryCredentials",
+ "description": "The credentials used to login to the image repository that has access to the specified image."
+ },
+ "volumes": {
+ "description": "The resource IDs of volumes that are attached to the virtual machine.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "Volume": {
+ "type": "object",
+ "title": "Volume represents storage made available for use by resources running on the cluster.",
+ "required": [
+ "extendedLocation",
+ "properties"
+ ],
+ "properties": {
+ "extendedLocation": {
+ "$ref": "#/definitions/ExtendedLocation",
+ "description": "The extended location of the cluster associated with the resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/VolumeProperties",
+ "description": "The list of the resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "x-ms-azure-resource": true
+ },
+ "VolumeList": {
+ "type": "object",
+ "title": "VolumeList represents a list of volumes.",
+ "properties": {
+ "nextLink": {
+ "description": "The link used to get the next page of operations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of volumes.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ }
+ }
+ }
+ },
+ "VolumePatchParameters": {
+ "type": "object",
+ "title": "VolumePatchParameters represents the body of the request to patch the volume resource.",
+ "properties": {
+ "tags": {
+ "description": "The Azure resource tags that will replace the existing ones.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "VolumeProperties": {
+ "type": "object",
+ "title": "VolumeProperties represents properties of the volume resource.",
+ "required": [
+ "sizeMiB"
+ ],
+ "properties": {
+ "attachedTo": {
+ "description": "The list of resource IDs that attach the volume. It may include virtual machines and Hybrid AKS clusters.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "detailedStatus": {
+ "description": "The more detailed status of the volume.",
+ "type": "string",
+ "enum": [
+ "Error",
+ "Active",
+ "Provisioning"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VolumeDetailedStatus"
+ },
+ "readOnly": true
+ },
+ "detailedStatusMessage": {
+ "description": "The descriptive message about the current detailed status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "description": "The provisioning state of the volume.",
+ "type": "string",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Provisioning",
+ "Accepted"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VolumeProvisioningState"
+ },
+ "readOnly": true
+ },
+ "serialNumber": {
+ "description": "The unique identifier of the volume.",
+ "type": "string",
+ "readOnly": true
+ },
+ "sizeMiB": {
+ "description": "The size of the allocation for this volume in Mebibytes.",
+ "type": "integer",
+ "format": "int64",
+ "minimum": 1,
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ }
+ }
+ },
+ "VulnerabilityScanningSettings": {
+ "type": "object",
+ "title": "VulnerabilityScanningSettings represents the settings for how security vulnerability scanning is applied to the cluster.",
+ "properties": {
+ "containerScan": {
+ "description": "The mode selection for container vulnerability scanning.",
+ "type": "string",
+ "default": "Enabled",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VulnerabilityScanningSettingsContainerScan"
+ }
+ }
+ }
+ },
+ "VulnerabilityScanningSettingsPatch": {
+ "type": "object",
+ "title": "VulnerabilityScanningSettingsPatch represents the settings for how security vulnerability scanning is applied to the cluster.",
+ "properties": {
+ "containerScan": {
+ "description": "The mode selection for container vulnerability scanning.",
+ "type": "string",
+ "enum": [
+ "Disabled",
+ "Enabled"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "VulnerabilityScanningSettingsContainerScan"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "AgentPoolNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the Kubernetes cluster agent pool.",
+ "name": "agentPoolName",
+ "in": "path",
+ "required": true
+ },
+ "BareMetalMachineKeySetNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the bare metal machine key set.",
+ "name": "bareMetalMachineKeySetName",
+ "in": "path",
+ "required": true
+ },
+ "BareMetalMachineNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the bare metal machine.",
+ "name": "bareMetalMachineName",
+ "in": "path",
+ "required": true
+ },
+ "BmcKeySetNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the baseboard management controller key set.",
+ "name": "bmcKeySetName",
+ "in": "path",
+ "required": true
+ },
+ "CloudServicesNetworkNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the cloud services network.",
+ "name": "cloudServicesNetworkName",
+ "in": "path",
+ "required": true
+ },
+ "ClusterManagerNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the cluster manager.",
+ "name": "clusterManagerName",
+ "in": "path",
+ "required": true
+ },
+ "ClusterNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the cluster.",
+ "name": "clusterName",
+ "in": "path",
+ "required": true
+ },
+ "ConsoleNameParameter": {
+ "pattern": "^default$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the virtual machine console.",
+ "name": "consoleName",
+ "in": "path",
+ "required": true
+ },
+ "FeatureNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the feature.",
+ "name": "featureName",
+ "in": "path",
+ "required": true
+ },
+ "KubernetesClusterNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the Kubernetes cluster.",
+ "name": "kubernetesClusterName",
+ "in": "path",
+ "required": true
+ },
+ "L2NetworkNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the L2 network.",
+ "name": "l2NetworkName",
+ "in": "path",
+ "required": true
+ },
+ "L3NetworkNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the L3 network.",
+ "name": "l3NetworkName",
+ "in": "path",
+ "required": true
+ },
+ "MetricsConfigurationName": {
+ "pattern": "^default$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the metrics configuration for the cluster.",
+ "name": "metricsConfigurationName",
+ "in": "path",
+ "required": true
+ },
+ "RackNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the rack.",
+ "name": "rackName",
+ "in": "path",
+ "required": true
+ },
+ "RackSkuNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,126}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the rack SKU.",
+ "name": "rackSkuName",
+ "in": "path",
+ "required": true
+ },
+ "StorageApplianceNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the storage appliance.",
+ "name": "storageApplianceName",
+ "in": "path",
+ "required": true
+ },
+ "TrunkedNetworkNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,28}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the trunked network.",
+ "name": "trunkedNetworkName",
+ "in": "path",
+ "required": true
+ },
+ "VirtualMachineNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9]{0,62}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the virtual machine.",
+ "name": "virtualMachineName",
+ "in": "path",
+ "required": true
+ },
+ "VolumeNameParameter": {
+ "pattern": "^([a-zA-Z0-9][a-zA-Z0-9-_]{0,62}[a-zA-Z0-9])$",
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "description": "The name of the volume.",
+ "name": "volumeName",
+ "in": "path",
+ "required": true
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "description": "Azure Active Directory OAuth2 Flow.",
+ "type": "oauth2",
+ "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/networkcloud/resource-manager/readme.md b/specification/networkcloud/resource-manager/readme.md
index 86e8e34518de..981577b072b6 100644
--- a/specification/networkcloud/resource-manager/readme.md
+++ b/specification/networkcloud/resource-manager/readme.md
@@ -27,7 +27,7 @@ These are the global settings for NetworkCloud.
```yaml
openapi-type: arm
openapi-subtype: providerHub
-tag: package-2024-07-01
+tag: package-2024-10-01-preview
```
---
@@ -100,6 +100,28 @@ suppressions:
reason: Bug in Linter, see https://github.com/Azure/azure-openapi-validator/issues/722
```
+### Tag: package-2024-10-01-preview
+
+These settings apply only when `--tag=package-2024-10-01-preview` is specified on the command line.
+
+```yaml $(tag) == 'package-2024-10-01-preview'
+input-file:
+ - Microsoft.NetworkCloud/preview/2024-10-01-preview/networkcloud.json
+suppressions:
+ - code: PatchBodyParametersSchema
+ from: networkcloud.json
+ reason: False positive based on Azure common types. Managed Service Identity requires type, and the Managed Service Identity can be patched.
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}"].patch.parameters[4].schema.properties.identity
+ - code: PatchBodyParametersSchema
+ from: networkcloud.json
+ reason: False positive based on Azure common types. Managed Service Identity requires type, and the Managed Service Identity can be patched.
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusterManagers/{clusterManagerName}"].patch.parameters[4].schema.properties.identity
+ - code: PatchBodyParametersSchema
+ from: networkcloud.json
+ reason: Nested objects that share a structure with PUT have required fields. The required field is present in the patch structure as well, because it reuses types. The nested structure needs to be updated in full by the user.
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetworkCloud/clusters/{clusterName}"].patch.parameters[4].schema.properties.properties
+```
+
---
# Code Generation
From 5d00a401194c5c63861536c3627edf9aa2ad0efb Mon Sep 17 00:00:00 2001
From: jingyizhu99 <83610845+jingyizhu99@users.noreply.github.com>
Date: Mon, 6 Jan 2025 10:01:28 -0800
Subject: [PATCH 052/128] Bugfix 2024-oct-preview Quota apis (#31954)
* add list available quota and locations in url
* add AvailableQuotaArmPaginatedResult
* add path param
* add locations in example
---
.../examples/PTUQuota/getAvailable.json | 1 +
.../examples/PTUQuota/list.json | 1 +
.../examples/PTUQuota/listAvailable.json | 23 +++++
.../preview/2024-10-01-preview/mfe.json | 85 ++++++++++++++++++-
4 files changed, 108 insertions(+), 2 deletions(-)
create mode 100644 specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json
diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json
index 342bc3bbef8d..9c783cd76ec6 100644
--- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json
+++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/getAvailable.json
@@ -1,6 +1,7 @@
{
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "location": "location",
"api-version": "2024-10-01-preview"
},
"responses": {
diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json
index c357e8ff1af1..a579ddc67189 100644
--- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json
+++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/list.json
@@ -1,6 +1,7 @@
{
"parameters": {
"subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "location": "location",
"api-version": "2024-10-01-preview",
"$skipToken": "string"
},
diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json
new file mode 100644
index 000000000000..004b0e2b77a0
--- /dev/null
+++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/examples/PTUQuota/listAvailable.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-1111-2222-3333-444444444444",
+ "location": "location",
+ "api-version": "2024-10-01-preview",
+ "$skipToken": "string"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "total": 1
+ }
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json
index 88ca9b0ce76f..81552c4e230a 100644
--- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json
+++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2024-10-01-preview/mfe.json
@@ -9,7 +9,58 @@
"https"
],
"paths": {
- "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/availableQuota/default": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/availableQuota": {
+ "get": {
+ "tags": [
+ "Quota"
+ ],
+ "summary": "List available MaaS PTU quota.",
+ "operationId": "PTUQuota_ListAvailable",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "in": "path",
+ "name": "location",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "machineLearningServices.json#/parameters/PaginationParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ },
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/AvailableQuotaArmPaginatedResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List available MaaS PTU quota.": {
+ "$ref": "./examples/PTUQuota/listAvailable.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/availableQuota/default": {
"get": {
"tags": [
"Quota"
@@ -23,6 +74,12 @@
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
},
+ {
+ "in": "path",
+ "name": "location",
+ "required": true,
+ "type": "string"
+ },
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
}
@@ -48,7 +105,7 @@
}
}
},
- "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/quotaAndUsage": {
+ "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/quotaAndUsage": {
"get": {
"tags": [
"Quota"
@@ -62,6 +119,12 @@
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
},
+ {
+ "in": "path",
+ "name": "location",
+ "required": true,
+ "type": "string"
+ },
{
"$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
},
@@ -14315,6 +14378,24 @@
},
"additionalProperties": false
},
+ "AvailableQuotaArmPaginatedResult": {
+ "description": "A paginated list of AvailableQuota entities.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "The link to the next page of AvailableQuota objects. If null, there are no additional pages.",
+ "type": "string"
+ },
+ "value": {
+ "description": "An array of objects of type AvailableQuota.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AvailableQuota"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
"AvailableQuotaProperties": {
"type": "object",
"properties": {
From 8c3c4b85fe150d084262870e83bb7df23d01873b Mon Sep 17 00:00:00 2001
From: Rajarshi Sarkar <73562869+sarkar-rajarshi@users.noreply.github.com>
Date: Mon, 6 Jan 2025 11:35:25 -0800
Subject: [PATCH 053/128] add aad auth support to acs job router (#31952)
---
.../Communication.JobRouter/README.md | 6 ++++++
.../Communication.JobRouter/main.tsp | 5 ++++-
.../communicationservicejobrouter.json | 19 +++++++++++++++++++
.../communicationservicejobrouter.json | 19 +++++++++++++++++++
4 files changed, 48 insertions(+), 1 deletion(-)
diff --git a/specification/communication/Communication.JobRouter/README.md b/specification/communication/Communication.JobRouter/README.md
index 7f3eede87c66..bf2b3a582ddf 100644
--- a/specification/communication/Communication.JobRouter/README.md
+++ b/specification/communication/Communication.JobRouter/README.md
@@ -19,6 +19,12 @@ The TypeSpec and generated API specification for the Azure Communication Job Rou
vsts-npm-auth -config .npmrc
```
+ Update existing packages
+
+ ```console
+ npm update --force
+ ```
+
3. Install TypeSpec compiler and libraries:
```console
diff --git a/specification/communication/Communication.JobRouter/main.tsp b/specification/communication/Communication.JobRouter/main.tsp
index 75a08f1fb037..b67219e184b8 100644
--- a/specification/communication/Communication.JobRouter/main.tsp
+++ b/specification/communication/Communication.JobRouter/main.tsp
@@ -4,13 +4,16 @@
import "@typespec/rest";
import "@typespec/http";
import "@typespec/versioning";
+import "@azure-tools/typespec-azure-core";
import "./routes.tsp";
using TypeSpec.Rest;
using TypeSpec.Http;
using TypeSpec.Versioning;
+using Azure.Core;
+using Azure.Core.Traits;
-#suppress "@azure-tools/typespec-azure-core/auth-required" "!!FIXME!!"
+@useAuth(AadOauth2Auth<["https://communication.azure.com/.default"]>)
@service({
title: "Azure Communication Routing Service",
})
diff --git a/specification/communication/data-plane/JobRouter/preview/2024-01-18-preview/communicationservicejobrouter.json b/specification/communication/data-plane/JobRouter/preview/2024-01-18-preview/communicationservicejobrouter.json
index 09289125a68b..66b4099bee5f 100644
--- a/specification/communication/data-plane/JobRouter/preview/2024-01-18-preview/communicationservicejobrouter.json
+++ b/specification/communication/data-plane/JobRouter/preview/2024-01-18-preview/communicationservicejobrouter.json
@@ -32,6 +32,25 @@
"consumes": [
"application/json"
],
+ "security": [
+ {
+ "AadOauth2Auth": [
+ "https://communication.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://communication.azure.com/.default": ""
+ },
+ "tokenUrl": "https://login.microsoftonline.com/common/oauth2/token"
+ }
+ },
"tags": [],
"paths": {
"/routing/classificationPolicies": {
diff --git a/specification/communication/data-plane/JobRouter/stable/2023-11-01/communicationservicejobrouter.json b/specification/communication/data-plane/JobRouter/stable/2023-11-01/communicationservicejobrouter.json
index 444fcd79e5bf..57709b3c90cb 100644
--- a/specification/communication/data-plane/JobRouter/stable/2023-11-01/communicationservicejobrouter.json
+++ b/specification/communication/data-plane/JobRouter/stable/2023-11-01/communicationservicejobrouter.json
@@ -32,6 +32,25 @@
"consumes": [
"application/json"
],
+ "security": [
+ {
+ "AadOauth2Auth": [
+ "https://communication.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://communication.azure.com/.default": ""
+ },
+ "tokenUrl": "https://login.microsoftonline.com/common/oauth2/token"
+ }
+ },
"tags": [],
"paths": {
"/routing/classificationPolicies": {
From 038a77b3abf2e55700c5257980a82b2c92292a68 Mon Sep 17 00:00:00 2001
From: Mike Harder
Date: Mon, 6 Jan 2025 14:18:32 -0800
Subject: [PATCH 054/128] Revert unintentional changes to
.vscode/settings.json. (#32011)
This reverts commit c852a76b96e5c71972cdc62a303665fec7c867b6.
---
.vscode/settings.json | 14 +++-----------
1 file changed, 3 insertions(+), 11 deletions(-)
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 233fe74a6c32..ec907b484778 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -34,15 +34,7 @@
},
"[markdown]": {
"editor.rulers": [
- {
- "column": 120,
- "color": "#ff0000c0"
- }
+ { "column": 120, "color": "#ff0000c0" }
]
- },
- "workbench.colorCustomizations": {
- "activityBar.background": "#501B29",
- "titleBar.activeBackground": "#702639",
- "titleBar.activeForeground": "#FEFBFC"
- },
-}
\ No newline at end of file
+},
+}
From 33e96cb2d622465600fc4d49002f8a6e9370e738 Mon Sep 17 00:00:00 2001
From: Mike Harder
Date: Mon, 6 Jan 2025 14:36:20 -0800
Subject: [PATCH 055/128] Add group for
@azure-tools/typespec-client-generator-cli (#32012)
---
.github/dependabot.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 78c36868e90b..22a9b9f7f4db 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -18,6 +18,10 @@ updates:
- dependency-name: "minimatch"
versions: [ ">= 10.0.0"]
groups:
+ # Ships separately from other typespec packages
+ typespec-client-generator-cli:
+ patterns:
+ - "@azure-tools/typespec-client-generator-cli"
typespec:
patterns:
- "*typespec*"
From 7c6c44b31926ef17e3956d15d03a4b1c148d03fa Mon Sep 17 00:00:00 2001
From: Richard Park <51494936+richardpark-msft@users.noreply.github.com>
Date: Mon, 6 Jan 2025 16:26:51 -0800
Subject: [PATCH 056/128] 'Sms' should be capitalized (SMS) to conform to Go
style guidelines. (#32010)
Co-authored-by: ripark
---
.../propertyNameOverrideGo.tsp | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverrideGo.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverrideGo.tsp
index 8b91b935864f..319f6310a491 100644
--- a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverrideGo.tsp
+++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverrideGo.tsp
@@ -561,19 +561,20 @@ using Microsoft.EventGrid.SystemEvents;
"go"
);
@@clientName(AcsSmsDeliveryAttemptProperties,
- "ACSSmsDeliveryAttemptProperties",
+ "ACSSMSDeliveryAttemptProperties",
"go"
);
@@clientName(AcsSmsDeliveryReportReceivedEventData,
- "ACSSmsDeliveryReportReceivedEventData",
+ "ACSSMSDeliveryReportReceivedEventData",
"go"
);
-@@clientName(AcsSmsEventBaseProperties, "ACSSmsEventBaseProperties", "go");
-@@clientName(AcsSmsReceivedEventData, "ACSSmsReceivedEventData", "go");
+@@clientName(AcsSmsEventBaseProperties, "ACSSMSEventBaseProperties", "go");
+@@clientName(AcsSmsReceivedEventData, "ACSSMSReceivedEventData", "go");
@@clientName(AcsUserDisconnectedEventData,
"ACSUserDisconnectedEventData",
"go"
);
+
@@clientName(AcsUserEngagement, "ACSUserEngagement", "go");
// [END] ACS renames (and acronym casing)
From d6d0798c6f5eb196fba7bd1924db2b145a94f58c Mon Sep 17 00:00:00 2001
From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com>
Date: Mon, 6 Jan 2025 17:00:52 -0800
Subject: [PATCH 057/128] update proxy to version with auto-shutdown present
(#32007)
Co-authored-by: Scott Beddall
---
eng/common/testproxy/target_version.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/eng/common/testproxy/target_version.txt b/eng/common/testproxy/target_version.txt
index f03a3d234d5c..7c3d75f3a484 100644
--- a/eng/common/testproxy/target_version.txt
+++ b/eng/common/testproxy/target_version.txt
@@ -1 +1 @@
-1.0.0-dev.20241209.1
+1.0.0-dev.20241213.1
From 51238f4f6ea7ecf236890408b7f2644c3e1a6ec7 Mon Sep 17 00:00:00 2001
From: zoe
Date: Tue, 7 Jan 2025 09:16:48 +0800
Subject: [PATCH 058/128] Fix SystemData value in User Session examples
(#31818)
* Fix SystemData value in User Session examples
* fix Swagger ModelValidation failure
---------
Co-authored-by: Yu Zhang
Co-authored-by: ryanosh <89867477+ryanosh@users.noreply.github.com>
---
.../examples/Application_Create.json | 4 ++--
.../examples/Application_Get.json | 2 +-
.../examples/Application_List.json | 4 ++--
.../examples/Application_Update.json | 2 +-
.../examples/Desktop_Get.json | 2 +-
.../examples/Desktop_List.json | 2 +-
.../examples/Desktop_Update.json | 2 +-
.../examples/MsixImage_Expand_Post.json | 12 +++++------
.../examples/MsixPackage_List.json | 4 ++--
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/Application_Create.json | 4 ++--
.../examples/Application_Get.json | 2 +-
.../examples/Application_List.json | 4 ++--
.../examples/Application_Update.json | 2 +-
.../examples/Desktop_Get.json | 2 +-
.../examples/Desktop_List.json | 2 +-
.../examples/Desktop_Update.json | 2 +-
.../examples/MsixImage_Expand_Post.json | 12 +++++------
.../examples/MsixPackage_List.json | 4 ++--
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/Application_Create.json | 4 ++--
.../examples/Application_Get.json | 2 +-
.../examples/Application_List.json | 4 ++--
.../examples/Application_Update.json | 2 +-
.../examples/Desktop_Get.json | 2 +-
.../examples/Desktop_List.json | 2 +-
.../examples/Desktop_Update.json | 2 +-
.../examples/MsixImage_Expand_Post.json | 12 +++++------
.../examples/MsixPackage_List.json | 4 ++--
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../examples/UserSession_Get.json | 10 +++++-----
.../examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../2022-09-09/examples/UserSession_Get.json | 10 +++++-----
.../2022-09-09/examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../2023-09-05/examples/UserSession_Get.json | 10 +++++-----
.../2023-09-05/examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
.../2024-04-03/examples/UserSession_Get.json | 10 +++++-----
.../2024-04-03/examples/UserSession_List.json | 20 +++++++++----------
.../examples/UserSession_ListByHostPool.json | 20 +++++++++----------
69 files changed, 401 insertions(+), 401 deletions(-)
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Create.json
index f4e733acff28..38c105a7628d 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Create.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Create.json
@@ -43,7 +43,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
@@ -74,7 +74,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Get.json
index f8f455614426..f476d1630f18 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Get.json
@@ -31,7 +31,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_List.json
index abf44051171c..170531ea84fd 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_List.json
@@ -32,7 +32,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
@@ -61,7 +61,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Update.json
index 97fde6accf35..09c7e8375925 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Update.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Application_Update.json
@@ -46,7 +46,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Get.json
index 76bb6ae862c7..2be35cc6857c 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Get.json
@@ -25,7 +25,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_List.json
index 854dcd77c099..a985e8addfcd 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_List.json
@@ -26,7 +26,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
]
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Update.json
index 22defe8b16ad..4a4a49d3c28e 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Update.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/Desktop_Update.json
@@ -31,7 +31,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixImage_Expand_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixImage_Expand_Post.json
index b0b5251980ce..c94a31433af6 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixImage_Expand_Post.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixImage_Expand_Post.json
@@ -36,8 +36,8 @@
"appUserModelID": "AppUserModelId",
"friendlyName": "FriendlyName",
"iconImageName": "Iconimagename",
- "rawIcon": "RawIcon",
- "rawPng": "RawPng"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
@@ -77,8 +77,8 @@
"appUserModelID": "AppUserModelId1",
"friendlyName": "FriendlyName1",
"iconImageName": "Iconimagename1",
- "rawIcon": "RawIcon1",
- "rawPng": "RawPng1"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
},
{
"appId": "AppId2",
@@ -86,8 +86,8 @@
"appUserModelID": "AppUserModelId2",
"friendlyName": "FriendlyName2",
"iconImageName": "Iconimagename2",
- "rawIcon": "RawIcon2",
- "rawPng": "RawPng2"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixPackage_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixPackage_List.json
index c996f51f95c6..1d9ced621870 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixPackage_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/MsixPackage_List.json
@@ -87,8 +87,8 @@
"appUserModelID": "Application_ModelID2",
"friendlyName": "fri2",
"iconImageName": "Apptile2",
- "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2",
- "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_Get.json
index dfb6a28cc4d0..24358a7a9c74 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_List.json
index 9151beb2d220..7417e73bba86 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_List.json
@@ -15,12 +15,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -36,12 +36,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_ListByHostPool.json
index c51a3a6cbb2a..697d9217cc4e 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2021-09-03-preview/examples/UserSession_ListByHostPool.json
@@ -15,12 +15,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -36,12 +36,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Create.json
index 2fab2f042c9b..04449d90f20b 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Create.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Create.json
@@ -43,7 +43,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
@@ -74,7 +74,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Get.json
index fab3d6ad9161..8ef5e64674a1 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Get.json
@@ -31,7 +31,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_List.json
index 31bd27b9bc98..beba4fbcb389 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_List.json
@@ -32,7 +32,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
@@ -61,7 +61,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Update.json
index 22f875b22e6b..3587b290a9ed 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Update.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Application_Update.json
@@ -46,7 +46,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Get.json
index d0c7dc87cd18..02a2270372d9 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Get.json
@@ -25,7 +25,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_List.json
index b27f24c403b7..9bc356d747ec 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_List.json
@@ -26,7 +26,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
]
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Update.json
index 7399e1a7a4f1..bb3edb5c3c50 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Update.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/Desktop_Update.json
@@ -31,7 +31,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixImage_Expand_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixImage_Expand_Post.json
index 07efddda5af9..b9778bbcda42 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixImage_Expand_Post.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixImage_Expand_Post.json
@@ -36,8 +36,8 @@
"appUserModelID": "AppUserModelId",
"friendlyName": "FriendlyName",
"iconImageName": "Iconimagename",
- "rawIcon": "RawIcon",
- "rawPng": "RawPng"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
@@ -77,8 +77,8 @@
"appUserModelID": "AppUserModelId1",
"friendlyName": "FriendlyName1",
"iconImageName": "Iconimagename1",
- "rawIcon": "RawIcon1",
- "rawPng": "RawPng1"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
},
{
"appId": "AppId2",
@@ -86,8 +86,8 @@
"appUserModelID": "AppUserModelId2",
"friendlyName": "FriendlyName2",
"iconImageName": "Iconimagename2",
- "rawIcon": "RawIcon2",
- "rawPng": "RawPng2"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixPackage_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixPackage_List.json
index abbdc0e262b3..8fa92f383b7d 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixPackage_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/MsixPackage_List.json
@@ -87,8 +87,8 @@
"appUserModelID": "Application_ModelID2",
"friendlyName": "fri2",
"iconImageName": "Apptile2",
- "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2",
- "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_Get.json
index 12e2a4d951df..7195937f04ac 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_List.json
index 6587b60f11d9..b71997f11498 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_List.json
@@ -15,12 +15,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -36,12 +36,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_ListByHostPool.json
index d7e33695a61b..58e97b01afdd 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-02-10-preview/examples/UserSession_ListByHostPool.json
@@ -15,12 +15,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -36,12 +36,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Create.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Create.json
index 784569d1d9f6..fe7d16384af1 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Create.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Create.json
@@ -43,7 +43,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
@@ -74,7 +74,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Get.json
index da07535089a5..61dfba89447e 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Get.json
@@ -31,7 +31,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_List.json
index 817e27a2eaa4..826ba250233c 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_List.json
@@ -32,7 +32,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
@@ -61,7 +61,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Update.json
index 7feb884bb0e6..0883e568c5dd 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Update.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Application_Update.json
@@ -46,7 +46,7 @@
"iconPath": "icon",
"iconIndex": 1,
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA...",
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
"applicationType": "InBuilt",
"msixPackageFamilyName": null,
"msixPackageApplicationId": null
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Get.json
index afeb2b956df7..58b6f1d20cf6 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Get.json
@@ -25,7 +25,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_List.json
index c54087b620d1..81a136023bd0 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_List.json
@@ -26,7 +26,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
]
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Update.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Update.json
index 86ae178ab70c..4f6634216bd5 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Update.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/Desktop_Update.json
@@ -31,7 +31,7 @@
"description": "des1",
"friendlyName": "friendly",
"iconHash": "bEQ1n2HysrGxCDvgt4bfOtkET8ydzh5SXGM0KGTBPVc",
- "iconContent": "AAABAAgAAAAAAAEAIAA7MwAAhgAAAEBAAAABACAAKEIAAMEzAAAwMAAAAQAgAKglAADpdQAAKCgAAAEA..."
+ "iconContent": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
}
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixImage_Expand_Post.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixImage_Expand_Post.json
index 926b3f710122..5db6402fbdee 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixImage_Expand_Post.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixImage_Expand_Post.json
@@ -36,8 +36,8 @@
"appUserModelID": "AppUserModelId",
"friendlyName": "FriendlyName",
"iconImageName": "Iconimagename",
- "rawIcon": "RawIcon",
- "rawPng": "RawPng"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
@@ -77,8 +77,8 @@
"appUserModelID": "AppUserModelId1",
"friendlyName": "FriendlyName1",
"iconImageName": "Iconimagename1",
- "rawIcon": "RawIcon1",
- "rawPng": "RawPng1"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
},
{
"appId": "AppId2",
@@ -86,8 +86,8 @@
"appUserModelID": "AppUserModelId2",
"friendlyName": "FriendlyName2",
"iconImageName": "Iconimagename2",
- "rawIcon": "RawIcon2",
- "rawPng": "RawPng2"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixPackage_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixPackage_List.json
index 353a017f0181..503a87a8083f 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixPackage_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/MsixPackage_List.json
@@ -87,8 +87,8 @@
"appUserModelID": "Application_ModelID2",
"friendlyName": "fri2",
"iconImageName": "Apptile2",
- "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2",
- "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo2"
+ "rawIcon": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo",
+ "rawPng": "VGhpcyBpcyBhIHN0cmluZyB0byBoYXNo"
}
]
}
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_Get.json
index 205224b635a5..1213b395a4b2 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_List.json
index 637bbc481ec1..2c921ee49fd4 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_List.json
@@ -15,12 +15,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -36,12 +36,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_ListByHostPool.json
index cdcc56cc6859..6982b0ad9d40 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-04-01-preview/examples/UserSession_ListByHostPool.json
@@ -15,12 +15,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -36,12 +36,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_Get.json
index 86cc2a7d4587..1c9f5132dcc5 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_List.json
index f237c16deca3..586c58bf7000 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_ListByHostPool.json
index 073100f86e53..94ef32c16db6 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2022-10-14-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_Get.json
index c37617b281de..7e229788b11a 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_List.json
index 56510c59a3b4..89db7a3b3a2b 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_ListByHostPool.json
index c6b2e0dbdc5a..9f6f0f63d52f 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-07-07-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_Get.json
index 79749fcb838e..ff866de90186 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_List.json
index 993229f8ad6a..9dcdf1fadd0d 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_ListByHostPool.json
index 028663d62fa8..39d70b5edf0e 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-10-04-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_Get.json
index 3bae63f60db7..9d0bbbe193c5 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_List.json
index 798be10cdef4..e8c9e04ab327 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_ListByHostPool.json
index e6ae46f52b38..74d3cd7600ea 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2023-11-01-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_Get.json
index 449167a9f36a..a705e1e80578 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_List.json
index 05ed33fbff79..12e55d2a464f 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_ListByHostPool.json
index 0ae0f5ed8036..58bd53722c83 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-01-16-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_Get.json
index 4959e71fdf3f..583aa7291cf7 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_List.json
index 96888888c1c4..a83fc64ff407 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_ListByHostPool.json
index 469320e5a665..ce64c99c2689 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-03-06-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_Get.json
index df0ed5840c17..da4d043604ec 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_List.json
index 3d9c61f1f1b3..b3a891a490b0 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_ListByHostPool.json
index 09fa6b989dcd..375195a7b714 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-04-08-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_Get.json
index b16a2f4555d2..9b586821b927 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_List.json
index eb164a07473c..236c197796b5 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_ListByHostPool.json
index e2e5c67e92d6..ec5782e98e01 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/preview/2024-08-08-preview/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_Get.json
index 5bf3527ed7b2..078308b15aaa 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_List.json
index 567ea1bd4108..cd7dc35d0308 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_ListByHostPool.json
index c89b4582644e..84f28ddb7019 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2022-09-09/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_Get.json
index 0ff38c050afd..22cb55481ee8 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_List.json
index 6d19f1000fda..bbca29c351aa 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_ListByHostPool.json
index a2964e1229fa..563cd20242b7 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2023-09-05/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_Get.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_Get.json
index 9ea8793db10c..be40d0e8786a 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_Get.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_Get.json
@@ -14,12 +14,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_List.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_List.json
index 9b914786a039..1ed6922fc410 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_List.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_List.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
diff --git a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_ListByHostPool.json b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_ListByHostPool.json
index ed609151e558..5f5d750b059f 100644
--- a/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_ListByHostPool.json
+++ b/specification/desktopvirtualization/resource-manager/Microsoft.DesktopVirtualization/stable/2024-04-03/examples/UserSession_ListByHostPool.json
@@ -18,12 +18,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/1",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
@@ -39,12 +39,12 @@
"id": "/subscriptions/daefabc0-95b4-48b3-b645-8a753a63c4fa/resourceGroups/resourceGroup1/providers/Microsoft.DesktopVirtualization/hostPools/hostPool1/sessionHosts/sessionHost1.microsoft.com/userSessions/2",
"type": "Microsoft.DesktopVirtualization/hostPools/sessionHosts/userSessions",
"systemData": {
- "createdBy": "user1",
- "createdByType": "User",
+ "createdBy": null,
+ "createdByType": null,
"createdAt": "2020-01-01T17:18:19.1234567Z",
- "lastModifiedBy": "user2",
- "lastModifiedByType": "User",
- "lastModifiedAt": "2020-01-02T17:18:19.1234567Z"
+ "lastModifiedBy": null,
+ "lastModifiedByType": null,
+ "lastModifiedAt": null
},
"properties": {
"objectId": "7877fb31-4bde-49fd-9df3-c046e0ec5325",
From 49456eb149e3bb5d0528cbca714cfa1806415484 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon, 6 Jan 2025 17:18:21 -0800
Subject: [PATCH 059/128] Bump @azure-tools/typespec-client-generator-core from
0.49.0 to 0.49.1 in the typespec group across 1 directory (#32008)
* Bump the typespec group across 1 directory with 2 updates
Bumps the typespec group with 2 updates in the / directory: [@azure-tools/typespec-client-generator-cli](https://github.com/Azure/azure-sdk-tools) and [@azure-tools/typespec-client-generator-core](https://github.com/Azure/typespec-azure).
Updates `@azure-tools/typespec-client-generator-cli` from 0.14.2 to 0.14.3
- [Release notes](https://github.com/Azure/azure-sdk-tools/releases)
- [Commits](https://github.com/Azure/azure-sdk-tools/commits)
Updates `@azure-tools/typespec-client-generator-core` from 0.49.0 to 0.49.1
- [Release notes](https://github.com/Azure/typespec-azure/releases)
- [Commits](https://github.com/Azure/typespec-azure/compare/typespec-azure@0.49.0...@azure-tools/typespec-client-generator-core@0.49.1)
---
updated-dependencies:
- dependency-name: "@azure-tools/typespec-client-generator-cli"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: typespec
- dependency-name: "@azure-tools/typespec-client-generator-core"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: typespec
...
Signed-off-by: dependabot[bot]
* Revert typespec-client-generator-cli due to a regression
---------
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mike Harder
---
package-lock.json | 9 ++++-----
package.json | 2 +-
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index 4ff3c2f2b07d..1316151cf1d0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,7 +13,7 @@
"@azure-tools/typespec-azure-resource-manager": "0.49.0",
"@azure-tools/typespec-azure-rulesets": "0.49.0",
"@azure-tools/typespec-client-generator-cli": "0.14.2",
- "@azure-tools/typespec-client-generator-core": "0.49.0",
+ "@azure-tools/typespec-client-generator-core": "0.49.1",
"@azure-tools/typespec-liftr-base": "0.6.0",
"@azure/avocado": "^0.9.1",
"@typespec/compiler": "0.63.0",
@@ -1063,11 +1063,10 @@
}
},
"node_modules/@azure-tools/typespec-client-generator-core": {
- "version": "0.49.0",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.49.0.tgz",
- "integrity": "sha512-inFLRIeTU0mQg4PT19O3YwT/4YODLuTgIsXuhKDdG/sEsx8PG8AEFTabtnZJ0w3Lc4xuxKFJrzZ2ZH2iiAAbig==",
+ "version": "0.49.1",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-client-generator-core/-/typespec-client-generator-core-0.49.1.tgz",
+ "integrity": "sha512-uAzlkYfL73lp1BnP8HMcIcS8iud7UnQzw6bf6FCUkKFO1B6wDwcvut3HfTtUj1kvw0XkiVJ0NkcxT0Dz0cylpQ==",
"dev": true,
- "license": "MIT",
"dependencies": {
"change-case": "~5.4.4",
"pluralize": "^8.0.0",
diff --git a/package.json b/package.json
index d40b511e7e4f..72524f5b2af6 100644
--- a/package.json
+++ b/package.json
@@ -8,7 +8,7 @@
"@azure-tools/typespec-azure-resource-manager": "0.49.0",
"@azure-tools/typespec-azure-rulesets": "0.49.0",
"@azure-tools/typespec-client-generator-cli": "0.14.2",
- "@azure-tools/typespec-client-generator-core": "0.49.0",
+ "@azure-tools/typespec-client-generator-core": "0.49.1",
"@azure-tools/typespec-liftr-base": "0.6.0",
"@azure/avocado": "^0.9.1",
"@typespec/compiler": "0.63.0",
From 74157f1f2fa00ba4e45b0118324ef2b5f0afb612 Mon Sep 17 00:00:00 2001
From: MJ <71822730+mjmadhu@users.noreply.github.com>
Date: Tue, 7 Jan 2025 16:34:50 +0530
Subject: [PATCH 060/128] Rectified a typo (#31855)
---
.../AccessTokens_CreateOrReplace.json} | 8 +-
.../2024-12-01/AccessTokens_Delete.json | 12 +
.../2024-12-01/AccessTokens_Get.json} | 8 +-
.../2024-12-01/AccessTokens_List.json} | 8 +-
.../examples/2024-12-01/Accounts_Get.json} | 13 +-
.../2024-12-01/Accounts_GetBrowsers.json | 16 +
.../main.tsp | 125 ++-
.../tspconfig.yaml | 44 +
.../PlaywrightTesting.Management/main.tsp | 2 +-
.../AccessTokens_DeleteAccessToken.json | 12 -
.../PlaywrightTesting/tspconfig.yaml | 15 -
.../AccessTokens_CreateOrReplace.json | 36 +
.../examples/AccessTokens_Delete.json | 12 +
.../2024-12-01/examples/AccessTokens_Get.json | 21 +
.../examples/AccessTokens_List.json | 25 +
.../2024-12-01/examples/Accounts_Get.json | 26 +
.../examples/Accounts_GetBrowsers.json | 16 +
.../stable/2024-12-01/playwrighttesting.json | 887 ++++++++++++++++++
.../playwrighttesting/data-plane/readme.md | 34 +-
.../stable/2024-12-01/playwrighttesting.json | 4 +-
20 files changed, 1243 insertions(+), 81 deletions(-)
rename specification/playwrighttesting/{PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_CreateAccessToken.json => PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_CreateOrReplace.json} (80%)
create mode 100644 specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Delete.json
rename specification/playwrighttesting/{PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_GetAccessToken.json => PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Get.json} (69%)
rename specification/playwrighttesting/{PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_ListAccessTokens.json => PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_List.json} (71%)
rename specification/playwrighttesting/{PlaywrightTesting/examples/2023-10-01-preview/Accounts_GetAccount.json => PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_Get.json} (66%)
create mode 100644 specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_GetBrowsers.json
rename specification/playwrighttesting/{PlaywrightTesting => PlaywrightTesting.AuthManager}/main.tsp (51%)
create mode 100644 specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml
delete mode 100644 specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_DeleteAccessToken.json
delete mode 100644 specification/playwrighttesting/PlaywrightTesting/tspconfig.yaml
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_CreateOrReplace.json
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Delete.json
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Get.json
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_List.json
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_Get.json
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_GetBrowsers.json
create mode 100644 specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
diff --git a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_CreateAccessToken.json b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_CreateOrReplace.json
similarity index 80%
rename from specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_CreateAccessToken.json
rename to specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_CreateOrReplace.json
index 17f6fd010929..3cda5ec2604c 100644
--- a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_CreateAccessToken.json
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_CreateOrReplace.json
@@ -1,9 +1,9 @@
{
- "title": "AccessTokens_CreateAccessToken",
- "operationId": "AccessTokens_CreateAccessToken",
+ "title": "AccessTokens_CreateOrReplace",
+ "operationId": "AccessTokens_CreateOrReplace",
"parameters": {
- "api-version": "2023-10-01-preview",
- "accountId": "sampleAccountId",
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
"accessTokenId": "00000000-0000-0000-0000-000000000000",
"resource": {
"id": "00000000-0000-0000-0000-000000000000",
diff --git a/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Delete.json b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Delete.json
new file mode 100644
index 000000000000..89786059c5bb
--- /dev/null
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Delete.json
@@ -0,0 +1,12 @@
+{
+ "title": "AccessTokens_Delete",
+ "operationId": "AccessTokens_Delete",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "accessTokenId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_GetAccessToken.json b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Get.json
similarity index 69%
rename from specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_GetAccessToken.json
rename to specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Get.json
index b8669c51f92a..5bcc133167d2 100644
--- a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_GetAccessToken.json
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_Get.json
@@ -1,9 +1,9 @@
{
- "title": "AccessTokens_GetAccessToken",
- "operationId": "AccessTokens_GetAccessToken",
+ "title": "AccessTokens_Get",
+ "operationId": "AccessTokens_Get",
"parameters": {
- "api-version": "2023-10-01-preview",
- "accountId": "sampleAccountId",
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
"accessTokenId": "00000000-0000-0000-0000-000000000000"
},
"responses": {
diff --git a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_ListAccessTokens.json b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_List.json
similarity index 71%
rename from specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_ListAccessTokens.json
rename to specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_List.json
index 01623f41f9f5..067ead9616f4 100644
--- a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_ListAccessTokens.json
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/AccessTokens_List.json
@@ -1,9 +1,9 @@
{
- "title": "AccessTokens_ListAccessTokens",
- "operationId": "AccessTokens_ListAccessTokens",
+ "title": "AccessTokens_List",
+ "operationId": "AccessTokens_List",
"parameters": {
- "api-version": "2023-10-01-preview",
- "accountId": "sampleAccountId"
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000"
},
"responses": {
"200": {
diff --git a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/Accounts_GetAccount.json b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_Get.json
similarity index 66%
rename from specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/Accounts_GetAccount.json
rename to specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_Get.json
index e6a679938510..2305831119f2 100644
--- a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/Accounts_GetAccount.json
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_Get.json
@@ -1,14 +1,14 @@
{
- "title": "Accounts_GetAccount",
- "operationId": "Accounts_GetAccount",
+ "title": "Accounts_Get",
+ "operationId": "Accounts_Get",
"parameters": {
- "api-version": "2023-10-01-preview",
- "accountId": "sampleAccountId"
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000"
},
"responses": {
"200": {
"body": {
- "id": "sampleAccountId",
+ "id": "sampleAccountId_00000000-0000-0000-0000-000000000000",
"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.AzurePlaywrightService/accounts/myPlaywrightAccount",
"name": "myPlaywrightAccount",
"state": "Active",
@@ -18,7 +18,8 @@
"location": "westus",
"regionalAffinity": "Enabled",
"scalableExecution": "Enabled",
- "reporting": "Disabled"
+ "reporting": "Disabled",
+ "localAuth": "Enabled"
}
}
}
diff --git a/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_GetBrowsers.json b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_GetBrowsers.json
new file mode 100644
index 000000000000..c2e9c79dbbb3
--- /dev/null
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/examples/2024-12-01/Accounts_GetBrowsers.json
@@ -0,0 +1,16 @@
+{
+ "title": "Accounts_GetBrowsers",
+ "operationId": "Accounts_GetBrowsers",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "os": "Linux"
+ },
+ "responses": {
+ "302": {
+ "headers": {
+ "location": "wss://{region}.api.playwright.microsoft.com/redirectURL?api-version=2024-12-01&os=linux"
+ }
+ }
+ }
+}
diff --git a/specification/playwrighttesting/PlaywrightTesting/main.tsp b/specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp
similarity index 51%
rename from specification/playwrighttesting/PlaywrightTesting/main.tsp
rename to specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp
index d5d85fca81f1..a70813099688 100644
--- a/specification/playwrighttesting/PlaywrightTesting/main.tsp
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp
@@ -5,26 +5,41 @@ import "@typespec/http";
import "@typespec/rest";
import "@typespec/versioning";
import "@azure-tools/typespec-azure-core";
-import "@azure-tools/typespec-autorest";
using TypeSpec.Http;
using TypeSpec.Rest;
using TypeSpec.Versioning;
using Azure.Core;
using Azure.Core.Traits;
-using Autorest;
@server(
- "https://api.playwright-int.io",
- "Azure Playwright Service API Endpoint"
+ "{endpoint}",
+ "Microsoft Azure Playwright Service API Endpoint",
+ {
+ @doc("""
+ Supported Azure Playwright Service API Endpoints (protocol and hostname, for example:
+ https://{region}.api.playwright.microsoft.com).
+ """)
+ endpoint: string,
+ }
)
@useAuth(
[
OAuth2Auth<[
{
type: OAuth2FlowType.implicit,
+ description: "We can use OAuth2 Implicit flow to get the auth token for calling the APIs.",
authorizationUrl: "https://login.microsoftonline.com/common/oauth2/authorize",
- scopes: ["https://preview.playwright-int.io/.default"],
+ scopes: ["https://playwright.microsoft.com/.default"],
+ }
+ ]>,
+ OAuth2Auth<[
+ {
+ type: OAuth2FlowType.authorizationCode,
+ description: "We can use OAuth2 Authorization Code flow to get the auth token for calling the APIs.",
+ authorizationUrl: "https://login.microsoftonline.com/common/oauth2/authorize",
+ tokenUrl: "https://login.microsoftonline.com/common/v2.0/oauth2/token",
+ scopes: ["https://playwright.microsoft.com/.default"],
}
]>
]
@@ -37,22 +52,24 @@ namespace Microsoft.PlaywrightTesting.AuthManager;
@doc("The PlaywrightTesting Auth Manager service version.")
enum Versions {
- @doc("Version 2023-10-01-preview")
+ @doc("Version 2024-12-01")
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
- `2023-10-01-preview`,
+ `2024-12-01`,
}
// Models ////////////////////
-@doc("An account is a parent resource for most of the other service resources. It's directly mapped to an ARM resource and helps to create a link between control-plane and data-plane resources.")
+@doc("An account is a parent resource for most of the other service resources. It's directly mapped to an Azure resource.")
@resource("accounts")
model Account {
@key("accountId")
@doc("The account id.")
+ @maxLength(64)
+ @pattern("[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+")
@visibility("read")
id: string;
- @doc("The ARM fully-qualified resource id for the account.")
+ @doc("The fully-qualified Azure resource id for the account.")
@visibility("read")
resourceId: string;
@@ -64,11 +81,11 @@ model Account {
@visibility("read")
state: AccountState;
- @doc("The ARM-based subscription id for the account.")
+ @doc("The Azure subscription id for the account.")
@visibility("read")
subscriptionId: uuid;
- @doc("The ARM-based subscription state - Registered | Unregistered | Warned | Suspended | Deleted")
+ @doc("The Azure subscription state - Registered | Unregistered | Warned | Suspended | Deleted")
@visibility("read")
subscriptionState: SubscriptionState;
@@ -76,7 +93,7 @@ model Account {
@visibility("read")
tenantId: uuid;
- @doc("The account resource ARM location, for eg. eastus, southeastasia.")
+ @doc("The account resource location in Azure, for eg. eastus, southeastasia.")
@visibility("read")
location: string;
@@ -90,7 +107,11 @@ model Account {
@doc("When enabled, this feature allows the workspace to upload and display test results, including artifacts like traces and screenshots, in the Playwright portal. This enables faster and more efficient troubleshooting.")
@visibility("read")
- reporting?: EnablementStatus = EnablementStatus.Disabled;
+ reporting?: EnablementStatus = EnablementStatus.Enabled;
+
+ @doc("When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations.")
+ @visibility("read")
+ localAuth?: EnablementStatus = EnablementStatus.Disabled;
}
@doc("The account state.")
@@ -104,7 +125,7 @@ union AccountState {
"Inactive",
}
-@doc("The ARM-based subscription state.")
+@doc("The Azure subscription state.")
union SubscriptionState {
string,
@@ -130,6 +151,8 @@ union SubscriptionState {
model AccessToken {
@key("accessTokenId")
@doc("The access-token id.")
+ @maxLength(64)
+ @pattern("[A-Za-z0-9]+(-[A-Za-z0-9]+)+")
@visibility("read")
id: uuid;
@@ -146,7 +169,7 @@ model AccessToken {
@doc("The access-token createdAt utcDateTime.")
@visibility("read")
- createdAt?: utcDateTime;
+ createdAt: utcDateTime;
@doc("The access-token expiryAt utcDateTime.")
@visibility("read", "create")
@@ -154,7 +177,7 @@ model AccessToken {
@doc("The access-token state - Active | Expired.")
@visibility("read")
- state?: AccessTokenState;
+ state: AccessTokenState;
}
@doc("The access-token state.")
@@ -162,10 +185,10 @@ union AccessTokenState {
string,
@doc("The access-token is Active.")
- "Active",
+ Active: "Active",
@doc("The access-token is Expired.")
- "Expired",
+ Expired: "Expired",
}
@doc("The enablement status of a feature.")
@@ -179,6 +202,17 @@ union EnablementStatus {
Disabled: "Disabled",
}
+@doc("The os to configure for remote test runs.")
+union OS {
+ string,
+
+ @doc("Linux OS.")
+ Linux: "Linux",
+
+ @doc("Windows OS.")
+ Windows: "Windows",
+}
+
// Operations ////////////////////
alias ServiceTraits = NoRepeatableRequests &
@@ -189,23 +223,54 @@ alias Operations = Azure.Core.ResourceOperations;
interface AccessTokens {
// AccessToken Operations
+ @doc("Creates an access-token for the account with given access-token id. Authorization required is Bearer JWT Access token provided by EntraID.")
+ createOrReplace is Operations.ResourceCreateOrReplace;
- #suppress "@azure-tools/typespec-azure-core/use-standard-names" "Existing name"
- @doc("Creates an access-token with given access-token id in guid format.")
- createAccessToken is Operations.ResourceCreateOrReplace;
+ @doc("Gets an access-token for the account with given access-token id. Authorization required is Bearer JWT Access token provided by EntraID.")
+ get is Operations.ResourceRead;
- @doc("Get an access-token for given access-token id in guid format.")
- getAccessToken is Operations.ResourceRead;
+ @doc("Deletes an access-token for the account with given access-token id. Authorization required is Bearer JWT Access token provided by EntraID.")
+ delete is Operations.ResourceDelete;
- @doc("Revoke an access-token with given access-token id in guid format.")
- deleteAccessToken is Operations.ResourceDelete;
-
- @doc("List access-tokens for a given accountId.")
- listAccessTokens is Operations.ResourceList;
+ @doc("Lists access-tokens for the given account id. It can use OData query params like $select, $filter, $orderby, $top and $skip. The default page size is 10. Use nextLink in response to fetch more objects in the list. Authorization required is Bearer JWT Access token provided by EntraID.")
+ list is Operations.ResourceList;
}
+alias GetBrowsersParams = {
+ @path
+ @doc("The account id.")
+ accountId: string;
+
+ @query
+ @doc("The run id provided by client for corresponding remote test run.")
+ runId?: string;
+
+ @query
+ @doc("The os provided by client for remote test runs.")
+ os?: OS = OS.Linux;
+};
+
+alias GetBrowsersResponse = {
+ @statusCode
+ _: 302;
+
+ @header
+ @doc("The redirect target URL to run test on remote browsers.")
+ location: url;
+};
+
interface Accounts {
// Accounts Operations
- @doc("Get details of the ARM resource mapped to an account for the given accountId.")
- getAccount is Operations.ResourceRead;
+
+ @doc("Get details of the Azure resource mapped to an account for the given account id. Authorization required is Bearer JWT Access token provided by EntraID.")
+ get is Operations.ResourceRead;
+
+ #suppress "@azure-tools/typespec-azure-core/no-rpc-path-params" "Operations defined using RpcOperation should not have path parameters. Consider using ResourceAction or ResourceCollectionAction instead."
+ @doc("Gets remote browsers corresponding to given account id and redirects the client for running Playwright tests. Authorization required is Bearer JWT Access token provided by EntraID or Microsoft Playwright Testing Service.")
+ @route("/accounts/{accountId}/browsers")
+ getBrowsers is RpcOperation<
+ GetBrowsersParams,
+ GetBrowsersResponse,
+ ServiceTraits
+ >;
}
diff --git a/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml b/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml
new file mode 100644
index 000000000000..5b3209eec885
--- /dev/null
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml
@@ -0,0 +1,44 @@
+emit:
+ - "@azure-tools/typespec-autorest"
+linter:
+ extends:
+ - "@azure-tools/typespec-azure-rulesets/data-plane"
+parameters:
+ "service-dir":
+ default: "sdk/playwrighttesting"
+options:
+ "@azure-tools/typespec-autorest":
+ azure-resource-provider-folder: "data-plane"
+ emitter-output-dir: "{project-root}/.."
+ output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/playwrighttesting.json"
+ omit-unreachable-types: true
+ "@azure-tools/typespec-python":
+ package-dir: "azure-developer-microsoftplaywrighttesting"
+ package-name: "{package-dir}"
+ # emitter-output-dir: "{python-sdk-folder}/sdk/{service-directory-name}/{package-name}"
+ package-mode: azure-dataplane
+ flavor: azure
+ "@azure-tools/typespec-ts":
+ package-dir: "microsoft-playwright-testing-rest"
+ title: Microsoft Playwright Testing
+ description: Microsoft Playwright Testing Client
+ generateMetadata: true
+ generateTest: false
+ packageDetails:
+ name: "@azure-rest/microsoft-playwright-testing"
+ description: "This package contains Microsoft Playwright Testing client library."
+ version: 1.0.0
+ flavor: azure
+ "@azure-tools/typespec-csharp":
+ package-dir: "Azure.Developer.MicrosoftPlaywrightTesting"
+ clear-output-folder: true
+ model-namespace: false
+ namespace: "{package-dir}"
+ flavor: azure
+ "@azure-tools/typespec-java":
+ package-dir: "azure-developer-microsoftplaywrighttesting"
+ namespace: com.azure.developer.microsoftplaywrighttesting
+ partial-update: true
+ generate-tests: false
+ service-name: Microsoft Playwright Testing
+ flavor: azure
diff --git a/specification/playwrighttesting/PlaywrightTesting.Management/main.tsp b/specification/playwrighttesting/PlaywrightTesting.Management/main.tsp
index 6f1579272e50..6583cebc20b5 100644
--- a/specification/playwrighttesting/PlaywrightTesting.Management/main.tsp
+++ b/specification/playwrighttesting/PlaywrightTesting.Management/main.tsp
@@ -55,7 +55,7 @@ model AccountProperties {
@doc("When enabled, this feature allows the workspace to upload and display test results, including artifacts like traces and screenshots, in the Playwright portal. This enables faster and more efficient troubleshooting.")
reporting?: EnablementStatus = EnablementStatus.Enabled;
- @doc("When enabled, this feature allows the workspace to use local auth(through access key) for authentication of test runs.")
+ @doc("When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations.")
localAuth?: EnablementStatus = EnablementStatus.Disabled;
@visibility("read")
diff --git a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_DeleteAccessToken.json b/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_DeleteAccessToken.json
deleted file mode 100644
index 1dfb8f32a21e..000000000000
--- a/specification/playwrighttesting/PlaywrightTesting/examples/2023-10-01-preview/AccessTokens_DeleteAccessToken.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "title": "AccessTokens_DeleteAccessToken",
- "operationId": "AccessTokens_DeleteAccessToken",
- "parameters": {
- "api-version": "2023-10-01-preview",
- "accountId": "sampleAccountId",
- "accessTokenId": "00000000-0000-0000-0000-000000000000"
- },
- "responses": {
- "204": {}
- }
-}
diff --git a/specification/playwrighttesting/PlaywrightTesting/tspconfig.yaml b/specification/playwrighttesting/PlaywrightTesting/tspconfig.yaml
deleted file mode 100644
index d0d4ffa73239..000000000000
--- a/specification/playwrighttesting/PlaywrightTesting/tspconfig.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-emit:
- - "@azure-tools/typespec-autorest"
-linter:
- extends:
- - "@azure-tools/typespec-azure-rulesets/data-plane"
-parameters:
- "service-directory-name":
- default: "playwrighttesting"
-options:
- "@azure-tools/typespec-autorest":
- azure-resource-provider-folder: "data-plane"
- emit-lro-options: "none"
- emitter-output-dir: "{project-root}/.."
- output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/playwrighttesting.json"
- omit-unreachable-types: true
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_CreateOrReplace.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_CreateOrReplace.json
new file mode 100644
index 000000000000..3cda5ec2604c
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_CreateOrReplace.json
@@ -0,0 +1,36 @@
+{
+ "title": "AccessTokens_CreateOrReplace",
+ "operationId": "AccessTokens_CreateOrReplace",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "accessTokenId": "00000000-0000-0000-0000-000000000000",
+ "resource": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "name": "sampleAccessToken",
+ "expiryAt": "2022-09-28T12:32:33Z"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "name": "sampleAccessToken",
+ "jwtToken": "sampleJwtToken",
+ "createdAt": "2021-09-28T12:32:33Z",
+ "expiryAt": "2022-09-28T12:32:33Z",
+ "state": "Active"
+ }
+ },
+ "201": {
+ "body": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "name": "sampleAccessToken",
+ "jwtToken": "sampleJwtToken",
+ "createdAt": "2021-09-28T12:32:33Z",
+ "expiryAt": "2022-09-28T12:32:33Z",
+ "state": "Active"
+ }
+ }
+ }
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Delete.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Delete.json
new file mode 100644
index 000000000000..89786059c5bb
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Delete.json
@@ -0,0 +1,12 @@
+{
+ "title": "AccessTokens_Delete",
+ "operationId": "AccessTokens_Delete",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "accessTokenId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Get.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Get.json
new file mode 100644
index 000000000000..5bcc133167d2
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_Get.json
@@ -0,0 +1,21 @@
+{
+ "title": "AccessTokens_Get",
+ "operationId": "AccessTokens_Get",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "accessTokenId": "00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "name": "sampleAccessToken",
+ "jwtToken": "sampleJwtToken",
+ "createdAt": "2021-09-28T12:32:33Z",
+ "expiryAt": "2022-09-28T12:32:33Z",
+ "state": "Active"
+ }
+ }
+ }
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_List.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_List.json
new file mode 100644
index 000000000000..067ead9616f4
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/AccessTokens_List.json
@@ -0,0 +1,25 @@
+{
+ "title": "AccessTokens_List",
+ "operationId": "AccessTokens_List",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "00000000-0000-0000-0000-000000000000",
+ "name": "sampleAccessToken",
+ "jwtToken": "sampleJwtToken",
+ "createdAt": "2021-09-28T12:32:33Z",
+ "expiryAt": "2022-09-28T12:32:33Z",
+ "state": "Active"
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_Get.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_Get.json
new file mode 100644
index 000000000000..2305831119f2
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_Get.json
@@ -0,0 +1,26 @@
+{
+ "title": "Accounts_Get",
+ "operationId": "Accounts_Get",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/dummyrg/providers/Microsoft.AzurePlaywrightService/accounts/myPlaywrightAccount",
+ "name": "myPlaywrightAccount",
+ "state": "Active",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "subscriptionState": "Registered",
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "location": "westus",
+ "regionalAffinity": "Enabled",
+ "scalableExecution": "Enabled",
+ "reporting": "Disabled",
+ "localAuth": "Enabled"
+ }
+ }
+ }
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_GetBrowsers.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_GetBrowsers.json
new file mode 100644
index 000000000000..c2e9c79dbbb3
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/examples/Accounts_GetBrowsers.json
@@ -0,0 +1,16 @@
+{
+ "title": "Accounts_GetBrowsers",
+ "operationId": "Accounts_GetBrowsers",
+ "parameters": {
+ "api-version": "2024-12-01",
+ "accountId": "sampleAccountId_00000000-0000-0000-0000-000000000000",
+ "os": "Linux"
+ },
+ "responses": {
+ "302": {
+ "headers": {
+ "location": "wss://{region}.api.playwright.microsoft.com/redirectURL?api-version=2024-12-01&os=linux"
+ }
+ }
+ }
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
new file mode 100644
index 000000000000..450c73579f07
--- /dev/null
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
@@ -0,0 +1,887 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft PlaywrightTesting AuthManager Service API",
+ "version": "2024-12-01",
+ "x-typespec-generated": [
+ {
+ "emitter": "@azure-tools/typespec-autorest"
+ }
+ ]
+ },
+ "schemes": [
+ "https"
+ ],
+ "x-ms-parameterized-host": {
+ "hostTemplate": "{endpoint}",
+ "useSchemePrefix": false,
+ "parameters": [
+ {
+ "name": "endpoint",
+ "in": "path",
+ "description": "Supported Azure Playwright Service API Endpoints (protocol and hostname, for example:\n https://{region}.api.playwright.microsoft.com).",
+ "required": true,
+ "type": "string"
+ }
+ ]
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "OAuth2Auth": [
+ "https://playwright.microsoft.com/.default"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "OAuth2Auth": {
+ "type": "oauth2",
+ "flow": "accessCode",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "https://playwright.microsoft.com/.default": ""
+ },
+ "tokenUrl": "https://login.microsoftonline.com/common/v2.0/oauth2/token"
+ }
+ },
+ "tags": [],
+ "paths": {
+ "/accounts/{accountId}": {
+ "get": {
+ "operationId": "Accounts_Get",
+ "description": "Get details of the Azure resource mapped to an account for the given account id. Authorization required is Bearer JWT Access token provided by EntraID.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "accountId",
+ "in": "path",
+ "description": "The account id.",
+ "required": true,
+ "type": "string",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+"
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/Account"
+ },
+ "headers": {
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Accounts_Get": {
+ "$ref": "./examples/Accounts_Get.json"
+ }
+ }
+ }
+ },
+ "/accounts/{accountId}/access-tokens": {
+ "get": {
+ "operationId": "AccessTokens_List",
+ "description": "Lists access-tokens for the given account id. It can use OData query params like $select, $filter, $orderby, $top and $skip. The default page size is 10. Use nextLink in response to fetch more objects in the list. Authorization required is Bearer JWT Access token provided by EntraID.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "accountId",
+ "in": "path",
+ "description": "The account id.",
+ "required": true,
+ "type": "string",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+"
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PagedAccessToken"
+ },
+ "headers": {
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AccessTokens_List": {
+ "$ref": "./examples/AccessTokens_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/accounts/{accountId}/access-tokens/{accessTokenId}": {
+ "get": {
+ "operationId": "AccessTokens_Get",
+ "description": "Gets an access-token for the account with given access-token id. Authorization required is Bearer JWT Access token provided by EntraID.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "accountId",
+ "in": "path",
+ "description": "The account id.",
+ "required": true,
+ "type": "string",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+"
+ },
+ {
+ "name": "accessTokenId",
+ "in": "path",
+ "description": "The access-token id.",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(-[A-Za-z0-9]+)+"
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/AccessToken"
+ },
+ "headers": {
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AccessTokens_Get": {
+ "$ref": "./examples/AccessTokens_Get.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "AccessTokens_CreateOrReplace",
+ "description": "Creates an access-token for the account with given access-token id. Authorization required is Bearer JWT Access token provided by EntraID.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "accountId",
+ "in": "path",
+ "description": "The account id.",
+ "required": true,
+ "type": "string",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+"
+ },
+ {
+ "name": "accessTokenId",
+ "in": "path",
+ "description": "The access-token id.",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(-[A-Za-z0-9]+)+"
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "The resource instance.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AccessToken"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/AccessToken"
+ },
+ "headers": {
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "201": {
+ "description": "The request has succeeded and a new resource has been created as a result.",
+ "schema": {
+ "$ref": "#/definitions/AccessToken"
+ },
+ "headers": {
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AccessTokens_CreateOrReplace": {
+ "$ref": "./examples/AccessTokens_CreateOrReplace.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "AccessTokens_Delete",
+ "description": "Deletes an access-token for the account with given access-token id. Authorization required is Bearer JWT Access token provided by EntraID.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "accountId",
+ "in": "path",
+ "description": "The account id.",
+ "required": true,
+ "type": "string",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+"
+ },
+ {
+ "name": "accessTokenId",
+ "in": "path",
+ "description": "The access-token id.",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(-[A-Za-z0-9]+)+"
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "There is no content to send for this request, but the headers may be useful. ",
+ "headers": {
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AccessTokens_Delete": {
+ "$ref": "./examples/AccessTokens_Delete.json"
+ }
+ }
+ }
+ },
+ "/accounts/{accountId}/browsers": {
+ "get": {
+ "operationId": "Accounts_GetBrowsers",
+ "description": "Gets remote browsers corresponding to given account id and redirects the client for running Playwright tests. Authorization required is Bearer JWT Access token provided by EntraID or Microsoft Playwright Testing Service.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter"
+ },
+ {
+ "name": "accountId",
+ "in": "path",
+ "description": "The account id.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "runId",
+ "in": "query",
+ "description": "The run id provided by client for corresponding remote test run.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "os",
+ "in": "query",
+ "description": "The os provided by client for remote test runs.",
+ "required": false,
+ "type": "string",
+ "default": "Linux",
+ "enum": [
+ "Linux",
+ "Windows"
+ ],
+ "x-ms-enum": {
+ "name": "OS",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Linux",
+ "value": "Linux",
+ "description": "Linux OS."
+ },
+ {
+ "name": "Windows",
+ "value": "Windows",
+ "description": "Windows OS."
+ }
+ ]
+ }
+ },
+ {
+ "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader"
+ }
+ ],
+ "responses": {
+ "302": {
+ "description": "Redirection",
+ "headers": {
+ "location": {
+ "type": "string",
+ "format": "uri",
+ "description": "The redirect target URL to run test on remote browsers."
+ },
+ "x-ms-client-request-id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse"
+ },
+ "headers": {
+ "x-ms-error-code": {
+ "type": "string",
+ "description": "String error code indicating what went wrong."
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Accounts_GetBrowsers": {
+ "$ref": "./examples/Accounts_GetBrowsers.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AccessToken": {
+ "type": "object",
+ "description": "Model of an access-token linked to an account.",
+ "properties": {
+ "id": {
+ "$ref": "#/definitions/Azure.Core.uuid",
+ "description": "The access-token id.",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(-[A-Za-z0-9]+)+",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The access-token name.",
+ "minLength": 3,
+ "maxLength": 64,
+ "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9]{2,63}$",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "jwtToken": {
+ "type": "string",
+ "description": "The access-token value in JWT format.",
+ "readOnly": true
+ },
+ "createdAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The access-token createdAt utcDateTime.",
+ "readOnly": true
+ },
+ "expiryAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The access-token expiryAt utcDateTime.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "state": {
+ "$ref": "#/definitions/AccessTokenState",
+ "description": "The access-token state - Active | Expired.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "id",
+ "name",
+ "createdAt",
+ "expiryAt",
+ "state"
+ ]
+ },
+ "AccessTokenState": {
+ "type": "string",
+ "description": "The access-token state.",
+ "enum": [
+ "Active",
+ "Expired"
+ ],
+ "x-ms-enum": {
+ "name": "AccessTokenState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Active",
+ "value": "Active",
+ "description": "The access-token is Active."
+ },
+ {
+ "name": "Expired",
+ "value": "Expired",
+ "description": "The access-token is Expired."
+ }
+ ]
+ }
+ },
+ "Account": {
+ "type": "object",
+ "description": "An account is a parent resource for most of the other service resources. It's directly mapped to an Azure resource.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The account id.",
+ "maxLength": 64,
+ "pattern": "[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+",
+ "readOnly": true
+ },
+ "resourceId": {
+ "type": "string",
+ "description": "The fully-qualified Azure resource id for the account.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "description": "The account name.",
+ "readOnly": true
+ },
+ "state": {
+ "$ref": "#/definitions/AccountState",
+ "description": "The state of account - Active | Inactive",
+ "readOnly": true
+ },
+ "subscriptionId": {
+ "$ref": "#/definitions/Azure.Core.uuid",
+ "description": "The Azure subscription id for the account.",
+ "readOnly": true
+ },
+ "subscriptionState": {
+ "$ref": "#/definitions/SubscriptionState",
+ "description": "The Azure subscription state - Registered | Unregistered | Warned | Suspended | Deleted",
+ "readOnly": true
+ },
+ "tenantId": {
+ "$ref": "#/definitions/Azure.Core.uuid",
+ "description": "The Azure tenant id of the account.",
+ "readOnly": true
+ },
+ "location": {
+ "type": "string",
+ "description": "The account resource location in Azure, for eg. eastus, southeastasia.",
+ "readOnly": true
+ },
+ "regionalAffinity": {
+ "type": "string",
+ "description": "This property sets the connection region for Playwright client workers to cloud-hosted browsers. If enabled, workers connect to browsers in the closest Azure region, ensuring lower latency. If disabled, workers connect to browsers in the Azure region in which the workspace was initially created.",
+ "default": "Enabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "EnablementStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enabled",
+ "value": "Enabled",
+ "description": "The feature is Enabled."
+ },
+ {
+ "name": "Disabled",
+ "value": "Disabled",
+ "description": "The feature is Disabled."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "scalableExecution": {
+ "type": "string",
+ "description": "When enabled, Playwright client workers can connect to cloud-hosted browsers. This can increase the number of parallel workers for a test run, significantly minimizing test completion durations.",
+ "default": "Enabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "EnablementStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enabled",
+ "value": "Enabled",
+ "description": "The feature is Enabled."
+ },
+ {
+ "name": "Disabled",
+ "value": "Disabled",
+ "description": "The feature is Disabled."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "reporting": {
+ "type": "string",
+ "description": "When enabled, this feature allows the workspace to upload and display test results, including artifacts like traces and screenshots, in the Playwright portal. This enables faster and more efficient troubleshooting.",
+ "default": "Enabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "EnablementStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enabled",
+ "value": "Enabled",
+ "description": "The feature is Enabled."
+ },
+ {
+ "name": "Disabled",
+ "value": "Disabled",
+ "description": "The feature is Disabled."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "localAuth": {
+ "type": "string",
+ "description": "When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations.",
+ "default": "Disabled",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "EnablementStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enabled",
+ "value": "Enabled",
+ "description": "The feature is Enabled."
+ },
+ {
+ "name": "Disabled",
+ "value": "Disabled",
+ "description": "The feature is Disabled."
+ }
+ ]
+ },
+ "readOnly": true
+ }
+ },
+ "required": [
+ "id",
+ "resourceId",
+ "name",
+ "state",
+ "subscriptionId",
+ "subscriptionState",
+ "tenantId",
+ "location"
+ ]
+ },
+ "AccountState": {
+ "type": "string",
+ "description": "The account state.",
+ "enum": [
+ "Active",
+ "Inactive"
+ ],
+ "x-ms-enum": {
+ "name": "AccountState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Active",
+ "value": "Active",
+ "description": "The account is Active."
+ },
+ {
+ "name": "Inactive",
+ "value": "Inactive",
+ "description": "The account is Inactive."
+ }
+ ]
+ }
+ },
+ "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.uuid": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Universally Unique Identifier"
+ },
+ "PagedAccessToken": {
+ "type": "object",
+ "description": "Paged collection of AccessToken items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The AccessToken items on this page",
+ "items": {
+ "$ref": "#/definitions/AccessToken"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "SubscriptionState": {
+ "type": "string",
+ "description": "The Azure subscription state.",
+ "enum": [
+ "Registered",
+ "Warned",
+ "Suspended",
+ "Deleted",
+ "Unregistered"
+ ],
+ "x-ms-enum": {
+ "name": "SubscriptionState",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Registered",
+ "value": "Registered",
+ "description": "The subscription state is Registered."
+ },
+ {
+ "name": "Warned",
+ "value": "Warned",
+ "description": "The subscription state is Warned."
+ },
+ {
+ "name": "Suspended",
+ "value": "Suspended",
+ "description": "The subscription state is Suspended."
+ },
+ {
+ "name": "Deleted",
+ "value": "Deleted",
+ "description": "The subscription state is Deleted."
+ },
+ {
+ "name": "Unregistered",
+ "value": "Unregistered",
+ "description": "The subscription state is Unregistered."
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "Azure.Core.ClientRequestIdHeader": {
+ "name": "x-ms-client-request-id",
+ "in": "header",
+ "description": "An opaque, globally-unique, client-generated string identifier for the request.",
+ "required": false,
+ "type": "string",
+ "format": "uuid",
+ "x-ms-parameter-location": "method",
+ "x-ms-client-name": "clientRequestId"
+ },
+ "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/playwrighttesting/data-plane/readme.md b/specification/playwrighttesting/data-plane/readme.md
index 75117f82cfde..f45a484c1af7 100644
--- a/specification/playwrighttesting/data-plane/readme.md
+++ b/specification/playwrighttesting/data-plane/readme.md
@@ -26,10 +26,38 @@ These are the global settings for the playwrighttesting.
```yaml
openapi-type: data-plane
-tag: package-2023-10-01-preview
-title: [[Title]]
+tag: package-2024-12-01
+title: PlaywrightTestingClient
security: AADToken
-security-scopes: [[SecurityScopes]]
+#security-scopes: [[SecurityScopes]]
+```
+
+### Tag: package-2024-12-01
+
+These settings apply only when `--tag=package-2024-12-01` is specified on the command line.
+
+```yaml $(tag) == 'package-2024-12-01'
+input-file:
+ - Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
+suppressions:
+ - code: ValidResponseCodeRequired
+ from: playwrighttesting.json
+ reason: Need 302 response code as a product requirement to redirect the client for test execution on remote browsers provided by the service.
+ where:
+ - $.paths["/accounts/{accountId}/browsers"].get.responses
+ - code: SecurityDefinitionDescription
+ from: playwrighttesting.json
+ reason: Seems like a tool bug, as the description is added in the TypeSpec already.
+ - code: PathParameterSchema
+ from: playwrighttesting.json
+ reason: No provision to define path parameter schema for custom routes of rpc operations in Typespec.
+ where:
+ - $.paths["/accounts/{accountId}/browsers"].get.parameters[1]
+ - code: OperationId
+ from: playwrighttesting.json
+ reason: Inconsistency with Typespec nomenclature to use create and replace for put while update is used for patch api.
+ where:
+ - $.paths["/accounts/{accountId}/access-tokens/{accessTokenId}"].put.operationId
```
### Tag: package-2023-10-01-preview
diff --git a/specification/playwrighttesting/resource-manager/Microsoft.AzurePlaywrightService/stable/2024-12-01/playwrighttesting.json b/specification/playwrighttesting/resource-manager/Microsoft.AzurePlaywrightService/stable/2024-12-01/playwrighttesting.json
index dd5351642022..0321c9944190 100644
--- a/specification/playwrighttesting/resource-manager/Microsoft.AzurePlaywrightService/stable/2024-12-01/playwrighttesting.json
+++ b/specification/playwrighttesting/resource-manager/Microsoft.AzurePlaywrightService/stable/2024-12-01/playwrighttesting.json
@@ -870,7 +870,7 @@
},
"localAuth": {
"type": "string",
- "description": "When enabled, this feature allows the workspace to use local auth(through access key) for authentication of test runs.",
+ "description": "When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations.",
"default": "Disabled",
"enum": [
"Enabled",
@@ -988,7 +988,7 @@
},
"localAuth": {
"$ref": "#/definitions/EnablementStatus",
- "description": "When enabled, this feature allows the workspace to use local auth(through access key) for authentication of test runs."
+ "description": "When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations."
}
}
},
From 698431b03e6c6f2142c0edae33000902eb5340d2 Mon Sep 17 00:00:00 2001
From: YunsongB <39966392+YunsongB@users.noreply.github.com>
Date: Tue, 7 Jan 2025 08:46:01 -0700
Subject: [PATCH 061/128] Add AOAI 2024-12-01-preview API version (#31934)
* Add AOAI 2024-12-01-preview API version;
* Reformat file; fix spelling;
* Add back status and status_details for File in authoring;
* Refine the description of OYDonYourDataContextProperty;
* Revert the description change;
---------
Co-authored-by: Yunsong Bai
---
.../2024-12-01-preview/azureopenai.json | 3968 +++++
.../2024-12-01-preview/azureopenai.yaml | 2671 ++++
.../examples/cancel_batch.json | 41 +
.../examples/cancel_batch.yaml | 33 +
.../examples/cancel_finetuning_job.json | 37 +
.../examples/cancel_finetuning_job.yaml | 34 +
.../examples/delete_file.json | 18 +
.../examples/delete_file.yaml | 12 +
.../examples/delete_finetuning_job.json | 13 +
.../examples/delete_finetuning_job.yaml | 9 +
.../examples/get_batch.json | 41 +
.../examples/get_batch.yaml | 33 +
.../examples/get_batches.json | 50 +
.../examples/get_batches.yaml | 39 +
.../2024-12-01-preview/examples/get_file.json | 21 +
.../2024-12-01-preview/examples/get_file.yaml | 16 +
.../examples/get_file_content.json | 14 +
.../examples/get_file_content.yaml | 9 +
.../examples/get_files.json | 33 +
.../examples/get_files.yaml | 24 +
.../examples/get_finetuning_job.json | 42 +
.../examples/get_finetuning_job.yaml | 36 +
.../get_finetuning_job_checkpoints.json | 70 +
.../get_finetuning_job_checkpoints.yaml | 54 +
.../examples/get_finetuning_job_events.json | 43 +
.../examples/get_finetuning_job_events.yaml | 33 +
.../examples/get_finetuning_jobs.json | 47 +
.../examples/get_finetuning_jobs.yaml | 38 +
.../examples/get_ingestion_job.json | 27 +
.../examples/get_ingestion_job.yaml | 21 +
.../examples/get_ingestion_job_run.json | 30 +
.../examples/get_ingestion_job_run.yaml | 18 +
.../examples/get_model_base.json | 31 +
.../examples/get_model_base.yaml | 25 +
.../examples/get_model_finetune.json | 32 +
.../examples/get_model_finetune.yaml | 24 +
.../examples/get_models.json | 54 +
.../examples/get_models.yaml | 41 +
.../examples/import_file.json | 27 +
.../examples/import_file.yaml | 47 +
.../examples/list_ingestion_job_runs.json | 29 +
.../examples/list_ingestion_job_runs.yaml | 16 +
.../examples/list_ingestion_jobs.json | 22 +
.../examples/list_ingestion_jobs.yaml | 12 +
.../examples/post_batch.json | 52 +
.../examples/post_batch.yaml | 41 +
.../examples/post_finetuning_job.json | 54 +
.../examples/post_finetuning_job.yaml | 51 +
.../examples/put_ingestion_job_sc.json | 72 +
.../examples/put_ingestion_job_sc.yaml | 51 +
.../examples/put_ingestion_job_uc.json | 46 +
.../examples/put_ingestion_job_uc.yaml | 39 +
.../examples/upload_file.json | 24 +
.../examples/upload_file.yaml | 19 +
.../examples/upload_file_cancel.json | 31 +
.../examples/upload_file_cancel.yaml | 25 +
.../examples/upload_file_complete.json | 37 +
.../examples/upload_file_complete.yaml | 30 +
.../examples/upload_file_part.json | 22 +
.../examples/upload_file_part.yaml | 16 +
.../examples/upload_file_start.json | 38 +
.../examples/upload_file_start.yaml | 30 +
.../AzureOpenAI/authoring/readme.md | 20 +
.../examples/audio_speech.json | 18 +
.../examples/audio_speech.yaml | 12 +
.../examples/audio_transcription_object.json | 15 +
.../examples/audio_transcription_object.yaml | 9 +
.../examples/audio_transcription_text.json | 15 +
.../examples/audio_transcription_text.yaml | 19 +
.../examples/audio_translation_object.json | 16 +
.../examples/audio_translation_object.yaml | 21 +
.../examples/audio_translation_text.json | 15 +
.../examples/audio_translation_text.yaml | 21 +
.../examples/cancel_run.json | 46 +
.../examples/cancel_run.yaml | 35 +
.../cancel_vector_store_file_batch.json | 27 +
.../cancel_vector_store_file_batch.yaml | 20 +
.../examples/chat_completions.json | 43 +
.../examples/chat_completions.yaml | 45 +
...hat_completions_azure_search_advanced.json | 96 +
...hat_completions_azure_search_advanced.yaml | 63 +
...completions_azure_search_image_vector.json | 58 +
...completions_azure_search_image_vector.yaml | 36 +
...chat_completions_azure_search_minimum.json | 63 +
...chat_completions_azure_search_minimum.yaml | 39 +
.../examples/chat_completions_cosmos_db.json | 77 +
.../examples/chat_completions_cosmos_db.yaml | 49 +
.../chat_completions_elasticsearch.json | 65 +
.../chat_completions_elasticsearch.yaml | 41 +
.../examples/chat_completions_mongo_db.json | 80 +
.../examples/chat_completions_mongo_db.yaml | 52 +
.../examples/chat_completions_pinecone.json | 77 +
.../examples/chat_completions_pinecone.yaml | 51 +
.../examples/completions.json | 38 +
.../examples/create_assistant.json | 39 +
.../examples/create_assistant.yaml | 26 +
.../examples/create_message.json | 36 +
.../examples/create_message.yaml | 25 +
.../examples/create_run.json | 49 +
.../examples/create_run.yaml | 38 +
.../examples/create_thread.json | 17 +
.../examples/create_thread.yaml | 11 +
.../examples/create_thread_and_run.json | 54 +
.../examples/create_thread_and_run.yaml | 42 +
.../examples/create_vector_store.json | 28 +
.../examples/create_vector_store.yaml | 20 +
.../examples/create_vector_store_file.json | 24 +
.../examples/create_vector_store_file.yaml | 17 +
.../create_vector_store_file_batch.json | 30 +
.../create_vector_store_file_batch.yaml | 22 +
.../examples/delete_assistant.json | 17 +
.../examples/delete_assistant.yaml | 11 +
.../examples/delete_assistant_file.json | 18 +
.../examples/delete_assistant_file.yaml | 12 +
.../examples/delete_message.json | 18 +
.../examples/delete_message.yaml | 12 +
.../examples/delete_thread.json | 17 +
.../examples/delete_thread.yaml | 11 +
.../examples/delete_vector_store.json | 17 +
.../examples/delete_vector_store.yaml | 11 +
.../examples/delete_vector_store_file.json | 18 +
.../examples/delete_vector_store_file.yaml | 12 +
.../examples/embeddings.json | 1566 ++
.../examples/embeddings.yaml | 1553 ++
.../examples/generated_audio_speech.json | 19 +
.../generated_audio_transcription_object.json | 17 +
.../generated_audio_transcription_text.json | 16 +
.../generated_audio_translation_object.json | 17 +
.../generated_audio_translation_text.json | 16 +
.../examples/generated_chat_completions.json | 45 +
.../examples/generated_completions.json | 38 +
.../examples/generated_embeddings.json | 1567 ++
...extensions_chat_completions_aml_index.json | 62 +
...hat_completions_azure_search_advanced.json | 86 +
...completions_azure_search_image_vector.json | 67 +
...chat_completions_azure_search_minimum.json | 61 +
...extensions_chat_completions_cosmos_db.json | 78 +
...nsions_chat_completions_elasticsearch.json | 66 +
..._extensions_chat_completions_pinecone.json | 78 +
.../examples/generated_image_generation.json | 31 +
.../examples/get_assistant_file.json | 19 +
.../examples/get_assistant_file.yaml | 13 +
.../examples/get_message.json | 33 +
.../examples/get_message.yaml | 23 +
.../examples/get_message_file.json | 20 +
.../examples/get_message_file.yaml | 14 +
.../2024-12-01-preview/examples/get_run.json | 32 +
.../2024-12-01-preview/examples/get_run.yaml | 26 +
.../examples/get_run_step.json | 40 +
.../examples/get_run_step.yaml | 31 +
.../examples/image_generation.json | 71 +
.../examples/image_generation.yaml | 49 +
.../examples/list_assistant_files.json | 26 +
.../examples/list_assistant_files.yaml | 17 +
.../examples/list_assistants.json | 70 +
.../examples/list_assistants.yaml | 54 +
.../examples/list_message_files.json | 33 +
.../examples/list_message_files.yaml | 22 +
.../examples/list_messages.json | 60 +
.../examples/list_messages.yaml | 41 +
.../examples/list_run_steps.json | 47 +
.../examples/list_run_steps.yaml | 35 +
.../examples/list_runs.json | 112 +
.../examples/list_runs.yaml | 85 +
.../list_vector_store_file_batch.json | 33 +
.../list_vector_store_file_batch.yaml | 22 +
.../examples/list_vector_store_files.json | 32 +
.../examples/list_vector_store_files.yaml | 21 +
.../examples/list_vector_stores.json | 47 +
.../examples/list_vector_stores.yaml | 51 +
.../examples/modify_assistant.json | 44 +
.../examples/modify_assistant.yaml | 29 +
.../examples/modify_message.json | 42 +
.../examples/modify_message.yaml | 29 +
.../examples/modify_run.json | 66 +
.../examples/modify_run.yaml | 55 +
.../examples/modify_thread.json | 28 +
.../examples/modify_thread.yaml | 19 +
.../examples/modify_vector_store.json | 29 +
.../examples/modify_vector_store.yaml | 21 +
.../examples/retrieve_assistant.json | 30 +
.../examples/retrieve_assistant.yaml | 21 +
.../examples/retrieve_message.json | 33 +
.../examples/retrieve_message.yaml | 23 +
.../examples/retrieve_run.json | 51 +
.../examples/retrieve_run.yaml | 40 +
.../examples/retrieve_run_step.json | 40 +
.../examples/retrieve_run_step.yaml | 31 +
.../examples/retrieve_thread.json | 23 +
.../examples/retrieve_thread.yaml | 15 +
.../examples/retrieve_vector_store.json | 17 +
.../examples/retrieve_vector_store.yaml | 11 +
.../examples/retrieve_vector_store_file.json | 21 +
.../examples/retrieve_vector_store_file.yaml | 15 +
.../retrieve_vector_store_file_batch.json | 27 +
.../retrieve_vector_store_file_batch.yaml | 20 +
.../examples/submit_tool_outputs_to_run.json | 77 +
.../examples/submit_tool_outputs_to_run.yaml | 57 +
.../preview/2024-12-01-preview/inference.json | 12335 ++++++++++++++++
.../preview/2024-12-01-preview/inference.yaml | 8586 +++++++++++
.../AzureOpenAI/inference/readme.md | 9 +-
201 files changed, 38952 insertions(+), 1 deletion(-)
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/completions.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_speech.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_object.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_text.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_object.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_text.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_chat_completions.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_completions.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_embeddings.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_aml_index.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_advanced.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_image_vector.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_minimum.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_cosmos_db.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_elasticsearch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_pinecone.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_image_generation.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.yaml
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.json
create mode 100644 specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.yaml
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.json
new file mode 100644
index 000000000000..2a0110cf54ac
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.json
@@ -0,0 +1,3968 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Azure OpenAI API version 2024-12-01-preview",
+ "description": "APIs for fine-tuning and managing deployments of OpenAI models.",
+ "version": "2024-12-01-preview"
+ },
+ "paths": {
+ "/batches": {
+ "get": {
+ "tags": [
+ "Batch:"
+ ],
+ "summary": "Gets a list of all batches owned by the Azure OpenAI resource.",
+ "operationId": "Batch_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "after",
+ "description": "Identifier for the last event from the previous pagination request.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "limit",
+ "description": "Number of batches to retrieve. Defaults to 20.",
+ "type": "integer",
+ "format": "int32",
+ "default": 20
+ },
+ {
+ "in": "query",
+ "name": "$filter",
+ "description": "The OData expression to describe the filtering conditions.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "$orderby",
+ "description": "The OData expression to describe the sorting order.",
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/BatchesList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting all batches owned by this account.": {
+ "$ref": "./examples/get_batches.json"
+ }
+ }
+ },
+ "post": {
+ "tags": [
+ "Batch:"
+ ],
+ "summary": "Creates and executes a batch from an uploaded file of requests.\r\nResponse includes details of the enqueued job including job status.\r\nThe ID of the result file is added to the response once complete.",
+ "operationId": "Batch_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "body",
+ "name": "createBatchRequest",
+ "description": "The specification of the batch to create and execute.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BatchCreateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "The batch has been successfully created.",
+ "schema": {
+ "$ref": "#/definitions/Batch"
+ },
+ "headers": {
+ "deployment-enqueued-tokens": {
+ "description": "Sum of enqueued tokens of all jobs that target to the deployment.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "deployment-maximum-enqueued-tokens": {
+ "description": "Maximum enqueued tokens of the deployment.",
+ "type": "integer",
+ "format": "int64"
+ }
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Creating a batch.": {
+ "$ref": "./examples/post_batch.json"
+ }
+ }
+ }
+ },
+ "/batches/{batch-id}": {
+ "get": {
+ "tags": [
+ "Batch:"
+ ],
+ "summary": "Gets details for a single batch specified by the given batch-id.",
+ "operationId": "Batch_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "batch-id",
+ "description": "The identifier of the batch.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/Batch"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting a batch.": {
+ "$ref": "./examples/get_batch.json"
+ }
+ }
+ }
+ },
+ "/batches/{batch-id}/cancel": {
+ "post": {
+ "tags": [
+ "Batch:"
+ ],
+ "summary": "Cancels the processing of the batch specified by the given batch-id.",
+ "operationId": "Batch_Cancel",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "batch-id",
+ "description": "The identifier of the batch.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The batch has been successfully canceled.",
+ "schema": {
+ "$ref": "#/definitions/Batch"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Canceling a batch.": {
+ "$ref": "./examples/cancel_batch.json"
+ }
+ }
+ }
+ },
+ "/files": {
+ "get": {
+ "tags": [
+ "Files:"
+ ],
+ "summary": "Gets a list of all files owned by the Azure OpenAI resource.\r\nThese include user uploaded content like files with purpose \"fine-tune\" for training or validation of fine-tunes models\r\nas well as files that are generated by the service such as \"fine-tune-results\" which contains various metrics for the corresponding fine-tune job.",
+ "operationId": "Files_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "purpose",
+ "description": "Only return files with the given purpose.",
+ "type": "string",
+ "enum": [
+ "fine-tune",
+ "fine-tune-results",
+ "assistants",
+ "assistants_output",
+ "batch",
+ "batch_output"
+ ],
+ "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."
+ },
+ {
+ "value": "assistants",
+ "description": "This file contains data to be used in assistants."
+ },
+ {
+ "value": "assistants_output",
+ "description": "This file contains the results of an assistant."
+ },
+ {
+ "value": "batch",
+ "description": "This file contains the input data for a batch."
+ },
+ {
+ "value": "batch_output",
+ "description": "This file contains the results of a batch."
+ }
+ ]
+ }
+ },
+ {
+ "$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",
+ "assistants",
+ "assistants_output",
+ "batch"
+ ],
+ "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."
+ },
+ {
+ "value": "assistants",
+ "description": "This file contains data to be used in assistants."
+ },
+ {
+ "value": "assistants_output",
+ "description": "This file contains the results of an assistant."
+ },
+ {
+ "value": "batch",
+ "description": "This file contains the input data for a batch."
+ }
+ ]
+ }
+ },
+ {
+ "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/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"
+ }
+ }
+ }
+ },
+ "/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": {
+ "200": {
+ "description": "The file was successfully deleted.",
+ "schema": {
+ "$ref": "#/definitions/FileDelete"
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "/fine_tuning/jobs": {
+ "get": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Gets a list of all fine-tune jobs owned by the Azure OpenAI resource.\r\nThe details that are returned for each fine-tune job contain besides its identifier\r\nthe base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded.",
+ "operationId": "FineTuning_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "query",
+ "name": "after",
+ "description": "Identifier for the last event from the previous pagination request.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "limit",
+ "description": "Number of events to retrieve. Defaults to 20.",
+ "type": "integer",
+ "format": "int32",
+ "default": 20
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTuningJobList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting all fine tuning jobs owned by this account.": {
+ "$ref": "./examples/get_finetuning_jobs.json"
+ }
+ }
+ },
+ "post": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Creates a job that fine-tunes a specified model from a given training file.\r\nResponse includes details of the enqueued job including job status and hyper parameters.\r\nThe name of the fine-tuned model is added to the response once complete.",
+ "operationId": "FineTuning_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "body",
+ "name": "fineTuningJob",
+ "description": "The specification of the fine-tuned model to create.\r\nRequired parameters are the base model and the training file to use.\r\nOptionally a validation file can be specified to compute validation metrics during training.\r\nHyper parameters will be set to default values or can be optionally specified.\r\nThese include batch size, learning rate multiplier, number of epochs and others.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FineTuningJobCreation"
+ }
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "The fine tune has been successfully created.",
+ "schema": {
+ "$ref": "#/definitions/FineTuningJob"
+ },
+ "headers": {
+ "Location": {
+ "description": "The location of the newly created item.",
+ "type": "string",
+ "format": "url"
+ }
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Creating a fine tuning job.": {
+ "$ref": "./examples/post_finetuning_job.json"
+ }
+ }
+ }
+ },
+ "/fine_tuning/jobs/{fine-tuning-job-id}": {
+ "get": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Gets details for a single fine-tune job specified by the given fine-tune-id.\r\nThe details contain the base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded.",
+ "operationId": "FineTuning_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tuning-job-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTuningJob"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting a fine tuning job.": {
+ "$ref": "./examples/get_finetuning_job.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Deletes the fine-tune job specified by the given fine-tune-id.",
+ "operationId": "FineTuning_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tuning-job-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "The fine tune was successfully deleted."
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Deleting a fine tuning job.": {
+ "$ref": "./examples/delete_finetuning_job.json"
+ }
+ }
+ }
+ },
+ "/fine_tuning/jobs/{fine-tuning-job-id}/cancel": {
+ "post": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Cancels the processing of the fine-tune job specified by the given fine-tune-id.",
+ "operationId": "FineTuning_Cancel",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tuning-job-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The fine tune has been successfully canceled",
+ "schema": {
+ "$ref": "#/definitions/FineTuningJob"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Canceling a fine tuning job.": {
+ "$ref": "./examples/cancel_finetuning_job.json"
+ }
+ }
+ }
+ },
+ "/fine_tuning/jobs/{fine-tuning-job-id}/checkpoints": {
+ "get": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Gets the checkpoints for the fine-tune job specified by the given fine-tune-id.\r\nCheckpoints are created at the end of successful epochs during training.",
+ "operationId": "FineTuning_GetCheckpoints",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tuning-job-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "after",
+ "description": "Identifier for the last checkpoint ID from the previous pagination request.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "limit",
+ "description": "Number of checkpoints to retrieve. Defaults to 10.",
+ "type": "integer",
+ "format": "int32",
+ "default": 10
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTuningJobCheckpointList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting checkpoints of a fine tuning job.": {
+ "$ref": "./examples/get_finetuning_job_checkpoints.json"
+ }
+ }
+ }
+ },
+ "/fine_tuning/jobs/{fine-tuning-job-id}/events": {
+ "get": {
+ "tags": [
+ "Fine-tuning:"
+ ],
+ "summary": "Gets the events for the fine-tune job specified by the given fine-tune-id.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded.",
+ "operationId": "FineTuning_GetEvents",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "fine-tuning-job-id",
+ "description": "The identifier of the fine-tune job.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "after",
+ "description": "Identifier for the last event from the previous pagination request.",
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "limit",
+ "description": "Number of events to retrieve. Defaults to 20.",
+ "type": "integer",
+ "format": "int32",
+ "default": 20
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/FineTuningJobEventList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Getting events of a fine tuning job.": {
+ "$ref": "./examples/get_finetuning_job_events.json"
+ }
+ }
+ }
+ },
+ "/ingestion/jobs": {
+ "get": {
+ "tags": [
+ "Ingestion:"
+ ],
+ "summary": "Lists the ingestion jobs.",
+ "operationId": "IngestionJobs_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "header",
+ "name": "mgmt-user-token",
+ "type": "string",
+ "description": "The token used to access the workspace (needed only for user compute jobs)."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IngestionJobList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all ingestion jobs": {
+ "$ref": "./examples/list_ingestion_jobs.json"
+ }
+ }
+ }
+ },
+ "/ingestion/jobs/{job-id}": {
+ "put": {
+ "tags": [
+ "Ingestion:"
+ ],
+ "summary": "Creates an ingestion job with the specified job id.",
+ "operationId": "IngestionJobs_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "job-id",
+ "required": true,
+ "type": "string",
+ "description": "The id of the job that will be created."
+ },
+ {
+ "in": "header",
+ "name": "mgmt-user-token",
+ "type": "string",
+ "description": "The token used to access the workspace (needed only for user compute jobs)."
+ },
+ {
+ "in": "header",
+ "name": "aml-user-token",
+ "type": "string",
+ "description": "The token used to access the resources within the job in the workspace (needed only for user compute jobs)."
+ },
+ {
+ "in": "body",
+ "name": "ingestionJob",
+ "schema": {
+ "$ref": "#/definitions/IngestionJob"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IngestionJob"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a system-compute ingestion job": {
+ "$ref": "./examples/put_ingestion_job_sc.json"
+ },
+ "Create a user-compute ingestion job": {
+ "$ref": "./examples/put_ingestion_job_uc.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "Ingestion:"
+ ],
+ "summary": "Gets the details of the specified job id.",
+ "operationId": "IngestionJobs_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "job-id",
+ "required": true,
+ "description": "The id of the job.",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IngestionJob"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get ingestion job": {
+ "$ref": "./examples/get_ingestion_job.json"
+ }
+ }
+ }
+ },
+ "/ingestion/jobs/{job-id}/runs": {
+ "get": {
+ "tags": [
+ "Ingestion:"
+ ],
+ "summary": "Lists the runs of the specified job id.",
+ "operationId": "IngestionJobRuns_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "job-id",
+ "required": true,
+ "description": "The id of the job.",
+ "type": "string"
+ },
+ {
+ "in": "header",
+ "name": "mgmt-user-token",
+ "type": "string",
+ "description": "The token used to access the workspace (needed only for user compute jobs)."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IngestionJobRunList"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List ingestion job runs": {
+ "$ref": "./examples/list_ingestion_job_runs.json"
+ }
+ }
+ }
+ },
+ "/ingestion/jobs/{job-id}/runs/{run-id}": {
+ "get": {
+ "tags": [
+ "Ingestion:"
+ ],
+ "summary": "Gets the details of the specified run id as part of the specified job id.",
+ "operationId": "IngestionJobRuns_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "path",
+ "name": "job-id",
+ "required": true,
+ "description": "The id of the job.",
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "run-id",
+ "required": true,
+ "description": "The id of the run.",
+ "type": "string"
+ },
+ {
+ "in": "header",
+ "name": "mgmt-user-token",
+ "type": "string",
+ "description": "The token used to access the workspace (needed only for user compute jobs)."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/IngestionJobRun"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get ingestion job runs": {
+ "$ref": "./examples/get_ingestion_job_run.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"
+ }
+ }
+ }
+ },
+ "/uploads": {
+ "post": {
+ "tags": [
+ "UploadFile:"
+ ],
+ "summary": "An intermediate Upload object is created, allowing you to add Parts to it. Currently, an Upload size can be a maximum of 9 GB in total and will expire two hours after being created.\r\nAfter the Upload is completed a File object will be generated, containing all the uploaded parts. This File object can then be used across our platform just like any other file.",
+ "operationId": "UploadFile_Start",
+ "consumes": [
+ "application/json",
+ "text/json",
+ "application/*+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "body",
+ "name": "requestBody",
+ "description": "The definition of the file to create including its purpose and the location on the local machine.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UploadFileStartBody"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The upload has been successfully created.",
+ "schema": {
+ "$ref": "#/definitions/UploadResource"
+ },
+ "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": {
+ "Start a large file upload operation.": {
+ "$ref": "./examples/upload_file_start.json"
+ }
+ }
+ }
+ },
+ "/uploads/{upload-id}/cancel": {
+ "post": {
+ "tags": [
+ "UploadFile:"
+ ],
+ "summary": "Cancels the Upload, and will lead to all uploaded parts to be deleted asynchronously.\r\nNo Parts may be added after an Upload is cancelled.",
+ "operationId": "UploadFile_Cancel",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "upload-id",
+ "description": "The identifier of the upload.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/UploadResource"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Cancel a large file upload operation.": {
+ "$ref": "./examples/upload_file_cancel.json"
+ }
+ }
+ }
+ },
+ "/uploads/{upload-id}/complete": {
+ "post": {
+ "tags": [
+ "UploadFile:"
+ ],
+ "summary": "This completes the Upload, and the returned Upload object contains a nested File object that is ready for use across the platform.\r\nYou can define the order of the Parts by providing an ordered list of Part IDs.\r\nThe total number of bytes uploaded must match the size originally specified when creating the Upload object.\r\nAfter this operation no additional Parts can be added once the Upload is completed.",
+ "operationId": "UploadFile_Complete",
+ "consumes": [
+ "application/json",
+ "text/json",
+ "application/*+json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "upload-id",
+ "description": "The identifier of the upload.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "body",
+ "name": "requestBody",
+ "description": "The definition of the file to create including its purpose and the location on the local machine.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/UploadFileCompleteBody"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/UploadResource"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Complete and validate a large file upload operation.": {
+ "$ref": "./examples/upload_file_complete.json"
+ }
+ }
+ }
+ },
+ "/uploads/{upload-id}/parts": {
+ "post": {
+ "tags": [
+ "UploadFile:"
+ ],
+ "summary": "Adds a Part to an Upload object, where each Part represents a segment of the file you are uploading.\r\nEach Part can be up to the standard size limit for file upload, based on the File Purpose. You can continue adding Parts until reaching the Upload size limit of 9 GB.",
+ "operationId": "UploadFile_Part",
+ "consumes": [
+ "multipart/form-data"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "upload-id",
+ "description": "The identifier of the upload.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/apiVersionQueryParameter"
+ },
+ {
+ "in": "formData",
+ "name": "data",
+ "required": true,
+ "type": "file"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/UploadPartResource"
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "schema": {
+ "$ref": "#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Upload a part of large file upload operation.": {
+ "$ref": "./examples/upload_file_part.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AzureAISearchIndex": {
+ "description": "Azure AI Search Index.",
+ "required": [
+ "connectionId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/TargetIndex"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "connectionId": {
+ "type": "string",
+ "description": "The id of the connection pointing to the Azure AI Search Index."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "AzureAISearch"
+ },
+ "BaseConnection": {
+ "title": "BaseConnection",
+ "description": "A connection to a resource.",
+ "type": "object",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/ConnectionType"
+ }
+ },
+ "discriminator": "kind"
+ },
+ "Batch": {
+ "title": "Batch",
+ "description": "Defines the values of a batch.",
+ "required": [
+ "id",
+ "input_file_id"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string"
+ },
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "endpoint": {
+ "description": "The API endpoint used by the batch.",
+ "type": "string",
+ "readOnly": true
+ },
+ "errors": {
+ "$ref": "#/definitions/BatchErrors"
+ },
+ "input_file_id": {
+ "description": "The ID of the input file for the batch.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "completion_window": {
+ "description": "The time frame within which the batch should be processed.",
+ "type": "string"
+ },
+ "status": {
+ "$ref": "#/definitions/BatchStatus"
+ },
+ "output_file_id": {
+ "description": "The ID of the file containing outputs of successfully executed requests.",
+ "type": "string"
+ },
+ "error_file_id": {
+ "description": "The ID of the file containing outputs of requests with errors.",
+ "type": "string"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "in_progress_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch started progressing (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "expires_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch will expire (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "finalizing_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch started finalizing (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "completed_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch was completed (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "failed_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch failed (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "expired_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch expired (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "cancelling_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch started cancelling (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "cancelled_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this batch was cancelled (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "request_counts": {
+ "$ref": "#/definitions/BatchRequestCounts"
+ },
+ "metadata": {
+ "description": "A set of key-value pairs that can be attached to the batch. This can be useful for storing additional information about the batch in a structured format.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "BatchCreateRequest": {
+ "title": "BatchCreateRequest",
+ "description": "Defines the request to create a batch.",
+ "required": [
+ "input_file_id",
+ "endpoint",
+ "completion_window"
+ ],
+ "type": "object",
+ "properties": {
+ "input_file_id": {
+ "description": "The ID if the input file for the batch.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "endpoint": {
+ "description": "The API endpoint used by the batch.",
+ "type": "string"
+ },
+ "completion_window": {
+ "description": "The time frame within which the batch should be processed.",
+ "type": "string"
+ },
+ "metadata": {
+ "description": "A set of key-value pairs that can be attached to the batch. This can be useful for storing additional information about the batch in a structured format.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "BatchErrorData": {
+ "title": "BatchErrorData",
+ "description": "Error information for a failure in batch.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "An error code identifying the error type.",
+ "type": "string"
+ },
+ "message": {
+ "description": "A human-readable message providing more details about the error.",
+ "type": "string"
+ },
+ "param": {
+ "description": "The name of the parameter that caused the error, if applicable (can be null).",
+ "type": "string"
+ },
+ "line": {
+ "description": "The line number of the input file where the error occurred, if applicable (can be null).",
+ "type": "string"
+ }
+ }
+ },
+ "BatchErrors": {
+ "title": "BatchErrors",
+ "description": "For batches that have failed, this will contain more information on the cause of the failures.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "description": "The type of the errors object. This is always 'list'.",
+ "type": "string"
+ },
+ "data": {
+ "$ref": "#/definitions/BatchErrorData"
+ }
+ }
+ },
+ "BatchRequestCounts": {
+ "title": "BatchRequestCounts",
+ "description": "The request counts for different statuses within the batch.",
+ "type": "object",
+ "properties": {
+ "total": {
+ "description": "The total number of requests in the batch.",
+ "type": "integer"
+ },
+ "completed": {
+ "description": "The number of requests in the batch that have been completed successfully.",
+ "type": "integer"
+ },
+ "failed": {
+ "description": "The number of requests in the batch that have failed.",
+ "type": "integer"
+ }
+ }
+ },
+ "BatchStatus": {
+ "title": "BatchStatus",
+ "description": "The status of a batch.",
+ "enum": [
+ "validating",
+ "failed",
+ "in_progress",
+ "finalizing",
+ "completed",
+ "expired",
+ "cancelling",
+ "cancelled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "BatchStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "validating",
+ "description": "The input file is being validated before the batch can begin."
+ },
+ {
+ "value": "failed",
+ "description": "The input file has failed the validation process."
+ },
+ {
+ "value": "in_progress",
+ "description": "The input file was successfully validated and the batch is currently being executed."
+ },
+ {
+ "value": "finalizing",
+ "description": "The batch has completed and the results are being prepared."
+ },
+ {
+ "value": "completed",
+ "description": "The batch has been completed and the results are ready."
+ },
+ {
+ "value": "expired",
+ "description": "The batch was not able to complete within the 24-hour time window."
+ },
+ {
+ "value": "cancelling",
+ "description": "Cancellation of the batch has been initiated."
+ },
+ {
+ "value": "cancelled",
+ "description": "The batch was cancelled."
+ }
+ ]
+ }
+ },
+ "BatchesList": {
+ "title": "BatchList",
+ "description": "Represents a list of batches.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Batch"
+ }
+ },
+ "first_id": {
+ "description": "The id of the first batch in the list of batches returned.",
+ "type": "string"
+ },
+ "last_id": {
+ "description": "The id of the last batch in the list of batches returned.",
+ "type": "string"
+ },
+ "has_more": {
+ "description": "A value indicating whether the list contains more elements than returned.",
+ "type": "boolean"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "ChunkingSettings": {
+ "type": "object",
+ "title": "ChunkingSettings",
+ "description": "Chunking settings",
+ "properties": {
+ "maxChunkSizeInTokens": {
+ "type": "integer"
+ }
+ }
+ },
+ "CompletionAction": {
+ "type": "string",
+ "description": "The completion action.",
+ "enum": [
+ "cleanUpTempAssets",
+ "keepAllAssets"
+ ],
+ "x-ms-enum": {
+ "name": "IngestionJobCompletionAction",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "keepAllAssets",
+ "value": "keepAllAssets",
+ "description": "Will not clean up any of the intermediate assets created during the ingestion process."
+ },
+ {
+ "name": "cleanUpTempAssets",
+ "value": "cleanUpTempAssets",
+ "description": "Will clean up intermediate assets created during the ingestion process."
+ }
+ ]
+ }
+ },
+ "ComputeType": {
+ "type": "string",
+ "description": "The compute type.",
+ "enum": [
+ "ServerlessCompute",
+ "CustomCompute"
+ ],
+ "x-ms-enum": {
+ "name": "ComputeType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "ServerlessCompute",
+ "value": "ServerlessCompute",
+ "description": "Serverless user compute."
+ },
+ {
+ "name": "CustomCompute",
+ "value": "CustomCompute",
+ "description": "Custom user compute."
+ }
+ ]
+ }
+ },
+ "ConnectionStringConnection": {
+ "description": "Connection string connection.",
+ "required": [
+ "connectionString"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "connectionString": {
+ "type": "string",
+ "description": "Connection string"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "ConnectionString"
+ },
+ "ConnectionType": {
+ "type": "string",
+ "description": "The connection type.",
+ "enum": [
+ "EndpointWithKey",
+ "ConnectionString",
+ "EndpointWithManagedIdentity",
+ "WorkspaceConnection",
+ "RelativeConnection"
+ ],
+ "x-ms-enum": {
+ "name": "ConnectionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "EndpointWithKey",
+ "value": "EndpointWithKey",
+ "description": "Endpoint and key connection."
+ },
+ {
+ "name": "ConnectionString",
+ "value": "ConnectionString",
+ "description": "Connection string."
+ },
+ {
+ "name": "EndpointWithManagedIdentity",
+ "value": "EndpointWithManagedIdentity",
+ "description": "Endpoint and managed identity."
+ },
+ {
+ "name": "WorkspaceConnection",
+ "value": "WorkspaceConnection",
+ "description": "AML Workspace connection."
+ },
+ {
+ "name": "RelativeConnection",
+ "value": "RelativeConnection",
+ "description": "Relative deployment"
+ }
+ ]
+ }
+ },
+ "CosmosDBIndex": {
+ "description": "CosmosDB Index.",
+ "required": [
+ "connectionId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/TargetIndex"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "connectionId": {
+ "type": "string",
+ "description": "The id of the connection pointing to the cosmos DB."
+ },
+ "collectionName": {
+ "type": "string",
+ "description": "The name of the cosmos DB collection."
+ },
+ "databaseName": {
+ "type": "string",
+ "description": "The name of the cosmos DB database."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "CosmosDB"
+ },
+ "CrawlingSettings": {
+ "type": "object",
+ "title": "CrawlingSettings",
+ "description": "Crawling settings",
+ "properties": {
+ "maxCrawlDepth": {
+ "type": "integer"
+ },
+ "maxCrawlTimeInMins": {
+ "type": "integer"
+ },
+ "maxDownloadTimeInMins": {
+ "type": "integer"
+ },
+ "maxFileSize": {
+ "type": "integer"
+ },
+ "maxRedirects": {
+ "type": "integer"
+ },
+ "maxFiles": {
+ "type": "integer"
+ }
+ }
+ },
+ "CustomCompute": {
+ "description": "Custom compute.",
+ "required": [
+ "computeId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/JobCompute"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "computeId": {
+ "type": "string",
+ "description": "Id of the custom compute"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "CustomCompute"
+ },
+ "DeploymentConnection": {
+ "description": "Relative deployment connection.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseConnection"
+ }
+ ],
+ "x-ms-discriminator-value": "RelativeConnection"
+ },
+ "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"
+ }
+ }
+ },
+ "EndpointKeyConnection": {
+ "description": "Endpoint key connection.",
+ "required": [
+ "endpoint",
+ "key"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "endpoint": {
+ "type": "string",
+ "description": "Endpoint"
+ },
+ "key": {
+ "type": "string",
+ "description": "Key"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "EndpointWithKey"
+ },
+ "EndpointMIConnection": {
+ "description": "Endpoint Managed Identity connection.",
+ "required": [
+ "endpoint"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "endpoint": {
+ "type": "string",
+ "description": "Endpoint"
+ },
+ "resourceId": {
+ "type": "string",
+ "description": "Resource Id"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "EndpointWithManagedIdentity"
+ },
+ "Error": {
+ "title": "Error",
+ "description": "Error content as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).",
+ "required": [
+ "code",
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "code": {
+ "$ref": "#/definitions/ErrorCode"
+ },
+ "message": {
+ "description": "The message of this error.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "target": {
+ "description": "The location where the error happened if available.",
+ "type": "string"
+ },
+ "details": {
+ "description": "The error details if available.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError"
+ }
+ }
+ },
+ "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": "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."
+ },
+ {
+ "value": "fileImportFailed",
+ "description": "Import of file failed."
+ }
+ ]
+ }
+ },
+ "ErrorResponse": {
+ "title": "ErrorResponse",
+ "description": "Error response as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).",
+ "required": [
+ "error"
+ ],
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ }
+ },
+ "EventType": {
+ "title": "EventType",
+ "description": "Defines the severity of a content filter result.",
+ "enum": [
+ "message",
+ "metrics"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "EventType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "message",
+ "description": "Event only contains human readable messages."
+ },
+ {
+ "value": "metrics",
+ "description": "Event contains metrics."
+ }
+ ]
+ }
+ },
+ "File": {
+ "title": "File",
+ "description": "A file is a document usable for training and validation. It can also be a service generated document with result details.",
+ "required": [
+ "filename",
+ "purpose"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/FileState"
+ },
+ "bytes": {
+ "format": "int64",
+ "description": "The size of this file when available (can be null). File sizes larger than 2^53-1 are not supported to ensure compatibility\r\nwith JavaScript integers.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "purpose": {
+ "$ref": "#/definitions/Purpose"
+ },
+ "filename": {
+ "description": "The name of the file.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status_details": {
+ "description": "The error message with details in case processing of this file failed.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "readOnly": true
+ },
+ "FileCreate": {
+ "title": "FileCreate",
+ "description": "Defines a document to import from an external content url to be usable with Azure OpenAI.",
+ "required": [
+ "content_url",
+ "purpose"
+ ],
+ "type": "object",
+ "properties": {
+ "purpose": {
+ "$ref": "#/definitions/Purpose"
+ },
+ "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"
+ }
+ }
+ },
+ "FileDetails": {
+ "title": "FileDetails",
+ "description": "A file detail is a document used by batch service to fetch file blob details.",
+ "required": [
+ "filename",
+ "purpose"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "filename": {
+ "description": "The name of the file.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "path": {
+ "description": "The the relative path to the file within the container.",
+ "type": "string",
+ "readOnly": true
+ },
+ "storage_account_uri": {
+ "format": "url",
+ "description": "The storage account url of this file.",
+ "type": "string",
+ "readOnly": true
+ },
+ "storage_container_name": {
+ "description": "The Storage Container Name of this file blob.",
+ "type": "string",
+ "readOnly": true
+ },
+ "purpose": {
+ "$ref": "#/definitions/Purpose"
+ }
+ }
+ },
+ "FileDelete": {
+ "title": "FileDelete",
+ "description": "Defines the response for File Delete.",
+ "required": [
+ "deleted",
+ "id",
+ "object"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "description": "The file object.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "deleted": {
+ "description": "A value indicating whether the file was deleted.",
+ "type": "boolean"
+ },
+ "id": {
+ "description": "The file-id that was deleted.",
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "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"
+ }
+ }
+ },
+ "FileState": {
+ "title": "FileState",
+ "description": "The state of a file.",
+ "enum": [
+ "uploaded",
+ "pending",
+ "running",
+ "processed",
+ "error",
+ "deleting",
+ "deleted"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "FileState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "uploaded",
+ "description": "The file has been uploaded but it's not yet processed. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state."
+ },
+ {
+ "value": "pending",
+ "description": "The operation was created and is not queued to be processed in the future. It can be categorized as an inactive state."
+ },
+ {
+ "value": "running",
+ "description": "The operation has started to be processed. It can be categorized as an active state."
+ },
+ {
+ "value": "processed",
+ "description": "The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state."
+ },
+ {
+ "value": "error",
+ "description": "The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state."
+ },
+ {
+ "value": "deleting",
+ "description": "The entity is ni the process to be deleted. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an active state."
+ },
+ {
+ "value": "deleted",
+ "description": "The entity has been deleted but may still be referenced by other entities predating the deletion. It can be categorized as a terminal state."
+ }
+ ]
+ }
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "FineTuningHyperParameters": {
+ "title": "FineTuningHyperParameters",
+ "description": "The hyper parameter settings used in a fine tune job.",
+ "type": "object",
+ "properties": {
+ "n_epochs": {
+ "format": "int32",
+ "description": "The number of epochs to train the model for. An epoch refers to one full cycle through the training dataset.",
+ "type": "integer"
+ },
+ "batch_size": {
+ "format": "int32",
+ "description": "The batch size to use for training. The batch size is the number of training examples used to train a single forward and backward pass.\r\nIn general, we've found that larger batch sizes tend to work better for larger datasets.\r\nThe default value as well as the maximum value for this property are specific to a base model.",
+ "type": "integer"
+ },
+ "learning_rate_multiplier": {
+ "format": "double",
+ "description": "The learning rate multiplier to use for training. The fine-tuning learning rate is the original learning rate used for pre-training multiplied by this value.\r\nLarger learning rates tend to perform better with larger batch sizes.\r\nWe recommend experimenting with values in the range 0.02 to 0.2 to see what produces the best results.",
+ "type": "number"
+ }
+ }
+ },
+ "FineTuningJob": {
+ "title": "FineTuningJob",
+ "description": "Defines the values of a fine tune job.",
+ "required": [
+ "model",
+ "training_file"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/FineTuningState"
+ },
+ "model": {
+ "description": "The identifier (model-id) of the base model used for the fine-tune.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "fine_tuned_model": {
+ "description": "The identifier (model-id) of the resulting fine tuned model. This property is only populated for successfully completed fine-tune runs.\r\nUse this identifier to create a deployment for inferencing.",
+ "type": "string"
+ },
+ "training_file": {
+ "description": "The file which is used for training.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "validation_file": {
+ "description": "The file which is used to evaluate the fine tuned model during training.",
+ "type": "string"
+ },
+ "result_files": {
+ "description": "The result file identities (file-id) containing training and evaluation metrics in csv format.\r\nThe file is only available for successfully completed fine-tune runs.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "finished_at": {
+ "format": "int32",
+ "description": "A timestamp when this job or item has finished successfully (in unix epochs).",
+ "type": "integer"
+ },
+ "organisation_id": {
+ "description": "The organisation id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.",
+ "type": "string"
+ },
+ "trained_tokens": {
+ "format": "int32",
+ "description": "The total number of billable tokens processed by this fine tuning job.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "error": {
+ "$ref": "#/definitions/FineTuningJobError"
+ },
+ "estimated_finish": {
+ "format": "int32",
+ "description": "The Unix timestamp (in seconds) for when the fine-tuning job is estimated to finish. The value will be null if the fine-tuning job is not running.",
+ "type": "integer"
+ },
+ "hyperparameters": {
+ "$ref": "#/definitions/FineTuningHyperParameters"
+ },
+ "suffix": {
+ "description": "The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name.",
+ "type": "string"
+ },
+ "seed": {
+ "format": "int32",
+ "description": "The seed used for the finetuning job.",
+ "type": "integer"
+ },
+ "integrations": {
+ "description": "A list configurations for integrations supporting the fine-tuning job.\r\nThere are many integrations planned, so make sure to check and act on the integration type.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WandBIntegrationRequestWrapper"
+ }
+ }
+ }
+ },
+ "FineTuningJobCheckpoint": {
+ "title": "FineTuningJobCheckpoint",
+ "required": [
+ "created_at",
+ "fine_tuned_model_checkpoint",
+ "fine_tuning_job_id",
+ "metrics",
+ "step_number"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "id": {
+ "description": "The identity of this checkpoint.",
+ "type": "string",
+ "readOnly": true
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "The Unix timestamp (in seconds) for when the checkpoint was created.",
+ "type": "integer"
+ },
+ "fine_tuned_model_checkpoint": {
+ "description": "The name of the fine-tuned checkpoint model that is created.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "step_number": {
+ "format": "int32",
+ "description": "The step number that the checkpoint was created at.",
+ "type": "integer"
+ },
+ "metrics": {
+ "title": "Dictionary`2",
+ "description": "The metrics at the step number during the fine-tuning job.",
+ "type": "object",
+ "additionalProperties": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "fine_tuning_job_id": {
+ "description": "The name of the fine-tuning job that this checkpoint was created from..",
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "FineTuningJobCheckpointList": {
+ "title": "FineTuningJobCheckpointList",
+ "description": "Represents a list of checkpoints.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FineTuningJobCheckpoint"
+ }
+ },
+ "has_more": {
+ "description": "A value indicating whether the list contains more elements than returned.",
+ "type": "boolean"
+ }
+ }
+ },
+ "FineTuningJobCreation": {
+ "title": "FineTuningJobCreation",
+ "description": "Defines the values of a fine tune job.",
+ "required": [
+ "model",
+ "training_file"
+ ],
+ "type": "object",
+ "properties": {
+ "model": {
+ "description": "The identifier (model-id) of the base model used for this fine-tune.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "training_file": {
+ "description": "The file identity (file-id) that is used for training this fine tuned model.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "validation_file": {
+ "description": "The file identity (file-id) that is used to evaluate the fine tuned model during training.",
+ "type": "string"
+ },
+ "hyperparameters": {
+ "$ref": "#/definitions/FineTuningHyperParameters"
+ },
+ "suffix": {
+ "description": "The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name.",
+ "type": "string"
+ },
+ "seed": {
+ "format": "int32",
+ "description": "The seed used for the finetuning job. Passing in the same seed and job parameters should produce the same results, but may differ in rare cases. If a seed is not specified, one will be generated for you.",
+ "type": "integer"
+ },
+ "integrations": {
+ "description": "A list configurations for integrations supporting the fine-tuning job.\r\nThere are many integrations planned, so make sure to check and act on the integration type.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WandBIntegrationRequestWrapper"
+ }
+ }
+ }
+ },
+ "FineTuningJobError": {
+ "title": "FineTuningJobError",
+ "description": "For fine-tuning jobs that have failed, this will contain more information on the cause of the failure.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The machine-readable error code..",
+ "type": "string"
+ },
+ "message": {
+ "description": "The human-readable error message.",
+ "type": "string"
+ },
+ "param": {
+ "description": "The parameter that was invalid, usually training_file or validation_file. This field will be null if the failure was not parameter-specific.",
+ "type": "string"
+ }
+ }
+ },
+ "FineTuningJobEvent": {
+ "title": "FineTuningJobEvent",
+ "required": [
+ "created_at",
+ "level",
+ "message",
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "id": {
+ "description": "The identity of this event.",
+ "type": "string",
+ "readOnly": true
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this event was created (in unix epochs).",
+ "type": "integer"
+ },
+ "level": {
+ "$ref": "#/definitions/LogLevel"
+ },
+ "message": {
+ "description": "The message describing the event. This can be a change of state, e.g., enqueued, started, failed or completed, or other events like uploaded results.",
+ "minLength": 1,
+ "type": "string"
+ },
+ "type": {
+ "$ref": "#/definitions/EventType"
+ },
+ "data": {
+ "description": "Machine readable data of this event."
+ }
+ }
+ },
+ "FineTuningJobEventList": {
+ "title": "FineTuningJobEventList",
+ "description": "Represents a list of events.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FineTuningJobEvent"
+ }
+ },
+ "has_more": {
+ "description": "A value indicating whether the list contains more elements than returned.",
+ "type": "boolean"
+ }
+ }
+ },
+ "FineTuningJobList": {
+ "title": "FineTuningJobList",
+ "description": "Represents a list of fine tunes.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FineTuningJob"
+ }
+ },
+ "has_more": {
+ "description": "A value indicating whether the list contains more elements than returned.",
+ "type": "boolean"
+ }
+ }
+ },
+ "FineTuningState": {
+ "title": "FineTuningState",
+ "description": "The state of a finetunes object or fine tuning job.",
+ "enum": [
+ "created",
+ "pending",
+ "running",
+ "succeeded",
+ "cancelled",
+ "failed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "FineTuningState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "created",
+ "description": "The operation was created. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state."
+ },
+ {
+ "value": "pending",
+ "description": "The operation is not yet queued to be processed in the future. It can be categorized as an inactive state."
+ },
+ {
+ "value": "running",
+ "description": "The operation has started to be processed. It can be categorized as an active state."
+ },
+ {
+ "value": "succeeded",
+ "description": "The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state."
+ },
+ {
+ "value": "cancelled",
+ "description": "The operation has been cancelled and is incomplete. It can be categorized as a terminal state."
+ },
+ {
+ "value": "failed",
+ "description": "The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state."
+ }
+ ]
+ }
+ },
+ "GenericEmbeddingSettings": {
+ "title": "ConnectionEmbeddingSettings",
+ "description": "Connection Embedding Settings",
+ "type": "object",
+ "properties": {
+ "connection": {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ "deploymentName": {
+ "type": "string"
+ },
+ "modelName": {
+ "type": "string"
+ }
+ }
+ },
+ "IngestionError": {
+ "title": "IngestionError",
+ "description": "The details of the ingestion error",
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string"
+ },
+ "innerErrors": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "IngestionJob": {
+ "title": "IngestionJob",
+ "description": "Represents the details of a job.",
+ "type": "object",
+ "required": [
+ "kind"
+ ],
+ "discriminator": "kind",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/IngestionJobType"
+ },
+ "jobId": {
+ "type": "string"
+ }
+ }
+ },
+ "IngestionJobList": {
+ "title": "IngestionJobList",
+ "description": "Represents a list of ingestion jobs.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "The link to the next page.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IngestionJob"
+ }
+ }
+ }
+ },
+ "IngestionJobProgress": {
+ "title": "IngestionJobProgress",
+ "type": "object",
+ "required": [
+ "stageProgress"
+ ],
+ "properties": {
+ "stageProgress": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IngestionJobStageProgress"
+ }
+ }
+ }
+ },
+ "IngestionJobRun": {
+ "title": "IngestionJobRun",
+ "description": "The details of a job run",
+ "type": "object",
+ "properties": {
+ "jobId": {
+ "type": "string"
+ },
+ "runId": {
+ "type": "string"
+ },
+ "status": {
+ "$ref": "#/definitions/OperationState"
+ },
+ "error": {
+ "$ref": "#/definitions/IngestionError"
+ },
+ "warnings": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "progress": {
+ "$ref": "#/definitions/IngestionJobProgress"
+ }
+ }
+ },
+ "IngestionJobRunList": {
+ "title": "IngestionJobRunList",
+ "description": "Represents a list of ingestion job runs.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "The link to the next page.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IngestionJobRun"
+ }
+ }
+ }
+ },
+ "IngestionJobStageProgress": {
+ "title": "IngestionJobStageProgress",
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "totalItems": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "processedItems": {
+ "type": "integer",
+ "format": "int32"
+ },
+ "state": {
+ "$ref": "#/definitions/OperationState"
+ },
+ "subStageProgress": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IngestionJobStageProgress"
+ }
+ }
+ }
+ },
+ "IngestionJobSystemCompute": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/IngestionJob"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "searchServiceConnection": {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ "datasource": {
+ "$ref": "#/definitions/SystemComputeDatasource"
+ },
+ "completionAction": {
+ "$ref": "#/definitions/CompletionAction"
+ },
+ "dataRefreshIntervalInHours": {
+ "type": "integer"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "SystemCompute"
+ },
+ "IngestionJobType": {
+ "title": "IngestionJobType",
+ "type": "string",
+ "description": "The job type.",
+ "enum": [
+ "SystemCompute",
+ "UserCompute"
+ ],
+ "x-ms-enum": {
+ "name": "IngestionJobType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "SystemCompute",
+ "value": "SystemCompute",
+ "description": "Jobs that run on service owned resources."
+ },
+ {
+ "name": "UserCompute",
+ "value": "UserCompute",
+ "description": "Jobs that run on user owned workspace."
+ }
+ ]
+ }
+ },
+ "IngestionJobUserCompute": {
+ "type": "object",
+ "required": [
+ "workspaceId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/IngestionJob"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "workspaceId": {
+ "type": "string"
+ },
+ "compute": {
+ "$ref": "#/definitions/JobCompute"
+ },
+ "target": {
+ "$ref": "#/definitions/TargetIndex"
+ },
+ "datasource": {
+ "$ref": "#/definitions/UserComputeDatasource"
+ },
+ "dataRefreshIntervalInHours": {
+ "type": "integer"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "UserCompute"
+ },
+ "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."
+ }
+ ]
+ }
+ },
+ "IntegrationTypes": {
+ "title": "IntegrationTypes",
+ "description": "List of Fine Tune integrations available.",
+ "enum": [
+ "wandb"
+ ],
+ "type": "string"
+ },
+ "JobCompute": {
+ "title": "JobCompute",
+ "description": "The compute settings of the job.",
+ "type": "object",
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/ComputeType"
+ }
+ }
+ },
+ "LifeCycleStatus": {
+ "title": "LifeCycleStatus",
+ "description": "The life cycle status of a model.\r\nNote: A model can be promoted from \"preview\" to \"generally-available\", but never from \"generally-available\" to \"preview\".",
+ "enum": [
+ "preview",
+ "generally-available"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "LifeCycleStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "preview",
+ "description": "Model is in preview and covered by the service preview terms."
+ },
+ {
+ "value": "generally-available",
+ "description": "Model is generally available."
+ }
+ ]
+ }
+ },
+ "LogLevel": {
+ "title": "LogLevel",
+ "description": "The verbosity level of an event.",
+ "enum": [
+ "info",
+ "warning",
+ "error"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "LogLevel",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "info",
+ "description": "This event is for information only."
+ },
+ {
+ "value": "warning",
+ "description": "This event represents a mitigated issue."
+ },
+ {
+ "value": "error",
+ "description": "This message represents a non recoverable issue."
+ }
+ ]
+ }
+ },
+ "Model": {
+ "title": "Model",
+ "description": "A model is either a base model or the result of a successful fine tune job.",
+ "required": [
+ "capabilities",
+ "deprecation",
+ "lifecycle_status"
+ ],
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/FineTuningState"
+ },
+ "model": {
+ "description": "The base model identity (model-id) if this is a fine tune model; otherwise `null`.",
+ "type": "string"
+ },
+ "fine_tune": {
+ "description": "The fine tune job identity (fine-tune-id) if this is a fine tune model; otherwise `null`.",
+ "type": "string"
+ },
+ "capabilities": {
+ "$ref": "#/definitions/Capabilities"
+ },
+ "lifecycle_status": {
+ "$ref": "#/definitions/LifeCycleStatus"
+ },
+ "deprecation": {
+ "$ref": "#/definitions/Deprecation"
+ }
+ }
+ },
+ "ModelList": {
+ "title": "ModelList",
+ "description": "Represents a list of models.",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "data": {
+ "description": "The list of items.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Model"
+ }
+ }
+ }
+ },
+ "OperationState": {
+ "title": "OperationState",
+ "description": "The state of a job or item.",
+ "enum": [
+ "notRunning",
+ "running",
+ "succeeded",
+ "failed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "OperationState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "notRunning",
+ "description": "The operation is not yet queued to be processed in the future."
+ },
+ {
+ "value": "running",
+ "description": "The operation has started to be processed."
+ },
+ {
+ "value": "succeeded",
+ "description": "The operation has successfully be processed and is ready for consumption."
+ },
+ {
+ "value": "failed",
+ "description": "The operation has completed processing with a failure and cannot be further consumed."
+ }
+ ]
+ }
+ },
+ "PineconeIndex": {
+ "description": "Pinecone Index.",
+ "required": [
+ "connectionId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/TargetIndex"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "connectionId": {
+ "type": "string",
+ "description": "The id of the connection pointing to the pinecone."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "Pinecone"
+ },
+ "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",
+ "assistants",
+ "assistants_output",
+ "batch",
+ "batch_output"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "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."
+ },
+ {
+ "value": "assistants",
+ "description": "This file contains data to be used in assistants."
+ },
+ {
+ "value": "assistants_output",
+ "description": "This file contains the results of an assistant."
+ },
+ {
+ "value": "batch",
+ "description": "This file contains the input data for a batch."
+ },
+ {
+ "value": "batch_output",
+ "description": "This file contains the results of a batch."
+ }
+ ]
+ }
+ },
+ "ServerlessCompute": {
+ "description": "Serverless compute.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/JobCompute"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "sku": {
+ "type": "string",
+ "description": "SKU Level"
+ },
+ "instanceCount": {
+ "type": "integer",
+ "description": "The count of instances to run the job on."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "ServerlessCompute"
+ },
+ "SystemComputeDatasource": {
+ "title": "SystemComputeDatasource",
+ "type": "object",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/SystemComputeDatasourceType"
+ }
+ },
+ "discriminator": "kind"
+ },
+ "SystemComputeDatasourceType": {
+ "type": "string",
+ "description": "The datasource type.",
+ "enum": [
+ "Storage",
+ "Urls"
+ ],
+ "x-ms-enum": {
+ "name": "SystemComputeDatasourceType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Storage",
+ "value": "Storage",
+ "description": "Azure Storage Account."
+ },
+ {
+ "name": "Urls",
+ "value": "Urls",
+ "description": "URLs."
+ }
+ ]
+ }
+ },
+ "SystemComputeStorage": {
+ "title": "SystemComputeStorage",
+ "description": "Storage account",
+ "required": [
+ "connection",
+ "containerName",
+ "embeddings"
+ ],
+ "x-ms-discriminator-value": "Storage",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SystemComputeDatasource"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "connection": {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ "containerName": {
+ "type": "string",
+ "description": "container name"
+ },
+ "chunking": {
+ "$ref": "#/definitions/ChunkingSettings"
+ },
+ "embeddings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GenericEmbeddingSettings"
+ }
+ }
+ }
+ }
+ ]
+ },
+ "SystemComputeUrl": {
+ "title": "SystemComputeUrl",
+ "description": "Urls",
+ "required": [
+ "urls",
+ "connection",
+ "containerName",
+ "embeddings"
+ ],
+ "x-ms-discriminator-value": "Urls",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SystemComputeDatasource"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "urls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "connection": {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ "containerName": {
+ "type": "string",
+ "description": "container name"
+ },
+ "crawling": {
+ "$ref": "#/definitions/CrawlingSettings"
+ },
+ "chunking": {
+ "$ref": "#/definitions/ChunkingSettings"
+ },
+ "embeddings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GenericEmbeddingSettings"
+ }
+ }
+ }
+ }
+ ]
+ },
+ "TargetIndex": {
+ "title": "TargetIndex",
+ "description": "Information about the index to be created.",
+ "type": "object",
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/TargetType"
+ }
+ }
+ },
+ "TargetType": {
+ "type": "string",
+ "description": "The target type.",
+ "enum": [
+ "AzureAISearch",
+ "CosmosDB",
+ "Pinecone"
+ ],
+ "x-ms-enum": {
+ "name": "TargetType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "AzureAISearch",
+ "value": "AzureAISearch",
+ "description": "Azure AI Search Index."
+ },
+ {
+ "name": "CosmosDB",
+ "value": "CosmosDB",
+ "description": "CosmosDB Index."
+ },
+ {
+ "name": "Pinecone",
+ "value": "Pinecone",
+ "description": "Pinecone Index."
+ }
+ ]
+ }
+ },
+ "TypeDiscriminator": {
+ "title": "TypeDiscriminator",
+ "description": "Defines the type of an object.",
+ "enum": [
+ "list",
+ "fine_tuning.job",
+ "file",
+ "fine_tuning.job.event",
+ "fine_tuning.job.checkpoint",
+ "model",
+ "upload",
+ "upload.part",
+ "batch"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "TypeDiscriminator",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "list",
+ "description": "This object represents a list of other objects."
+ },
+ {
+ "value": "fine_tuning.job",
+ "description": "This object represents a fine tune job."
+ },
+ {
+ "value": "file",
+ "description": "This object represents a file."
+ },
+ {
+ "value": "fine_tuning.job.event",
+ "description": "This object represents an event of a fine tuning job."
+ },
+ {
+ "value": "fine_tuning.job.checkpoint",
+ "description": "This object represents a checkpoint of a fine tuning job."
+ },
+ {
+ "value": "model",
+ "description": "This object represents a model (can be a base model or fine tune job result)."
+ },
+ {
+ "value": "upload",
+ "description": "This object represents a file upload."
+ },
+ {
+ "value": "upload.part",
+ "description": "This object represents part of a file upload."
+ },
+ {
+ "value": "wandb",
+ "description": "This object represents the Weights and Biases Integration configuration."
+ },
+ {
+ "value": "batch",
+ "description": "This object represents a batch."
+ }
+ ]
+ }
+ },
+ "UploadFileCompleteBody": {
+ "title": "UploadFileCompleteBody",
+ "required": [
+ "part_ids"
+ ],
+ "type": "object",
+ "properties": {
+ "part_ids": {
+ "title": "IList`1",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "md5": {
+ "type": "string"
+ }
+ }
+ },
+ "UploadFileStartBody": {
+ "title": "UploadFileStartBody",
+ "required": [
+ "bytes",
+ "filename",
+ "mime_type",
+ "purpose"
+ ],
+ "type": "object",
+ "properties": {
+ "purpose": {
+ "$ref": "#/definitions/Purpose"
+ },
+ "filename": {
+ "minLength": 1,
+ "type": "string"
+ },
+ "bytes": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "mime_type": {
+ "minLength": 1,
+ "type": "string"
+ }
+ }
+ },
+ "UploadPartResource": {
+ "title": "UploadPartResource",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "upload_id": {
+ "type": "string",
+ "readOnly": true
+ },
+ "azure_block_id": {
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UploadResource": {
+ "title": "UploadResource",
+ "type": "object",
+ "properties": {
+ "object": {
+ "$ref": "#/definitions/TypeDiscriminator"
+ },
+ "created_at": {
+ "format": "unixtime",
+ "description": "A timestamp when this job or item was created (in unix epochs).",
+ "type": "integer",
+ "readOnly": true
+ },
+ "id": {
+ "description": "The identity of this item.",
+ "type": "string",
+ "readOnly": true
+ },
+ "bytes": {
+ "format": "int64",
+ "type": "integer",
+ "readOnly": true
+ },
+ "filename": {
+ "type": "string",
+ "readOnly": true
+ },
+ "purpose": {
+ "$ref": "#/definitions/Purpose"
+ },
+ "status": {
+ "$ref": "#/definitions/UploadStatus"
+ },
+ "expires_at": {
+ "format": "unixtime",
+ "type": "integer",
+ "readOnly": true
+ },
+ "file": {
+ "$ref": "#/definitions/File"
+ }
+ }
+ },
+ "UploadStatus": {
+ "title": "UploadStatus",
+ "enum": [
+ "pending",
+ "expired",
+ "completed",
+ "cancelled"
+ ],
+ "type": "string",
+ "readOnly": true
+ },
+ "UserComputeDataset": {
+ "type": "object",
+ "title": "UserComputeStorage",
+ "description": "Storage account",
+ "required": [
+ "datasetId",
+ "datasetType"
+ ],
+ "x-ms-discriminator-value": "Dataset",
+ "allOf": [
+ {
+ "$ref": "#/definitions/UserComputeDatasource"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "datasetId": {
+ "type": "string"
+ },
+ "datasetType": {
+ "type": "string"
+ },
+ "chunking": {
+ "$ref": "#/definitions/ChunkingSettings"
+ },
+ "embeddings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WorkspaceConnectionEmbeddingSettings"
+ }
+ }
+ }
+ }
+ ]
+ },
+ "UserComputeDatasource": {
+ "title": "UserComputeDatasource",
+ "type": "object",
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/UserComputeDatasourceType"
+ }
+ }
+ },
+ "UserComputeDatasourceType": {
+ "type": "string",
+ "description": "The datasource type.",
+ "enum": [
+ "Dataset",
+ "Urls"
+ ],
+ "x-ms-enum": {
+ "name": "UserComputeDatasourceType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Dataset",
+ "value": "Dataset",
+ "description": "Workspace Dataset."
+ },
+ {
+ "name": "Urls",
+ "value": "Urls",
+ "description": "URLs."
+ }
+ ]
+ }
+ },
+ "UserComputeUrl": {
+ "type": "object",
+ "title": "UserComputeUrl",
+ "description": "Urls",
+ "required": [
+ "urls",
+ "embeddings"
+ ],
+ "x-ms-discriminator-value": "Urls",
+ "allOf": [
+ {
+ "$ref": "#/definitions/UserComputeDatasource"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "urls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "crawling": {
+ "$ref": "#/definitions/CrawlingSettings"
+ },
+ "chunking": {
+ "$ref": "#/definitions/ChunkingSettings"
+ },
+ "embeddings": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WorkspaceConnectionEmbeddingSettings"
+ }
+ }
+ }
+ }
+ ]
+ },
+ "WandBIntegrationRequest": {
+ "title": "WandBIntegrationRequest",
+ "required": [
+ "project"
+ ],
+ "type": "object",
+ "properties": {
+ "project": {
+ "minLength": 1,
+ "type": "string"
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true
+ },
+ "entity": {
+ "type": "string",
+ "readOnly": true
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "WandBIntegrationRequestWrapper": {
+ "title": "WandBIntegrationRequestWrapper",
+ "required": [
+ "type",
+ "wandb"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/IntegrationTypes"
+ },
+ "wandb": {
+ "$ref": "#/definitions/WandBIntegrationRequest"
+ }
+ }
+ },
+ "WorkspaceConnection": {
+ "description": "AML Workspace connection.",
+ "required": [
+ "connectionId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/BaseConnection"
+ },
+ {
+ "type": "object",
+ "properties": {
+ "connectionId": {
+ "type": "string",
+ "description": "ConnectionId"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "WorkspaceConnection"
+ },
+ "WorkspaceConnectionEmbeddingSettings": {
+ "title": "WorkspaceConnectionEmbeddingSettings",
+ "description": "Connection id to the embedding model",
+ "type": "object",
+ "properties": {
+ "connectionId": {
+ "type": "string"
+ },
+ "deploymentName": {
+ "type": "string"
+ },
+ "modelName": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "endpoint": {
+ "in": "path",
+ "name": "endpoint",
+ "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://aoairesource.openai.azure.com. Replace \"aoairesource\" with your Azure OpenAI account name).",
+ "required": true,
+ "type": "string",
+ "format": "url",
+ "x-ms-skip-url-encoding": true,
+ "x-ms-parameter-location": "client"
+ },
+ "apiVersionQueryParameter": {
+ "in": "query",
+ "name": "api-version",
+ "description": "The requested API version.",
+ "required": true,
+ "type": "string",
+ "x-ms-client-default": "2024-12-01-preview",
+ "x-ms-parameter-location": "client"
+ }
+ },
+ "security": [
+ {
+ "ApiKeyAuth": []
+ },
+ {
+ "OAuth2Auth": [
+ "https://cognitiveservices.azure.com/.default"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "ApiKeyAuth": {
+ "description": "API key authentication",
+ "type": "apiKey",
+ "name": "api-key",
+ "in": "header"
+ },
+ "OAuth2Auth": {
+ "description": "OAuth2 authentication",
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
+ "scopes": {
+ "https://cognitiveservices.azure.com/.default": ""
+ }
+ }
+ },
+ "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/2024-12-01-preview/azureopenai.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.yaml
new file mode 100644
index 000000000000..a128d8ba70bb
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/azureopenai.yaml
@@ -0,0 +1,2671 @@
+swagger: "2.0"
+info:
+ title: Azure OpenAI API version 2024-12-01-preview
+ description: APIs for fine-tuning and managing deployments of OpenAI models.
+ version: 2024-12-01-preview
+paths:
+ /batches:
+ get:
+ tags:
+ - "Batch:"
+ summary: Gets a list of all batches owned by the Azure OpenAI resource.
+ operationId: Batch_List
+ produces:
+ - application/json
+ parameters:
+ - in: query
+ name: after
+ description: Identifier for the last event from the previous pagination request.
+ type: string
+ - in: query
+ name: limit
+ description: Number of batches to retrieve. Defaults to 20.
+ type: integer
+ format: int32
+ default: 20
+ - in: query
+ name: $filter
+ description: The OData expression to describe the filtering conditions.
+ type: string
+ - in: query
+ name: $orderby
+ description: The OData expression to describe the sorting order.
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/BatchesList"
+ headers:
+ deployment-enqueued-tokens:
+ description: Sum of enqueued tokens of all jobs that target to the deployment.
+ type: integer
+ format: int64
+ deployment-maximum-enqueued-tokens:
+ description: Maximum enqueued tokens of the deployment.
+ type: integer
+ format: int64
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Getting all batches owned by this account.:
+ $ref: ./examples/get_batches.json
+ post:
+ tags:
+ - "Batch:"
+ summary: "Creates and executes a batch from an uploaded file of requests.\r\nResponse includes details of the enqueued job including job status.\r\nThe ID of the result file is added to the response once complete."
+ operationId: Batch_Create
+ consumes:
+ - application/json
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: body
+ name: createBatchRequest
+ description: The specification of the batch to create and execute.
+ required: true
+ schema:
+ $ref: "#/definitions/BatchCreateRequest"
+ responses:
+ "201":
+ description: The batch has been successfully created.
+ schema:
+ $ref: "#/definitions/Batch"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Creating a batch.:
+ $ref: ./examples/post_batch.json
+ /batches/{batch-id}:
+ get:
+ tags:
+ - "Batch:"
+ summary: Gets details for a single batch specified by the given batch-id.
+ operationId: Batch_Get
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: batch-id
+ description: The identifier of the batch.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/Batch"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Getting a batch.:
+ $ref: ./examples/get_batch.json
+ /batches/{batch-id}/cancel:
+ post:
+ tags:
+ - "Batch:"
+ summary: Cancels the processing of the batch specified by the given batch-id.
+ operationId: Batch_Cancel
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: batch-id
+ description: The identifier of the batch.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: The batch has been successfully canceled.
+ schema:
+ $ref: "#/definitions/Batch"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Canceling a batch.:
+ $ref: ./examples/cancel_batch.json
+ /files:
+ get:
+ tags:
+ - "Files:"
+ summary: "Gets a list of all files owned by the Azure OpenAI resource.\r\nThese include user uploaded content like files with purpose \"fine-tune\" for training or validation of fine-tunes models\r\nas well as files that are generated by the service such as \"fine-tune-results\" which contains various metrics for the corresponding fine-tune job."
+ operationId: Files_List
+ produces:
+ - application/json
+ parameters:
+ - in: query
+ name: purpose
+ description: Only return files with the given purpose.
+ type: string
+ enum:
+ - fine-tune
+ - fine-tune-results
+ - assistants
+ - assistants_output
+ - batch
+ - batch_output
+ 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.
+ - value: assistants
+ description: This file contains data to be used in assistants.
+ - value: assistants_output
+ description: This file contains the results of an assistant.
+ - value: batch
+ description: This file contains the input data for a batch.
+ - value: batch_output
+ description: This file contains the results of a batch.
+ - $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.yaml
+ 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
+ - assistants
+ - assistants_output
+ - batch
+ 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.
+ - value: assistants
+ description: This file contains data to be used in assistants.
+ - value: assistants_output
+ description: This file contains the results of an assistant.
+ - value: batch
+ description: This file contains the input data for a batch.
+ - 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.yaml
+ /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.yaml
+ /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.yaml
+ 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:
+ "200":
+ description: The file was successfully deleted.
+ schema:
+ $ref: '#/definitions/FileDelete'
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Deleting a file.:
+ $ref: ./examples/delete_file.yaml
+ /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.yaml
+ /fine_tuning/jobs:
+ get:
+ tags:
+ - "Fine-tuning:"
+ summary: "Gets a list of all fine-tune jobs owned by the Azure OpenAI resource.\r\nThe details that are returned for each fine-tune job contain besides its identifier\r\nthe base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded."
+ operationId: FineTuning_List
+ produces:
+ - application/json
+ parameters:
+ - in: query
+ name: after
+ description: Identifier for the last event from the previous pagination request.
+ type: string
+ - in: query
+ name: limit
+ description: Number of events to retrieve. Defaults to 20.
+ type: integer
+ format: int32
+ default: 20
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/FineTuningJobList"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Getting all fine tuning jobs owned by this account.:
+ $ref: ./examples/get_finetuning_jobs.yaml
+ post:
+ tags:
+ - "Fine-tuning:"
+ summary: "Creates a job that fine-tunes a specified model from a given training file.\r\nResponse includes details of the enqueued job including job status and hyper parameters.\r\nThe name of the fine-tuned model is added to the response once complete."
+ operationId: FineTuning_Create
+ consumes:
+ - application/json
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: body
+ name: fineTuningJob
+ description: "The specification of the fine-tuned model to create.\r\nRequired parameters are the base model and the training file to use.\r\nOptionally a validation file can be specified to compute validation metrics during training.\r\nHyper parameters will be set to default values or can be optionally specified.\r\nThese include batch size, learning rate multiplier, number of epochs and others."
+ required: true
+ schema:
+ $ref: "#/definitions/FineTuningJobCreation"
+ responses:
+ "201":
+ description: The fine tune has been successfully created.
+ schema:
+ $ref: "#/definitions/FineTuningJob"
+ headers:
+ Location:
+ description: The location of the newly created item.
+ type: string
+ format: url
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Creating a fine tuning job.:
+ $ref: ./examples/post_finetuning_job.yaml
+ /fine_tuning/jobs/{fine-tuning-job-id}:
+ get:
+ tags:
+ - "Fine-tuning:"
+ summary: "Gets details for a single fine-tune job specified by the given fine-tune-id.\r\nThe details contain the base model, training and validation files, hyper parameters, time stamps, status and events.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded."
+ operationId: FineTuning_Get
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: fine-tuning-job-id
+ description: The identifier of the fine-tune job.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/FineTuningJob"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Getting a fine tuning job.:
+ $ref: ./examples/get_finetuning_job.yaml
+ delete:
+ tags:
+ - "Fine-tuning:"
+ summary: Deletes the fine-tune job specified by the given fine-tune-id.
+ operationId: FineTuning_Delete
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: fine-tuning-job-id
+ description: The identifier of the fine-tune job.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "204":
+ description: The fine tune was successfully deleted.
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Deleting a fine tuning job.:
+ $ref: ./examples/delete_finetuning_job.yaml
+ /fine_tuning/jobs/{fine-tuning-job-id}/cancel:
+ post:
+ tags:
+ - "Fine-tuning:"
+ summary: Cancels the processing of the fine-tune job specified by the given fine-tune-id.
+ operationId: FineTuning_Cancel
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: fine-tuning-job-id
+ description: The identifier of the fine-tune job.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: The fine tune has been successfully canceled
+ schema:
+ $ref: "#/definitions/FineTuningJob"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Canceling a fine tuning job.:
+ $ref: ./examples/cancel_finetuning_job.yaml
+ /fine_tuning/jobs/{fine-tuning-job-id}/checkpoints:
+ get:
+ tags:
+ - "Fine-tuning:"
+ summary: "Gets the checkpoints for the fine-tune job specified by the given fine-tune-id.\r\nCheckpoints are created at the end of successful epochs during training."
+ operationId: FineTuning_GetCheckpoints
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: fine-tuning-job-id
+ description: The identifier of the fine-tune job.
+ required: true
+ type: string
+ - in: query
+ name: after
+ description: Identifier for the last checkpoint ID from the previous pagination request.
+ type: string
+ - in: query
+ name: limit
+ description: Number of checkpoints to retrieve. Defaults to 10.
+ type: integer
+ format: int32
+ default: 10
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/FineTuningJobCheckpointList"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Getting checkpoints of a fine tuning job.:
+ $ref: ./examples/get_finetuning_job_checkpoints.yaml
+ /fine_tuning/jobs/{fine-tuning-job-id}/events:
+ get:
+ tags:
+ - "Fine-tuning:"
+ summary: "Gets the events for the fine-tune job specified by the given fine-tune-id.\r\nEvents are created when the job status changes, e.g. running or complete, and when results are uploaded."
+ operationId: FineTuning_GetEvents
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: fine-tuning-job-id
+ description: The identifier of the fine-tune job.
+ required: true
+ type: string
+ - in: query
+ name: after
+ description: Identifier for the last event from the previous pagination request.
+ type: string
+ - in: query
+ name: limit
+ description: Number of events to retrieve. Defaults to 20.
+ type: integer
+ format: int32
+ default: 20
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/FineTuningJobEventList"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Getting events of a fine tuning job.:
+ $ref: ./examples/get_finetuning_job_events.yaml
+ /ingestion/jobs:
+ get:
+ tags:
+ - "Ingestion:"
+ summary: Lists the ingestion jobs.
+ operationId: IngestionJobs_List
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: header
+ name: mgmt-user-token
+ type: string
+ description: The token used to access the workspace (needed only for user compute jobs).
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/IngestionJobList"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ List all ingestion jobs:
+ $ref: ./examples/list_ingestion_jobs.json
+ /ingestion/jobs/{job-id}:
+ put:
+ tags:
+ - "Ingestion:"
+ summary: Creates an ingestion job with the specified job id.
+ operationId: IngestionJobs_Create
+ consumes:
+ - application/json
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: path
+ name: job-id
+ required: true
+ type: string
+ description: The id of the job that will be created.
+ - in: header
+ name: mgmt-user-token
+ type: string
+ description: The token used to access the workspace (needed only for user compute jobs).
+ - in: header
+ name: aml-user-token
+ type: string
+ description: The token used to access the resources within the job in the workspace (needed only for user compute jobs).
+ - in: body
+ name: ingestionJob
+ schema:
+ $ref: "#/definitions/IngestionJob"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/IngestionJob"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Create a system-compute ingestion job:
+ $ref: ./examples/put_ingestion_job_sc.json
+ Create a user-compute ingestion job:
+ $ref: ./examples/put_ingestion_job_uc.json
+ get:
+ tags:
+ - "Ingestion:"
+ summary: Gets the details of the specified job id.
+ operationId: IngestionJobs_Get
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: path
+ name: job-id
+ required: true
+ description: The id of the job.
+ type: string
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/IngestionJob"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Get ingestion job:
+ $ref: ./examples/get_ingestion_job.json
+ /ingestion/jobs/{job-id}/runs:
+ get:
+ tags:
+ - "Ingestion:"
+ summary: Lists the runs of the specified job id.
+ operationId: IngestionJobRuns_List
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: path
+ name: job-id
+ required: true
+ description: The id of the job.
+ type: string
+ - in: header
+ name: mgmt-user-token
+ type: string
+ description: The token used to access the workspace (needed only for user compute jobs).
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/IngestionJobRunList"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ List ingestion job runs:
+ $ref: ./examples/list_ingestion_job_runs.json
+ /ingestion/jobs/{job-id}/runs/{run-id}:
+ get:
+ tags:
+ - "Ingestion:"
+ summary: Gets the details of the specified run id as part of the specified job id.
+ operationId: IngestionJobRuns_Get
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: path
+ name: job-id
+ required: true
+ description: The id of the job.
+ type: string
+ - in: path
+ name: run-id
+ required: true
+ description: The id of the run.
+ type: string
+ - in: header
+ name: mgmt-user-token
+ type: string
+ description: The token used to access the workspace (needed only for user compute jobs).
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/IngestionJobRun"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Get ingestion job runs:
+ $ref: ./examples/get_ingestion_job_run.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.yaml
+ /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.yaml
+ Getting a fine-tuned model.:
+ $ref: ./examples/get_model_finetune.yaml
+ /uploads:
+ post:
+ tags:
+ - "UploadFile:"
+ summary: "An intermediate Upload object is created, allowing you to add Parts to it. Currently, an Upload size can be a maximum of 9 GB in total and will expire two hours after being created.\r\nAfter the Upload is completed a File object will be generated, containing all the uploaded parts. This File object can then be used across our platform just like any other file."
+ operationId: UploadFile_Start
+ consumes:
+ - application/json
+ - text/json
+ - application/*+json
+ produces:
+ - application/json
+ parameters:
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: body
+ name: requestBody
+ description: The definition of the file to create including its purpose and the location on the local machine.
+ required: true
+ schema:
+ $ref: "#/definitions/UploadFileStartBody"
+ responses:
+ "200":
+ description: The upload has been successfully created.
+ schema:
+ $ref: "#/definitions/UploadResource"
+ 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:
+ Start a large file upload operation.:
+ $ref: ./examples/upload_file_start.yaml
+ /uploads/{upload-id}/cancel:
+ post:
+ tags:
+ - "UploadFile:"
+ summary: "Cancels the Upload, and will lead to all uploaded parts to be deleted asynchronously.\r\nNo Parts may be added after an Upload is cancelled."
+ operationId: UploadFile_Cancel
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: upload-id
+ description: The identifier of the upload.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/UploadResource"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Cancel a large file upload operation.:
+ $ref: ./examples/upload_file_cancel.yaml
+ /uploads/{upload-id}/complete:
+ post:
+ tags:
+ - "UploadFile:"
+ summary: "This completes the Upload, and the returned Upload object contains a nested File object that is ready for use across the platform.\r\nYou can define the order of the Parts by providing an ordered list of Part IDs.\r\nThe total number of bytes uploaded must match the size originally specified when creating the Upload object.\r\nAfter this operation no additional Parts can be added once the Upload is completed."
+ operationId: UploadFile_Complete
+ consumes:
+ - application/json
+ - text/json
+ - application/*+json
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: upload-id
+ description: The identifier of the upload.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: body
+ name: requestBody
+ description: The definition of the file to create including its purpose and the location on the local machine.
+ required: true
+ schema:
+ $ref: "#/definitions/UploadFileCompleteBody"
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/UploadResource"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Complete and validate a large file upload operation.:
+ $ref: ./examples/upload_file_complete.yaml
+ /uploads/{upload-id}/parts:
+ post:
+ tags:
+ - "UploadFile:"
+ summary: "Adds a Part to an Upload object, where each Part represents a segment of the file you are uploading.\r\nEach Part can be up to the standard size limit for file upload, based on the File Purpose. You can continue adding Parts until reaching the Upload size limit of 9 GB."
+ operationId: UploadFile_Part
+ consumes:
+ - multipart/form-data
+ produces:
+ - application/json
+ parameters:
+ - in: path
+ name: upload-id
+ description: The identifier of the upload.
+ required: true
+ type: string
+ - $ref: "#/parameters/apiVersionQueryParameter"
+ - in: formData
+ name: data
+ required: true
+ type: file
+ responses:
+ "200":
+ description: Success
+ schema:
+ $ref: "#/definitions/UploadPartResource"
+ default:
+ description: An error occurred.
+ schema:
+ $ref: "#/definitions/ErrorResponse"
+ x-ms-examples:
+ Upload a part of large file upload operation.:
+ $ref: ./examples/upload_file_part.yaml
+definitions:
+ AzureAISearchIndex:
+ description: Azure AI Search Index.
+ required:
+ - connectionId
+ allOf:
+ - $ref: "#/definitions/TargetIndex"
+ - type: object
+ properties:
+ connectionId:
+ type: string
+ description: The id of the connection pointing to the Azure AI Search Index.
+ x-ms-discriminator-value: AzureAISearch
+ BaseConnection:
+ title: BaseConnection
+ description: A connection to a resource.
+ type: object
+ required:
+ - kind
+ properties:
+ kind:
+ $ref: "#/definitions/ConnectionType"
+ discriminator: kind
+ Batch:
+ title: Batch
+ description: Defines the values of a batch.
+ required:
+ - id
+ - input_file_id
+ type: object
+ properties:
+ id:
+ description: The identity of this item.
+ type: string
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ endpoint:
+ description: The API endpoint used by the batch.
+ type: string
+ readOnly: true
+ errors:
+ $ref: "#/definitions/BatchErrors"
+ input_file_id:
+ description: The ID of the input file for the batch.
+ minLength: 1
+ type: string
+ completion_window:
+ description: The time frame within which the batch should be processed.
+ type: string
+ status:
+ $ref: "#/definitions/BatchStatus"
+ output_file_id:
+ description: The ID of the file containing outputs of successfully executed requests.
+ type: string
+ error_file_id:
+ description: The ID of the file containing outputs of requests with errors.
+ type: string
+ created_at:
+ format: unixtime
+ description: A timestamp when this batch was created (in unix epochs).
+ type: integer
+ readOnly: true
+ in_progress_at:
+ format: unixtime
+ description: A timestamp when this batch started progressing (in unix epochs).
+ type: integer
+ readOnly: true
+ expires_at:
+ format: unixtime
+ description: A timestamp when this batch will expire (in unix epochs).
+ type: integer
+ readOnly: true
+ finalizing_at:
+ format: unixtime
+ description: A timestamp when this batch started finalizing (in unix epochs).
+ type: integer
+ readOnly: true
+ completed_at:
+ format: unixtime
+ description: A timestamp when this batch was completed (in unix epochs).
+ type: integer
+ readOnly: true
+ failed_at:
+ format: unixtime
+ description: A timestamp when this batch failed (in unix epochs).
+ type: integer
+ readOnly: true
+ expired_at:
+ format: unixtime
+ description: A timestamp when this batch expired (in unix epochs).
+ type: integer
+ readOnly: true
+ cancelling_at:
+ format: unixtime
+ description: A timestamp when this batch started cancelling (in unix epochs).
+ type: integer
+ readOnly: true
+ cancelled_at:
+ format: unixtime
+ description: A timestamp when this batch was cancelled (in unix epochs).
+ type: integer
+ readOnly: true
+ request_counts:
+ $ref: "#/definitions/BatchRequestCounts"
+ metadata:
+ description: A set of key-value pairs that can be attached to the batch. This can be useful for storing additional infomration about the batch in a structured format.
+ type: object
+ additionalProperties:
+ type: string
+ BatchCreateRequest:
+ title: BatchCreateRequest
+ description: Defines the request to create a batch.
+ required:
+ - input_file_id
+ - endpoint
+ - completion_window
+ type: object
+ properties:
+ input_file_id:
+ description: The ID if the input file for the batch.
+ minLength: 1
+ type: string
+ endpoint:
+ description: The API endpoint used by the batch.
+ type: string
+ completion_window:
+ description: The time frame within which the batch should be processed.
+ type: string
+ metadata:
+ description: A set of key-value pairs that can be attached to the batch. This can be useful for storing additional infomration about the batch in a structured format.
+ type: object
+ additionalProperties:
+ type: string
+ BatchErrorData:
+ title: BatchErrorData
+ description: Error information for a failure in batch.
+ type: object
+ properties:
+ code:
+ description: An error code identifying the error type.
+ type: string
+ message:
+ description: A human-readable message providing more details about the error.
+ type: string
+ param:
+ description: The name of the parameter that caused the error, if applicable (can be null).
+ type: string
+ line:
+ description: The line number of the input file where the error occurred, if applicable (can be null).
+ type: string
+ BatchErrors:
+ title: BatchErrors
+ description: For batches that have failed, this will contain more information on the cause of the failures.
+ type: object
+ properties:
+ object:
+ description: The type of the errors object. This is always 'list'.
+ type: string
+ data:
+ $ref: "#/definitions/BatchErrorData"
+ BatchRequestCounts:
+ title: BatchRequestCounts
+ description: The request counts for different statuses within the batch.
+ type: object
+ properties:
+ total:
+ description: The total number of requests in the batch.
+ type: integer
+ completed:
+ description: The number of requests in the batch that have been completed successfully.
+ type: integer
+ failed:
+ description: The number of requests in the batch that have failed.
+ type: integer
+ BatchStatus:
+ title: BatchStatus
+ description: The status of a batch.
+ enum:
+ - validating
+ - failed
+ - in_progress
+ - finalizing
+ - completed
+ - expired
+ - cancelling
+ - cancelled
+ type: string
+ readOnly: true
+ x-ms-enum:
+ name: BatchStatus
+ modelAsString: true
+ values:
+ - value: validating
+ description: The input file is being validated before the batch can begin.
+ - value: failed
+ description: The input file has failed the validation process.
+ - value: in_progress
+ description: The input file was successfully validated and the batch is currently being executed.
+ - value: finalizing
+ description: The batch has completed and the results are being prepared.
+ - value: completed
+ description: The batch has been completed and the results are ready.
+ - value: expired
+ description: The batch was not able to complete within the 24-hour time window.
+ - value: cancelling
+ description: Cancellation of the batch has been initiated.
+ - value: cancelled
+ description: The batch was cancelled.
+ BatchesList:
+ title: BatchList
+ description: Represents a list of batches.
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ data:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/Batch"
+ first_id:
+ description: The id of the first batch in the list of batches returned.
+ type: string
+ last_id:
+ description: The id of the last batch in the list of batches returned.
+ type: string
+ has_more:
+ description: A value indicating whether the list contains more elements than returned.
+ type: boolean
+ 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
+ ChunkingSettings:
+ type: object
+ title: ChunkingSettings
+ description: Chunking settings
+ properties:
+ maxChunkSizeInTokens:
+ type: integer
+ CompletionAction:
+ type: string
+ description: The completion action.
+ enum:
+ - cleanUpTempAssets
+ - keepAllAssets
+ x-ms-enum:
+ name: IngestionJobCompletionAction
+ modelAsString: true
+ values:
+ - name: keepAllAssets
+ value: keepAllAssets
+ description: Will not clean up any of the intermediate assets created during the ingestion process.
+ - name: cleanUpTempAssets
+ value: cleanUpTempAssets
+ description: Will clean up intermediate assets created during the ingestion process.
+ ComputeType:
+ type: string
+ description: The compute type.
+ enum:
+ - ServerlessCompute
+ - CustomCompute
+ x-ms-enum:
+ name: ComputeType
+ modelAsString: true
+ values:
+ - name: ServerlessCompute
+ value: ServerlessCompute
+ description: Serverless user compute.
+ - name: CustomCompute
+ value: CustomCompute
+ description: Custom user compute.
+ ConnectionStringConnection:
+ description: Connection string connection.
+ required:
+ - connectionString
+ allOf:
+ - $ref: "#/definitions/BaseConnection"
+ - type: object
+ properties:
+ connectionString:
+ type: string
+ description: Connection string
+ x-ms-discriminator-value: ConnectionString
+ ConnectionType:
+ type: string
+ description: The connection type.
+ enum:
+ - EndpointWithKey
+ - ConnectionString
+ - EndpointWithManagedIdentity
+ - WorkspaceConnection
+ - RelativeConnection
+ x-ms-enum:
+ name: ConnectionType
+ modelAsString: true
+ values:
+ - name: EndpointWithKey
+ value: EndpointWithKey
+ description: Endpoint and key connection.
+ - name: ConnectionString
+ value: ConnectionString
+ description: Connection string.
+ - name: EndpointWithManagedIdentity
+ value: EndpointWithManagedIdentity
+ description: Endpoint and managed identity.
+ - name: WorkspaceConnection
+ value: WorkspaceConnection
+ description: AML Workspace connection.
+ - name: RelativeConnection
+ value: RelativeConnection
+ description: Relative deployment
+ CosmosDBIndex:
+ description: CosmosDB Index.
+ required:
+ - connectionId
+ allOf:
+ - $ref: "#/definitions/TargetIndex"
+ - type: object
+ properties:
+ connectionId:
+ type: string
+ description: The id of the connection pointing to the cosmos DB.
+ collectionName:
+ type: string
+ description: The name of the cosmos DB collection.
+ databaseName:
+ type: string
+ description: The name of the cosmos DB database.
+ x-ms-discriminator-value: CosmosDB
+ CrawlingSettings:
+ type: object
+ title: CrawlingSettings
+ description: Crawling settings
+ properties:
+ maxCrawlDepth:
+ type: integer
+ maxCrawlTimeInMins:
+ type: integer
+ maxDownloadTimeInMins:
+ type: integer
+ maxFileSize:
+ type: integer
+ maxRedirects:
+ type: integer
+ maxFiles:
+ type: integer
+ CustomCompute:
+ description: Custom compute.
+ required:
+ - computeId
+ allOf:
+ - $ref: "#/definitions/JobCompute"
+ - type: object
+ properties:
+ computeId:
+ type: string
+ description: Id of the custom compute
+ x-ms-discriminator-value: CustomCompute
+ DeploymentConnection:
+ description: Relative deployment connection.
+ allOf:
+ - $ref: "#/definitions/BaseConnection"
+ x-ms-discriminator-value: RelativeConnection
+ 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
+ EndpointKeyConnection:
+ description: Endpoint key connection.
+ required:
+ - endpoint
+ - key
+ allOf:
+ - $ref: "#/definitions/BaseConnection"
+ - type: object
+ properties:
+ endpoint:
+ type: string
+ description: Endpoint
+ key:
+ type: string
+ description: Key
+ x-ms-discriminator-value: EndpointWithKey
+ EndpointMIConnection:
+ description: Endpoint Managed Identity connection.
+ required:
+ - endpoint
+ allOf:
+ - $ref: "#/definitions/BaseConnection"
+ - type: object
+ properties:
+ endpoint:
+ type: string
+ description: Endpoint
+ resourceId:
+ type: string
+ description: Resource Id
+ x-ms-discriminator-value: EndpointWithManagedIdentity
+ Error:
+ title: Error
+ description: "Error content as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)."
+ required:
+ - code
+ - message
+ type: object
+ properties:
+ code:
+ $ref: "#/definitions/ErrorCode"
+ message:
+ description: The message of this error.
+ minLength: 1
+ type: string
+ target:
+ description: The location where the error happened if available.
+ type: string
+ details:
+ description: The error details if available.
+ type: array
+ items:
+ $ref: "#/definitions/Error"
+ innererror:
+ $ref: "#/definitions/InnerError"
+ ErrorCode:
+ title: ErrorCode
+ description: "Error codes as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)."
+ enum:
+ - conflict
+ - invalidPayload
+ - forbidden
+ - notFound
+ - unexpectedEntityState
+ - itemDoesAlreadyExist
+ - serviceUnavailable
+ - internalFailure
+ - quotaExceeded
+ - jsonlValidationFailed
+ - fileImportFailed
+ - tooManyRequests
+ - unauthorized
+ - contentFilter
+ type: string
+ x-ms-enum:
+ name: ErrorCode
+ modelAsString: true
+ values:
+ - value: conflict
+ description: The requested operation conflicts with the current resource state.
+ - value: invalidPayload
+ description: The request data is invalid for this operation.
+ - value: forbidden
+ description: The operation is forbidden for the current user/api key.
+ - value: notFound
+ description: The resource is not found.
+ - value: unexpectedEntityState
+ description: The operation cannot be executed in the current resource's state.
+ - value: itemDoesAlreadyExist
+ description: The item does already exist.
+ - value: serviceUnavailable
+ description: The service is currently not available.
+ - value: internalFailure
+ description: Internal error. Please retry.
+ - value: quotaExceeded
+ description: Quota exceeded.
+ - value: jsonlValidationFailed
+ description: Validation of jsonl data failed.
+ - value: fileImportFailed
+ description: Import of file failed.
+ - value: tooManyRequests
+ description: Too many requests. Please retry later.
+ - value: unauthorized
+ description: The current user/api key is not authorized for the operation.
+ - value: contentFilter
+ description: Image generation failed as a result of our safety system.
+ ErrorResponse:
+ title: ErrorResponse
+ description: "Error response as defined in the Microsoft REST guidelines\r\n(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)."
+ required:
+ - error
+ type: object
+ properties:
+ error:
+ $ref: "#/definitions/Error"
+ EventType:
+ title: EventType
+ description: Defines the severity of a content filter result.
+ enum:
+ - message
+ - metrics
+ type: string
+ x-ms-enum:
+ name: EventType
+ modelAsString: true
+ values:
+ - value: message
+ description: Event only contains human readable messages.
+ - value: metrics
+ description: Event contains metrics.
+ File:
+ title: File
+ description: A file is a document usable for training and validation. It can also be a service generated document with result details.
+ required:
+ - filename
+ - purpose
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ created_at:
+ format: unixtime
+ description: A timestamp when this job or item was created (in unix epochs).
+ type: integer
+ readOnly: true
+ id:
+ description: The identity of this item.
+ type: string
+ readOnly: true
+ status:
+ $ref: '#/definitions/FileState'
+ bytes:
+ format: int64
+ description: "The size of this file when available (can be null). File sizes larger than 2^53-1 are not supported to ensure compatibility\r\nwith JavaScript integers."
+ type: integer
+ readOnly: true
+ purpose:
+ $ref: "#/definitions/Purpose"
+ filename:
+ description: The name of the file.
+ minLength: 1
+ type: string
+ status_details:
+ description: The error message with details in case processing of this file failed.
+ type: string
+ readOnly: true
+ readOnly: true
+ FileCreate:
+ title: FileCreate
+ description: Defines a document to import from an external content url to be usable with Azure OpenAI.
+ required:
+ - content_url
+ - purpose
+ type: object
+ properties:
+ purpose:
+ $ref: "#/definitions/Purpose"
+ 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
+ FileDetails:
+ title: FileDetails
+ description: A file detail is a document used by batch service to fetch file blob details.
+ required:
+ - filename
+ - purpose
+ type: object
+ properties:
+ id:
+ description: The identity of this item.
+ type: string
+ readOnly: true
+ filename:
+ description: The name of the file.
+ minLength: 1
+ type: string
+ path:
+ description: The the relative path to the file within the container.
+ type: string
+ readOnly: true
+ storage_account_uri:
+ format: url
+ description: The storage account url of this file.
+ type: string
+ readOnly: true
+ storage_container_name:
+ description: The Storage Container Name of this file blob.
+ type: string
+ readOnly: true
+ purpose:
+ $ref: "#/definitions/Purpose"
+ FileDelete:
+ title: FileDelete
+ required:
+ - deleted
+ - id
+ - object
+ type: object
+ properties:
+ object:
+ minLength: 1
+ type: string
+ description: The file object.
+ deleted:
+ type: boolean
+ description: A value indicating whether the file was deleted.
+ id:
+ minLength: 1
+ type: string
+ description: The file-id that was deleted.
+ description: Defines the response for File Delete.
+ FileImport:
+ title: FileImport
+ description: Defines a document to import from an external content url to be usable with Azure OpenAI.
+ required:
+ - content_url
+ - filename
+ - purpose
+ type: object
+ properties:
+ purpose:
+ $ref: "#/definitions/Purpose"
+ filename:
+ description: "The name of the [JSON Lines](https://jsonlines.readthedocs.io/en/latest/) file to be uploaded.\r\nIf the `purpose` is set to \"fine-tune\", each line is a JSON record with \"prompt\" and \"completion\" fields representing your training examples."
+ minLength: 1
+ type: string
+ content_url:
+ format: url
+ description: The url to download the document from (can be SAS url of a blob or any other external url accessible with a GET request).
+ type: string
+ FileList:
+ title: FileList
+ description: Represents a list of files.
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ data:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/File"
+ FileState:
+ title: FileState
+ description: The state of a file.
+ enum:
+ - uploaded
+ - pending
+ - running
+ - processed
+ - error
+ - deleting
+ - deleted
+ type: string
+ readOnly: true
+ x-ms-enum:
+ name: FileState
+ modelAsString: true
+ values:
+ - value: uploaded
+ description: >-
+ The file has been uploaded but it's not yet processed. This state is
+ not returned by Azure OpenAI and exposed only for compatibility. It
+ can be categorized as an inactive state.
+ - value: pending
+ description: >-
+ The operation was created and is not queued to be processed in the
+ future. It can be categorized as an inactive state.
+ - value: running
+ description: >-
+ The operation has started to be processed. It can be categorized as
+ an active state.
+ - value: processed
+ description: >-
+ The operation has successfully be processed and is ready for
+ consumption. It can be categorized as a terminal state.
+ - value: error
+ description: >-
+ The operation has completed processing with a failure and cannot be
+ further consumed. It can be categorized as a terminal state.
+ - value: deleting
+ description: >-
+ The entity is ni the process to be deleted. This state is not
+ returned by Azure OpenAI and exposed only for compatibility. It can
+ be categorized as an active state.
+ - value: deleted
+ description: >-
+ The entity has been deleted but may still be referenced by other
+ entities predating the deletion. It can be categorized as a terminal
+ state.
+ FineTuningHyperParameters:
+ title: FineTuningHyperParameters
+ description: The hyper parameter settings used in a fine tune job.
+ type: object
+ properties:
+ n_epochs:
+ format: int32
+ description: The number of epochs to train the model for. An epoch refers to one full cycle through the training dataset.
+ type: integer
+ batch_size:
+ format: int32
+ description: "The batch size to use for training. The batch size is the number of training examples used to train a single forward and backward pass.\r\nIn general, we've found that larger batch sizes tend to work better for larger datasets.\r\nThe default value as well as the maximum value for this property are specific to a base model."
+ type: integer
+ learning_rate_multiplier:
+ format: double
+ description: "The learning rate multiplier to use for training. The fine-tuning learning rate is the original learning rate used for pre-training multiplied by this value.\r\nLarger learning rates tend to perform better with larger batch sizes.\r\nWe recommend experimenting with values in the range 0.02 to 0.2 to see what produces the best results."
+ type: number
+ FineTuningJob:
+ title: FineTuningJob
+ description: Defines the values of a fine tune job.
+ required:
+ - model
+ - training_file
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ created_at:
+ format: unixtime
+ description: A timestamp when this job or item was created (in unix epochs).
+ type: integer
+ readOnly: true
+ id:
+ description: The identity of this item.
+ type: string
+ readOnly: true
+ status:
+ $ref: "#/definitions/FineTuningState"
+ model:
+ description: The identifier (model-id) of the base model used for the fine-tune.
+ minLength: 1
+ type: string
+ fine_tuned_model:
+ description: "The identifier (model-id) of the resulting fine tuned model. This property is only populated for successfully completed fine-tune runs.\r\nUse this identifier to create a deployment for inferencing."
+ type: string
+ training_file:
+ description: The file which is used for training.
+ minLength: 1
+ type: string
+ validation_file:
+ description: The file which is used to evaluate the fine tuned model during training.
+ type: string
+ result_files:
+ description: "The result file identities (file-id) containing training and evaluation metrics in csv format.\r\nThe file is only available for successfully completed fine-tune runs."
+ type: array
+ items:
+ type: string
+ finished_at:
+ format: int32
+ description: A timestamp when this job or item has finished successfully (in unix epochs).
+ type: integer
+ organisation_id:
+ description: The organisation id of this fine tune job. Unused on Azure OpenAI; compatibility for OpenAI only.
+ type: string
+ trained_tokens:
+ format: int32
+ description: The total number of billable tokens processed by this fine tuning job.
+ type: integer
+ readOnly: true
+ error:
+ $ref: "#/definitions/FineTuningJobError"
+ estimated_finish:
+ format: int32
+ description: The Unix timestamp (in seconds) for when the fine-tuning job is estimated to finish. The value will be null if the fine-tuning job is not running.
+ type: integer
+ hyperparameters:
+ $ref: "#/definitions/FineTuningHyperParameters"
+ suffix:
+ description: The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name.
+ type: string
+ seed:
+ format: int32
+ description: The seed used for the finetuning job.
+ type: integer
+ integrations:
+ type: array
+ items:
+ $ref: "#/definitions/WandBIntegrationRequestWrapper"
+ description: "A list configurations for integrations supporting the fine-tuning job.\r\nThere are many integrations planned, so make sure to check and act on the integration type."
+ FineTuningJobCheckpoint:
+ title: FineTuningJobCheckpoint
+ required:
+ - created_at
+ - fine_tuned_model_checkpoint
+ - fine_tuning_job_id
+ - metrics
+ - step_number
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ id:
+ description: The identity of this checkpoint.
+ type: string
+ readOnly: true
+ created_at:
+ format: unixtime
+ description: The Unix timestamp (in seconds) for when the checkpoint was created.
+ type: integer
+ fine_tuned_model_checkpoint:
+ description: The name of the fine-tuned checkpoint model that is created.
+ minLength: 1
+ type: string
+ step_number:
+ format: int32
+ description: The step number that the checkpoint was created at.
+ type: integer
+ metrics:
+ title: Dictionary`2
+ description: The metrics at the step number during the fine-tuning job.
+ type: object
+ additionalProperties:
+ format: double
+ type: number
+ fine_tuning_job_id:
+ description: The name of the fine-tuning job that this checkpoint was created from..
+ minLength: 1
+ type: string
+ FineTuningJobCheckpointList:
+ title: FineTuningJobCheckpointList
+ description: Represents a list of checkpoints.
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ data:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/FineTuningJobCheckpoint"
+ has_more:
+ description: A value indicating whether the list contains more elements than returned.
+ type: boolean
+ FineTuningJobCreation:
+ title: FineTuningJobCreation
+ description: Defines the values of a fine tune job.
+ required:
+ - model
+ - training_file
+ type: object
+ properties:
+ model:
+ description: The identifier (model-id) of the base model used for this fine-tune.
+ minLength: 1
+ type: string
+ training_file:
+ description: The file identity (file-id) that is used for training this fine tuned model.
+ minLength: 1
+ type: string
+ validation_file:
+ description: The file identity (file-id) that is used to evaluate the fine tuned model during training.
+ type: string
+ hyperparameters:
+ $ref: "#/definitions/FineTuningHyperParameters"
+ suffix:
+ description: The suffix used to identify the fine-tuned model. The suffix can contain up to 40 characters (a-z, A-Z, 0-9,- and _) that will be added to your fine-tuned model name.
+ type: string
+ seed:
+ format: int32
+ description: The seed used for the finetuning job. Passing in the same seed and job parameters should produce the same results, but may differ in rare cases. If a seed is not specified, one will be generated for you.
+ type: integer
+ integrations:
+ type: array
+ items:
+ $ref: "#/definitions/WandBIntegrationRequestWrapper"
+ description: "A list configurations for integrations supporting the fine-tuning job.\r\nThere are many integrations planned, so make sure to check and act on the integration type."
+ FineTuningJobError:
+ title: FineTuningJobError
+ description: For fine-tuning jobs that have failed, this will contain more information on the cause of the failure.
+ type: object
+ properties:
+ code:
+ description: The machine-readable error code..
+ type: string
+ message:
+ description: The human-readable error message.
+ type: string
+ param:
+ description: The parameter that was invalid, usually training_file or validation_file. This field will be null if the failure was not parameter-specific.
+ type: string
+ FineTuningJobEvent:
+ title: FineTuningJobEvent
+ required:
+ - created_at
+ - level
+ - message
+ - type
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ id:
+ description: The identity of this event.
+ type: string
+ readOnly: true
+ created_at:
+ format: unixtime
+ description: A timestamp when this event was created (in unix epochs).
+ type: integer
+ level:
+ $ref: "#/definitions/LogLevel"
+ message:
+ description: The message describing the event. This can be a change of state, e.g., enqueued, started, failed or completed, or other events like uploaded results.
+ minLength: 1
+ type: string
+ type:
+ $ref: "#/definitions/EventType"
+ data:
+ description: Machine readable data of this event.
+ FineTuningJobEventList:
+ title: FineTuningJobEventList
+ description: Represents a list of events.
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ data:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/FineTuningJobEvent"
+ has_more:
+ description: A value indicating whether the list contains more elements than returned.
+ type: boolean
+ FineTuningJobList:
+ title: FineTuningJobList
+ description: Represents a list of fine tunes.
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ data:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/FineTuningJob"
+ has_more:
+ description: A value indicating whether the list contains more elements than returned.
+ type: boolean
+ FineTuningState:
+ title: FineTuningState
+ description: The state of a finetunes object or fine tuning job.
+ enum:
+ - created
+ - pending
+ - running
+ - succeeded
+ - cancelled
+ - failed
+ type: string
+ readOnly: true
+ x-ms-enum:
+ name: FineTuningState
+ modelAsString: true
+ values:
+ - value: created
+ description: The operation was created. This state is not returned by Azure OpenAI and exposed only for compatibility. It can be categorized as an inactive state.
+ - value: pending
+ description: The operation is not yet queued to be processed in the future. It can be categorized as an inactive state.
+ - value: running
+ description: The operation has started to be processed. It can be categorized as an active state.
+ - value: succeeded
+ description: The operation has successfully be processed and is ready for consumption. It can be categorized as a terminal state.
+ - value: cancelled
+ description: The operation has been cancelled and is incomplete. It can be categorized as a terminal state.
+ - value: failed
+ description: The operation has completed processing with a failure and cannot be further consumed. It can be categorized as a terminal state.
+ GenericEmbeddingSettings:
+ title: ConnectionEmbeddingSettings
+ description: Connection Embedding Settings
+ type: object
+ properties:
+ connection:
+ $ref: "#/definitions/BaseConnection"
+ deploymentName:
+ type: string
+ modelName:
+ type: string
+ IngestionError:
+ title: IngestionError
+ description: The details of the ingestion error
+ type: object
+ properties:
+ message:
+ type: string
+ innerErrors:
+ type: array
+ items:
+ type: string
+ IngestionJob:
+ title: IngestionJob
+ description: Represents the details of a job.
+ type: object
+ required:
+ - kind
+ discriminator: kind
+ properties:
+ kind:
+ $ref: "#/definitions/IngestionJobType"
+ jobId:
+ type: string
+ IngestionJobList:
+ title: IngestionJobList
+ description: Represents a list of ingestion jobs.
+ type: object
+ properties:
+ nextLink:
+ description: The link to the next page.
+ type: string
+ value:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/IngestionJob"
+ IngestionJobProgress:
+ title: IngestionJobProgress
+ type: object
+ required:
+ - stageProgress
+ properties:
+ stageProgress:
+ type: array
+ items:
+ $ref: "#/definitions/IngestionJobStageProgress"
+ IngestionJobRun:
+ title: IngestionJobRun
+ description: The details of a job run
+ type: object
+ properties:
+ jobId:
+ type: string
+ runId:
+ type: string
+ status:
+ $ref: "#/definitions/OperationState"
+ error:
+ $ref: "#/definitions/IngestionError"
+ warnings:
+ type: array
+ items:
+ type: string
+ progress:
+ $ref: "#/definitions/IngestionJobProgress"
+ IngestionJobRunList:
+ title: IngestionJobRunList
+ description: Represents a list of ingestion job runs.
+ type: object
+ properties:
+ nextLink:
+ description: The link to the next page.
+ type: string
+ value:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/IngestionJobRun"
+ IngestionJobStageProgress:
+ title: IngestionJobStageProgress
+ type: object
+ properties:
+ name:
+ type: string
+ totalItems:
+ type: integer
+ format: int32
+ processedItems:
+ type: integer
+ format: int32
+ state:
+ $ref: "#/definitions/OperationState"
+ subStageProgress:
+ type: array
+ items:
+ $ref: "#/definitions/IngestionJobStageProgress"
+ IngestionJobSystemCompute:
+ type: object
+ allOf:
+ - $ref: "#/definitions/IngestionJob"
+ - type: object
+ properties:
+ searchServiceConnection:
+ $ref: "#/definitions/BaseConnection"
+ datasource:
+ $ref: "#/definitions/SystemComputeDatasource"
+ completionAction:
+ $ref: "#/definitions/CompletionAction"
+ dataRefreshIntervalInHours:
+ type: integer
+ x-ms-discriminator-value: SystemCompute
+ IngestionJobType:
+ title: IngestionJobType
+ type: string
+ description: The job type.
+ enum:
+ - SystemCompute
+ - UserCompute
+ x-ms-enum:
+ name: IngestionJobType
+ modelAsString: true
+ values:
+ - name: SystemCompute
+ value: SystemCompute
+ description: Jobs that run on service owned resources.
+ - name: UserCompute
+ value: UserCompute
+ description: Jobs that run on user owned workspace.
+ IngestionJobUserCompute:
+ type: object
+ required:
+ - workspaceId
+ allOf:
+ - $ref: "#/definitions/IngestionJob"
+ - type: object
+ properties:
+ workspaceId:
+ type: string
+ compute:
+ $ref: "#/definitions/JobCompute"
+ target:
+ $ref: "#/definitions/TargetIndex"
+ datasource:
+ $ref: "#/definitions/UserComputeDatasource"
+ dataRefreshIntervalInHours:
+ type: integer
+ x-ms-discriminator-value: UserCompute
+ 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.
+ IntegrationTypes:
+ title: IntegrationTypes
+ enum:
+ - wandb
+ type: string
+ description: List of Fine Tune integrations available.
+ JobCompute:
+ title: JobCompute
+ description: The compute settings of the job.
+ type: object
+ discriminator: kind
+ required:
+ - kind
+ properties:
+ kind:
+ $ref: "#/definitions/ComputeType"
+ LifeCycleStatus:
+ title: LifeCycleStatus
+ description: "The life cycle status of a model.\r\nNote: A model can be promoted from \"preview\" to \"generally-available\", but never from \"generally-available\" to \"preview\"."
+ enum:
+ - preview
+ - generally-available
+ type: string
+ x-ms-enum:
+ name: LifeCycleStatus
+ modelAsString: true
+ values:
+ - value: preview
+ description: Model is in preview and covered by the service preview terms.
+ - value: generally-available
+ description: Model is generally available.
+ LogLevel:
+ title: LogLevel
+ description: The verbosity level of an event.
+ enum:
+ - info
+ - warning
+ - error
+ type: string
+ x-ms-enum:
+ name: LogLevel
+ modelAsString: true
+ values:
+ - value: info
+ description: This event is for information only.
+ - value: warning
+ description: This event represents a mitigated issue.
+ - value: error
+ description: This message represents a non recoverable issue.
+ Model:
+ title: Model
+ description: A model is either a base model or the result of a successful fine tune job.
+ required:
+ - capabilities
+ - deprecation
+ - lifecycle_status
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ created_at:
+ format: unixtime
+ description: A timestamp when this job or item was created (in unix epochs).
+ type: integer
+ readOnly: true
+ id:
+ description: The identity of this item.
+ type: string
+ readOnly: true
+ status:
+ $ref: "#/definitions/FineTuningState"
+ model:
+ description: The base model identity (model-id) if this is a fine tune model; otherwise `null`.
+ type: string
+ fine_tune:
+ description: The fine tune job identity (fine-tune-id) if this is a fine tune model; otherwise `null`.
+ type: string
+ capabilities:
+ $ref: "#/definitions/Capabilities"
+ lifecycle_status:
+ $ref: "#/definitions/LifeCycleStatus"
+ deprecation:
+ $ref: "#/definitions/Deprecation"
+ ModelList:
+ title: ModelList
+ description: Represents a list of models.
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ data:
+ description: The list of items.
+ type: array
+ items:
+ $ref: "#/definitions/Model"
+ OperationState:
+ title: OperationState
+ description: The state of a job or item.
+ enum:
+ - notRunning
+ - running
+ - succeeded
+ - failed
+ type: string
+ readOnly: true
+ x-ms-enum:
+ name: OperationState
+ modelAsString: true
+ values:
+ - value: notRunning
+ description: The operation is not yet queued to be processed in the future.
+ - value: running
+ description: The operation has started to be processed.
+ - value: succeeded
+ description: The operation has successfully be processed and is ready for consumption.
+ - value: failed
+ description: The operation has completed processing with a failure and cannot be further consumed.
+ PineconeIndex:
+ description: Pinecone Index.
+ required:
+ - connectionId
+ allOf:
+ - $ref: "#/definitions/TargetIndex"
+ - type: object
+ properties:
+ connectionId:
+ type: string
+ description: The id of the connection pointing to the pinecone.
+ x-ms-discriminator-value: Pinecone
+ 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
+ - assistants
+ - assistants_output
+ - batch
+ - batch_output
+ type: string
+ readOnly: true
+ 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.
+ - value: assistants
+ description: This file contains data to be used in assistants.
+ - value: assistants_output
+ description: This file contains the results of an assistant.
+ - value: batch
+ description: This file contains the input data for a batch.
+ - value: batch_output
+ description: This file contains the results of a batch.
+ ServerlessCompute:
+ description: Serverless compute.
+ allOf:
+ - $ref: "#/definitions/JobCompute"
+ - type: object
+ properties:
+ sku:
+ type: string
+ description: SKU Level
+ instanceCount:
+ type: integer
+ description: The count of instances to run the job on.
+ x-ms-discriminator-value: ServerlessCompute
+ SystemComputeDatasource:
+ title: SystemComputeDatasource
+ type: object
+ required:
+ - kind
+ properties:
+ kind:
+ $ref: "#/definitions/SystemComputeDatasourceType"
+ discriminator: kind
+ SystemComputeDatasourceType:
+ type: string
+ description: The datasource type.
+ enum:
+ - Storage
+ - Urls
+ x-ms-enum:
+ name: SystemComputeDatasourceType
+ modelAsString: true
+ values:
+ - name: Storage
+ value: Storage
+ description: Azure Storage Account.
+ - name: Urls
+ value: Urls
+ description: URLs.
+ SystemComputeStorage:
+ title: SystemComputeStorage
+ description: Storage account
+ required:
+ - connection
+ - containerName
+ - embeddings
+ x-ms-discriminator-value: Storage
+ allOf:
+ - $ref: "#/definitions/SystemComputeDatasource"
+ - type: object
+ properties:
+ connection:
+ $ref: "#/definitions/BaseConnection"
+ containerName:
+ type: string
+ description: container name
+ chunking:
+ $ref: "#/definitions/ChunkingSettings"
+ embeddings:
+ type: array
+ items:
+ $ref: "#/definitions/GenericEmbeddingSettings"
+ SystemComputeUrl:
+ title: SystemComputeUrl
+ description: Urls
+ required:
+ - urls
+ - connection
+ - containerName
+ - embeddings
+ x-ms-discriminator-value: Urls
+ allOf:
+ - $ref: "#/definitions/SystemComputeDatasource"
+ - type: object
+ properties:
+ urls:
+ type: array
+ items:
+ type: string
+ connection:
+ $ref: "#/definitions/BaseConnection"
+ containerName:
+ type: string
+ description: container name
+ crawling:
+ $ref: "#/definitions/CrawlingSettings"
+ chunking:
+ $ref: "#/definitions/ChunkingSettings"
+ embeddings:
+ type: array
+ items:
+ $ref: "#/definitions/GenericEmbeddingSettings"
+ TargetIndex:
+ title: TargetIndex
+ description: Information about the index to be created.
+ type: object
+ discriminator: kind
+ required:
+ - kind
+ properties:
+ kind:
+ $ref: "#/definitions/TargetType"
+ TargetType:
+ type: string
+ description: The target type.
+ enum:
+ - AzureAISearch
+ - CosmosDB
+ - Pinecone
+ x-ms-enum:
+ name: TargetType
+ modelAsString: true
+ values:
+ - name: AzureAISearch
+ value: AzureAISearch
+ description: Azure AI Search Index.
+ - name: CosmosDB
+ value: CosmosDB
+ description: CosmosDB Index.
+ - name: Pinecone
+ value: Pinecone
+ description: Pinecone Index.
+ TypeDiscriminator:
+ title: TypeDiscriminator
+ description: Defines the type of an object.
+ enum:
+ - list
+ - fine_tuning.job
+ - file
+ - fine_tuning.job.event
+ - fine_tuning.job.checkpoint
+ - model
+ - upload
+ - upload.part
+ - batch
+ type: string
+ readOnly: true
+ x-ms-enum:
+ name: TypeDiscriminator
+ modelAsString: true
+ values:
+ - value: list
+ description: This object represents a list of other objects.
+ - value: fine_tuning.job
+ description: This object represents a fine tune job.
+ - value: file
+ description: This object represents a file.
+ - value: fine_tuning.job.event
+ description: This object represents an event of a fine tuning job.
+ - value: fine_tuning.job.checkpoint
+ description: This object represents a checkpoint of a fine tuning job.
+ - value: model
+ description: This object represents a model (can be a base model or fine tune job result).
+ - value: upload
+ description: This object represents a file upload.
+ - value: upload.part
+ description: This object represents part of a file upload.
+ - value: batch
+ description: This object represents a batch.
+ UploadFileCompleteBody:
+ title: UploadFileCompleteBody
+ required:
+ - part_ids
+ type: object
+ properties:
+ part_ids:
+ title: IList`1
+ type: array
+ items:
+ type: string
+ md5:
+ type: string
+ UploadFileStartBody:
+ title: UploadFileStartBody
+ required:
+ - bytes
+ - filename
+ - mime_type
+ - purpose
+ type: object
+ properties:
+ purpose:
+ $ref: "#/definitions/Purpose"
+ filename:
+ minLength: 1
+ type: string
+ bytes:
+ format: int64
+ type: integer
+ mime_type:
+ minLength: 1
+ type: string
+ UploadPartResource:
+ title: UploadPartResource
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ created_at:
+ format: unixtime
+ description: A timestamp when this job or item was created (in unix epochs).
+ type: integer
+ readOnly: true
+ id:
+ description: The identity of this item.
+ type: string
+ readOnly: true
+ upload_id:
+ type: string
+ readOnly: true
+ azure_block_id:
+ type: string
+ readOnly: true
+ UploadResource:
+ title: UploadResource
+ type: object
+ properties:
+ object:
+ $ref: "#/definitions/TypeDiscriminator"
+ created_at:
+ format: unixtime
+ description: A timestamp when this job or item was created (in unix epochs).
+ type: integer
+ readOnly: true
+ id:
+ description: The identity of this item.
+ type: string
+ readOnly: true
+ bytes:
+ format: int64
+ type: integer
+ readOnly: true
+ filename:
+ type: string
+ readOnly: true
+ purpose:
+ $ref: "#/definitions/Purpose"
+ status:
+ $ref: "#/definitions/UploadStatus"
+ expires_at:
+ format: unixtime
+ type: integer
+ readOnly: true
+ file:
+ $ref: "#/definitions/File"
+ UploadStatus:
+ title: UploadStatus
+ enum:
+ - pending
+ - expired
+ - completed
+ - cancelled
+ type: string
+ readOnly: true
+ UserComputeDataset:
+ type: object
+ title: UserComputeStorage
+ description: Storage account
+ required:
+ - datasetId
+ - datasetType
+ x-ms-discriminator-value: Dataset
+ allOf:
+ - $ref: "#/definitions/UserComputeDatasource"
+ - type: object
+ properties:
+ datasetId:
+ type: string
+ datasetType:
+ type: string
+ chunking:
+ $ref: "#/definitions/ChunkingSettings"
+ embeddings:
+ type: array
+ items:
+ $ref: "#/definitions/WorkspaceConnectionEmbeddingSettings"
+ UserComputeDatasource:
+ title: UserComputeDatasource
+ type: object
+ discriminator: kind
+ required:
+ - kind
+ properties:
+ kind:
+ $ref: "#/definitions/UserComputeDatasourceType"
+ UserComputeDatasourceType:
+ type: string
+ description: The datasource type.
+ enum:
+ - Dataset
+ - Urls
+ x-ms-enum:
+ name: UserComputeDatasourceType
+ modelAsString: true
+ values:
+ - name: Dataset
+ value: Dataset
+ description: Workspace Dataset.
+ - name: Urls
+ value: Urls
+ description: URLs.
+ UserComputeUrl:
+ type: object
+ title: UserComputeUrl
+ description: Urls
+ required:
+ - urls
+ - embeddings
+ x-ms-discriminator-value: Urls
+ allOf:
+ - $ref: "#/definitions/UserComputeDatasource"
+ - type: object
+ properties:
+ urls:
+ type: array
+ items:
+ type: string
+ crawling:
+ $ref: "#/definitions/CrawlingSettings"
+ chunking:
+ $ref: "#/definitions/ChunkingSettings"
+ embeddings:
+ type: array
+ items:
+ $ref: "#/definitions/WorkspaceConnectionEmbeddingSettings"
+ WandBIntegrationRequest:
+ title: WandBIntegrationRequest
+ required:
+ - project
+ type: object
+ properties:
+ project:
+ minLength: 1
+ type: string
+ name:
+ type: string
+ readOnly: true
+ entity:
+ type: string
+ readOnly: true
+ tags:
+ type: array
+ items:
+ type: string
+ readOnly: true
+ WandBIntegrationRequestWrapper:
+ title: WandBIntegrationRequestWrapper
+ required:
+ - type
+ - wandb
+ type: object
+ properties:
+ type:
+ $ref: '#/definitions/IntegrationTypes'
+ wandb:
+ $ref: "#/definitions/WandBIntegrationRequest"
+ WorkspaceConnection:
+ description: AML Workspace connection.
+ required:
+ - connectionId
+ allOf:
+ - $ref: "#/definitions/BaseConnection"
+ - type: object
+ properties:
+ connectionId:
+ type: string
+ description: ConnectionId
+ x-ms-discriminator-value: WorkspaceConnection
+ WorkspaceConnectionEmbeddingSettings:
+ title: WorkspaceConnectionEmbeddingSettings
+ description: Connection id to the embedding model
+ type: object
+ properties:
+ connectionId:
+ type: string
+ deploymentName:
+ type: string
+ modelName:
+ type: string
+parameters:
+ endpoint:
+ in: path
+ name: endpoint
+ description: 'Supported Cognitive Services endpoints (protocol and hostname, for example: https://aoairesource.openai.azure.com. Replace "aoairesource" with your Azure OpenAI account name).'
+ required: true
+ type: string
+ format: url
+ x-ms-skip-url-encoding: true
+ x-ms-parameter-location: client
+ apiVersionQueryParameter:
+ in: query
+ name: api-version
+ description: The requested API version.
+ required: true
+ type: string
+ x-ms-client-default: 2024-12-01-preview
+ x-ms-parameter-location: client
+security:
+ - ApiKeyAuth: []
+ - OAuth2Auth:
+ - https://cognitiveservices.azure.com/.default
+securityDefinitions:
+ ApiKeyAuth:
+ description: API key authentication
+ type: apiKey
+ name: api-key
+ in: header
+ OAuth2Auth:
+ description: OAuth2 authentication
+ type: oauth2
+ flow: implicit
+ authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
+ scopes:
+ https://cognitiveservices.azure.com/.default: ""
+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/2024-12-01-preview/examples/cancel_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.json
new file mode 100644
index 000000000000..a6e3f3523257
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "batch-id": "batch_72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "object": "batch",
+ "id": "batch_72a2792ef7d24ba7b82c7fe4a37e379f",
+ "endpoint": "/chat/completions",
+ "errors": null,
+ "input_file_id": "file-b4fa7277f3eb4722ac18b90f46102c3f",
+ "completion_window": "24h",
+ "status": "cancelling",
+ "output_file_id": null,
+ "error_file_id": null,
+ "created_at": 1646126127,
+ "in_progress_at": 1646126130,
+ "expires_at": 1646126170,
+ "finalizing_at": null,
+ "completed_at": null,
+ "failed_at": null,
+ "expired_at": null,
+ "cancelling_at": 1646126138,
+ "cancelled_at": null,
+ "request_counts": {
+ "total": 500,
+ "completed": 100,
+ "failed": 5
+ },
+ "metadata": {
+ "batch_description": "Evaluation job"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.yaml
new file mode 100644
index 000000000000..90449a3484dc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_batch.yaml
@@ -0,0 +1,33 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ batch-id: batch_72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ "200":
+ headers: {}
+ body:
+ object: batch
+ id: batch_72a2792ef7d24ba7b82c7fe4a37e379f
+ endpoint: /chat/completions
+ errors: null
+ input_file_id: file-b4fa7277f3eb4722ac18b90f46102c3f
+ completion_window: 24h
+ status: cancelling
+ output_file_id: null
+ error_file_id: null
+ created_at: 1646126127
+ in_progress_at: 1646126130
+ expires_at: 1646126170
+ finalizing_at: null
+ completed_at: null
+ failed_at: null
+ expired_at: null
+ cancelling_at: 1646126138
+ cancelled_at: null
+ request_counts:
+ total: 500
+ completed: 100
+ failed: 5
+ metadata:
+ batch_description: Evaluation job
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.json
new file mode 100644
index 000000000000..04ff2cbe0df1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hyperparameters": {
+ "n_epochs": -1
+ },
+ "integrations": [
+ {
+ "type": "wandb",
+ "wandb": {
+ "project": "custom-wandb-project",
+ "tags": [
+ "project:tag",
+ "lineage"
+ ]
+ }
+ }
+ ],
+ "status": "cancelled",
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "finished_at": 1646127311,
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "fine_tuning.job"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.yaml
new file mode 100644
index 000000000000..1733a3bfdfdb
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/cancel_finetuning_job.yaml
@@ -0,0 +1,34 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: '{api key}'
+ api-version: 2024-12-01-preview
+ fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 200:
+ headers: {}
+ body:
+ hyperparameters:
+ n_epochs: -1
+ suffix:
+ seed:
+ integrations:
+ - type: wandb
+ wandb:
+ project: custom-wandb-project
+ name:
+ entity:
+ tags:
+ - project:tag
+ - lineage
+ status: cancelled
+ model: curie
+ fine_tuned_model:
+ training_file: file-181a1cbdcdcf4677ada87f63a0928099
+ validation_file:
+ result_files:
+ finished_at: 1646127311
+ organisation_id:
+ error:
+ id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: fine_tuning.job
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.json
new file mode 100644
index 000000000000..6a5656605191
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "object": "file",
+ "deleted": true,
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.yaml
new file mode 100644
index 000000000000..60d894e4637f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_file.yaml
@@ -0,0 +1,12 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ file-id: file-181a1cbdcdcf4677ada87f63a0928099
+responses:
+ 200:
+ headers: {}
+ body:
+ object: file
+ deleted: true
+ id: file-181a1cbdcdcf4677ada87f63a0928099
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.json
new file mode 100644
index 000000000000..50a66f236a74
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.yaml
new file mode 100644
index 000000000000..e5c73a737844
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/delete_finetuning_job.yaml
@@ -0,0 +1,9 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 204:
+ headers: {}
+ body:
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.json
new file mode 100644
index 000000000000..ce810498e866
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "batch-id": "batch_72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "object": "batch",
+ "id": "batch_72a2792ef7d24ba7b82c7fe4a37e379f",
+ "endpoint": "/chat/completions",
+ "errors": null,
+ "input_file_id": "file-b4fa7277f3eb4722ac18b90f46102c3f",
+ "completion_window": "24h",
+ "status": "completed",
+ "output_file_id": "file-f2ddaf43-b48b-46dd-b264-90da10c7a85b",
+ "error_file_id": "file-c3b563b0-ebc7-47da-93e3-a2fa694aef0c",
+ "created_at": 1646126127,
+ "in_progress_at": 1646126130,
+ "expires_at": 1646126170,
+ "finalizing_at": 1646126134,
+ "completed_at": 1646126136,
+ "failed_at": null,
+ "expired_at": null,
+ "cancelling_at": null,
+ "cancelled_at": null,
+ "request_counts": {
+ "total": 500,
+ "completed": 400,
+ "failed": 100
+ },
+ "metadata": {
+ "batch_description": "Evaluation job"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.yaml
new file mode 100644
index 000000000000..1519ed44ce52
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batch.yaml
@@ -0,0 +1,33 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ batch-id: batch_72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ "200":
+ headers: {}
+ body:
+ object: batch
+ id: batch_72a2792ef7d24ba7b82c7fe4a37e379f
+ endpoint: /chat/completions
+ errors: null
+ input_file_id: file-b4fa7277f3eb4722ac18b90f46102c3f
+ completion_window: 24h
+ status: completed
+ output_file_id: file-f2ddaf43-b48b-46dd-b264-90da10c7a85b
+ error_file_id: file-c3b563b0-ebc7-47da-93e3-a2fa694aef0c
+ created_at: 1646126127
+ in_progress_at: 1646126130
+ expires_at: 1646126170
+ finalizing_at: 1646126134
+ completed_at: 1646126136
+ failed_at: null
+ expired_at: null
+ cancelling_at: null
+ cancelled_at: null
+ request_counts:
+ total: 500
+ completed: 400
+ failed: 100
+ metadata:
+ batch_description: Evaluation job
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.json
new file mode 100644
index 000000000000..ade0576319fc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "$filter": "created_at gt 1646120000 and created_at lt 1646130000 and status eq 'completed'",
+ "$orderby": "created_at asc"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "has_more": false,
+ "data": [
+ {
+ "object": "batch",
+ "id": "batch_72a2792ef7d24ba7b82c7fe4a37e379f",
+ "endpoint": "/chat/completions",
+ "errors": null,
+ "input_file_id": "file-b4fa7277f3eb4722ac18b90f46102c3f",
+ "completion_window": "24h",
+ "status": "completed",
+ "output_file_id": "file-f2ddaf43-b48b-46dd-b264-90da10c7a85b",
+ "error_file_id": "file-c3b563b0-ebc7-47da-93e3-a2fa694aef0c",
+ "created_at": 1646126127,
+ "in_progress_at": 1646126130,
+ "expires_at": 1646126170,
+ "finalizing_at": 1646126134,
+ "completed_at": 1646126136,
+ "failed_at": null,
+ "expired_at": null,
+ "cancelling_at": null,
+ "cancelled_at": null,
+ "request_counts": {
+ "total": 500,
+ "completed": 400,
+ "failed": 100
+ },
+ "first_id": "batch_abc123",
+ "last_id": "batch_abc456",
+ "metadata": {
+ "batch_description": "Evaluation job"
+ }
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.yaml
new file mode 100644
index 000000000000..a73a434fa166
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_batches.yaml
@@ -0,0 +1,39 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ $filter: created_at gt 1646120000 and created_at lt 1646130000 and status eq 'completed'
+ $orderby: created_at asc
+responses:
+ "200":
+ headers: {}
+ body:
+ has_more: false
+ data:
+ - object: batch
+ id: batch_72a2792ef7d24ba7b82c7fe4a37e379f
+ endpoint: /chat/completions
+ errors: null
+ input_file_id: file-b4fa7277f3eb4722ac18b90f46102c3f
+ completion_window: 24h
+ status: completed
+ output_file_id: file-f2ddaf43-b48b-46dd-b264-90da10c7a85b
+ error_file_id: file-c3b563b0-ebc7-47da-93e3-a2fa694aef0c
+ created_at: 1646126127
+ in_progress_at: 1646126130
+ expires_at: 1646126170
+ finalizing_at: 1646126134
+ completed_at: 1646126136
+ failed_at: null
+ expired_at: null
+ cancelling_at: null
+ cancelled_at: null
+ request_counts:
+ total: 500
+ completed: 400
+ failed: 100
+ first_id: batch_abc123
+ last_id: batch_abc456
+ metadata:
+ batch_description: Evaluation job
+ object: list
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.json
new file mode 100644
index 000000000000..c7ef20159c4f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "created_at": 1646126127,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.yaml
new file mode 100644
index 000000000000..334055928451
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file.yaml
@@ -0,0 +1,16 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ file-id: file-181a1cbdcdcf4677ada87f63a0928099
+responses:
+ 200:
+ headers: {}
+ body:
+ metadata:
+ bytes: 140
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.json
new file mode 100644
index 000000000000..9d5cba4bfe24
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "file-id": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": "raw file content"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.yaml
new file mode 100644
index 000000000000..61a48f42250d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_file_content.yaml
@@ -0,0 +1,9 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ file-id: file-181a1cbdcdcf4677ada87f63a0928099
+responses:
+ 200:
+ headers: {}
+ body: raw file content
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.json
new file mode 100644
index 000000000000..11d0c6ca1195
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "created_at": 1646126127,
+ "object": "file"
+ },
+ {
+ "bytes": 32423,
+ "purpose": "fine-tune-results",
+ "filename": "results.csv",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "created_at": 1646126127,
+ "object": "file"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.yaml
new file mode 100644
index 000000000000..8312368bf864
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_files.yaml
@@ -0,0 +1,24 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+responses:
+ 200:
+ headers: {}
+ body:
+ data:
+ - metadata:
+ bytes: 140
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
+ - metadata:
+ bytes: 32423
+ purpose: fine-tune-results
+ filename: results.csv
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
+ object: list
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.json
new file mode 100644
index 000000000000..9b774f9121d8
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "hyperparameters": {
+ "n_epochs": -1
+ },
+ "integrations": [
+ {
+ "type": "wandb",
+ "wandb": {
+ "project": "custom-wandb-project",
+ "tags": [
+ "project:tag",
+ "lineage"
+ ]
+ }
+ }
+ ],
+ "status": "succeeded",
+ "model": "curie",
+ "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "result_files": [
+ "file-181a1cbdcdcf4677ada87f63a0928099"
+ ],
+ "finished_at": 1646127311,
+ "trained_tokens": 2342,
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "fine_tuning.job"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.yaml
new file mode 100644
index 000000000000..9675f7d096e8
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job.yaml
@@ -0,0 +1,36 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: '{api key}'
+ api-version: 2024-12-01-preview
+ fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 200:
+ headers: {}
+ body:
+ hyperparameters:
+ n_epochs: -1
+ suffix:
+ seed:
+ integrations:
+ - type: wandb
+ wandb:
+ project: custom-wandb-project
+ name:
+ entity:
+ tags:
+ - project:tag
+ - lineage
+ status: succeeded
+ model: curie
+ fine_tuned_model: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ training_file: file-181a1cbdcdcf4677ada87f63a0928099
+ validation_file:
+ result_files:
+ - file-181a1cbdcdcf4677ada87f63a0928099
+ finished_at: 1646127311
+ organisation_id:
+ trained_tokens: 2342
+ error:
+ id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: fine_tuning.job
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.json
new file mode 100644
index 000000000000..36bef0605338
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "fine-tuning-job-id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "has_more": false,
+ "data": [
+ {
+ "id": "ftckpt_qtZ5Gyk4BLq1SfLFWp3RtO3P",
+ "created_at": 1646126127,
+ "fine_tuned_model_checkpoint": "gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-10",
+ "step_number": 10,
+ "metrics": {
+ "step": 10,
+ "train_loss": 0.478,
+ "train_mean_token_accuracy": 0.924,
+ "valid_loss": 10.112,
+ "valid_mean_token_accuracy": 0.145,
+ "full_valid_loss": 0.567,
+ "full_valid_mean_token_accuracy": 0.944
+ },
+ "fine_tuning_job_id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "object": "fine_tuning.job.checkpoint"
+ },
+ {
+ "id": "ftckpt_frtXDR2453C4FG67t03MLPs5",
+ "created_at": 1646126137,
+ "fine_tuned_model_checkpoint": "gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-20",
+ "step_number": 20,
+ "metrics": {
+ "step": 20,
+ "train_loss": 0.355,
+ "train_mean_token_accuracy": 0.947,
+ "valid_loss": 11.32,
+ "valid_mean_token_accuracy": 0.122,
+ "full_valid_loss": 0.317,
+ "full_valid_mean_token_accuracy": 0.955
+ },
+ "fine_tuning_job_id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "object": "fine_tuning.job.checkpoint"
+ },
+ {
+ "id": "ftckpt_agLk6Gio560ORp14gl123fgd",
+ "created_at": 1646126147,
+ "fine_tuned_model_checkpoint": "gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-30",
+ "step_number": 30,
+ "metrics": {
+ "step": 30,
+ "train_loss": 0.155,
+ "train_mean_token_accuracy": 0.975,
+ "valid_loss": 9.31,
+ "valid_mean_token_accuracy": 0.092,
+ "full_valid_loss": 0.114,
+ "full_valid_mean_token_accuracy": 0.963
+ },
+ "fine_tuning_job_id": "ftjob-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "object": "fine_tuning.job.checkpoint"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.yaml
new file mode 100644
index 000000000000..c134cd3d8ec0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_checkpoints.yaml
@@ -0,0 +1,54 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ fine-tuning-job-id: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 200:
+ headers: {}
+ body:
+ has_more: false
+ data:
+ - id: ftckpt_qtZ5Gyk4BLq1SfLFWp3RtO3P
+ created_at: 1646126127
+ fineTunedModelCheckpoint: gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-10
+ stepNumber: 10
+ metrics:
+ step: 10
+ train_loss: 0.478
+ train_mean_token_accuracy: 0.924
+ valid_loss: 10.112
+ valid_mean_token_accuracy: 0.145
+ full_valid_loss: 0.567
+ full_valid_mean_token_accuracy: 0.944
+ fineTuningJobId: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f
+ object: fine_tuning.job.checkpoint
+ - id: ftckpt_frtXDR2453C4FG67t03MLPs5
+ created_at: 1646126137
+ fineTunedModelCheckpoint: gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-20
+ stepNumber: 20
+ metrics:
+ step: 20
+ train_loss: 0.355
+ train_mean_token_accuracy: 0.947
+ valid_loss: 11.32
+ valid_mean_token_accuracy: 0.122
+ full_valid_loss: 0.317
+ full_valid_mean_token_accuracy: 0.955
+ fineTuningJobId: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f
+ object: fine_tuning.job.checkpoint
+ - id: ftckpt_agLk6Gio560ORp14gl123fgd
+ created_at: 1646126147
+ fineTunedModelCheckpoint: gpt-35-turbo-0613.ft-72a2792ef7d24ba7b82c7fe4a37e379f:ckpt-step-30
+ stepNumber: 30
+ metrics:
+ step: 30
+ train_loss: 0.155
+ train_mean_token_accuracy: 0.975
+ valid_loss: 9.31
+ valid_mean_token_accuracy: 0.092
+ full_valid_loss: 0.114
+ full_valid_mean_token_accuracy: 0.963
+ fineTuningJobId: ftjob-72a2792ef7d24ba7b82c7fe4a37e379f
+ object: fine_tuning.job.checkpoint
+ object: list
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.json
new file mode 100644
index 000000000000..b2617b83d29a
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "fine-tuning-job-id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "has_more": false,
+ "data": [
+ {
+ "id": "ftevent-363dcd7cb4c74539bc53293c1dceef05",
+ "created_at": 1646126127,
+ "level": "info",
+ "message": "Job enqueued. Waiting for jobs ahead to complete.",
+ "type": "message",
+ "object": "fine_tuning.job.event"
+ },
+ {
+ "id": "ftevent-8c2a44999790437cb3230e543fa2cf0f",
+ "created_at": 1646126169,
+ "level": "info",
+ "message": "Job started.",
+ "type": "message",
+ "object": "fine_tuning.job.event"
+ },
+ {
+ "id": "ftevent-2d47d651d2f3484c8187c88c00078147",
+ "created_at": 1646126192,
+ "level": "info",
+ "message": "Job succeeded.",
+ "type": "message",
+ "object": "fine_tuning.job.event"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.yaml
new file mode 100644
index 000000000000..e4aed28b2a40
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_job_events.yaml
@@ -0,0 +1,33 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ fine-tuning-job-id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 200:
+ headers: {}
+ body:
+ has_more: false
+ data:
+ - id: ftevent-363dcd7cb4c74539bc53293c1dceef05
+ created_at: 1646126127
+ level: Info
+ message: Job enqueued. Waiting for jobs ahead to complete.
+ type: message
+ data:
+ object: fine_tuning.job.event
+ - id: ftevent-8c2a44999790437cb3230e543fa2cf0f
+ created_at: 1646126169
+ level: Info
+ message: Job started.
+ type: message
+ data:
+ object: fine_tuning.job.event
+ - id: ftevent-2d47d651d2f3484c8187c88c00078147
+ created_at: 1646126192
+ level: Info
+ message: Job succeeded.
+ type: message
+ data:
+ object: fine_tuning.job.event
+ object: list
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.json
new file mode 100644
index 000000000000..2f9740a91187
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "has_more": false,
+ "data": [
+ {
+ "hyperparameters": {
+ "n_epochs": -1
+ },
+ "integrations": [
+ {
+ "type": "wandb",
+ "wandb": {
+ "project": "custom-wandb-project",
+ "tags": [
+ "project:tag",
+ "lineage"
+ ]
+ }
+ }
+ ],
+ "status": "succeeded",
+ "model": "curie",
+ "fine_tuned_model": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "result_files": [
+ "file-181a1cbdcdcf4677ada87f63a0928099"
+ ],
+ "finished_at": 1646127311,
+ "trained_tokens": 2342,
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "fine_tuning.job"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.yaml
new file mode 100644
index 000000000000..3d8fea24de1f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_finetuning_jobs.yaml
@@ -0,0 +1,38 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: '{api key}'
+ api-version: 2024-12-01-preview
+responses:
+ 200:
+ headers: {}
+ body:
+ has_more: false
+ data:
+ - hyperparameters:
+ n_epochs: -1
+ suffix:
+ seed:
+ integrations:
+ - type: wandb
+ wandb:
+ project: custom-wandb-project
+ name:
+ entity:
+ tags:
+ - project:tag
+ - lineage
+ status: succeeded
+ model: curie
+ fine_tuned_model: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ training_file: file-181a1cbdcdcf4677ada87f63a0928099
+ validation_file:
+ result_files:
+ - file-181a1cbdcdcf4677ada87f63a0928099
+ finished_at: 1646127311
+ organisation_id:
+ trained_tokens: 2342
+ error:
+ id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: fine_tuning.job
+ object: list
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.json
new file mode 100644
index 000000000000..da3e74caf4fa
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "job-id": "ingestion-job"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "kind": "UserCompute",
+ "jobId": "ingestion-job",
+ "workspaceId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev",
+ "compute": {
+ "kind": "ServerlessCompute"
+ },
+ "target": {
+ "kind": "AzureAISearch",
+ "connectionId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev/connections/search-connection"
+ },
+ "datasource": {
+ "kind": "Dataset",
+ "datasetId": "azureml://locations/centraluseuap/workspaces/83317fe6-efa6-4e4a-b020-d0edd11ec382/data/PlainText/versions/1",
+ "datasetType": "uri_folder"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.yaml
new file mode 100644
index 000000000000..00d33dadf2ea
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job.yaml
@@ -0,0 +1,21 @@
+parameters:
+ api-version: 2024-12-01-preview
+ job-id: ingestion-job
+responses:
+ "200":
+ body:
+ kind: UserCompute
+ jobId: ingestion-job
+ workspaceId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev
+ compute:
+ kind: ServerlessCompute
+ target:
+ kind: AzureAISearch
+ connectionId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev/connections/search-connection
+ datasource:
+ kind: Dataset
+ datasetId: >-
+ azureml://locations/centraluseuap/workspaces/83317fe6-efa6-4e4a-b020-d0edd11ec382/data/PlainText/versions/1
+ datasetType: uri_folder
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.json
new file mode 100644
index 000000000000..07437986c44f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "job-id": "ingestion-job",
+ "run-id": "5ef7a436-1147-4cbb-82e0-3d502bcc6a7b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "jobId": "ingestion-job",
+ "runId": "5ef7a436-1147-4cbb-82e0-3d502bcc6a7b",
+ "status": "running",
+ "progress": {
+ "stageProgress": [
+ {
+ "name": "Preprocessing",
+ "totalItems": 14,
+ "processedItems": 0,
+ "state": "notRunning"
+ },
+ {
+ "name": "Indexing",
+ "state": "notRunning"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.yaml
new file mode 100644
index 000000000000..e96e0fd745ba
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_ingestion_job_run.yaml
@@ -0,0 +1,18 @@
+parameters:
+ api-version: 2024-12-01-preview
+ job-id: ingestion-job
+ run-id: 5ef7a436-1147-4cbb-82e0-3d502bcc6a7b
+responses:
+ "200":
+ body:
+ jobId: ingestion-job
+ runId: 5ef7a436-1147-4cbb-82e0-3d502bcc6a7b
+ status: running
+ progress:
+ stageProgress:
+ - name: Preprocessing
+ totalItems: 14
+ processedItems: 0
+ state: notRunning
+ - name: Indexing
+ state: notRunning
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.json
new file mode 100644
index 000000000000..3e375c3a5f31
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "model-id": "curie"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "status": "succeeded",
+ "capabilities": {
+ "fine_tune": true,
+ "inference": true,
+ "completion": true,
+ "chat_completion": false,
+ "embeddings": false
+ },
+ "lifecycle_status": "generally-available",
+ "deprecation": {
+ "fine_tune": 1677662127,
+ "inference": 1709284527
+ },
+ "id": "curie",
+ "created_at": 1646126127,
+ "object": "model"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.yaml
new file mode 100644
index 000000000000..eece35dfcdb7
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_base.yaml
@@ -0,0 +1,25 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ model-id: curie
+responses:
+ 200:
+ headers: {}
+ body:
+ status: succeeded
+ model:
+ fine_tune:
+ capabilities:
+ fine_tune: true
+ inference: true
+ completion: true
+ chat_completion: false
+ embeddings: false
+ lifecycle_status: generally-available
+ deprecation:
+ fine_tune: 1677662127
+ inference: 1709284527
+ id: curie
+ created_at: 1646126127
+ object: model
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.json
new file mode 100644
index 000000000000..32f9fe925191
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "model-id": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "status": "succeeded",
+ "model": "curie",
+ "fine_tune": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "capabilities": {
+ "fine_tune": false,
+ "inference": true,
+ "completion": true,
+ "chat_completion": false,
+ "embeddings": false
+ },
+ "lifecycle_status": "generally-available",
+ "deprecation": {
+ "inference": 1709284527
+ },
+ "id": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "model"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.yaml
new file mode 100644
index 000000000000..c3eb11057a62
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_model_finetune.yaml
@@ -0,0 +1,24 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ model-id: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 200:
+ headers: {}
+ body:
+ status: succeeded
+ model: curie
+ fine_tune: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ capabilities:
+ fine_tune: false
+ inference: true
+ completion: true
+ chat_completion: false
+ embeddings: false
+ lifecycle_status: generally-available
+ deprecation:
+ inference: 1709284527
+ id: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: model
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.json
new file mode 100644
index 000000000000..df2aa17dbab6
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "data": [
+ {
+ "status": "succeeded",
+ "capabilities": {
+ "fine_tune": true,
+ "inference": true,
+ "completion": true,
+ "chat_completion": false,
+ "embeddings": false
+ },
+ "lifecycle_status": "generally-available",
+ "deprecation": {
+ "fine_tune": 1677662127,
+ "inference": 1709284527
+ },
+ "id": "curie",
+ "created_at": 1646126127,
+ "object": "model"
+ },
+ {
+ "status": "succeeded",
+ "model": "curie",
+ "fine_tune": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "capabilities": {
+ "fine_tune": false,
+ "inference": true,
+ "completion": true,
+ "chat_completion": false,
+ "embeddings": false
+ },
+ "lifecycle_status": "generally-available",
+ "deprecation": {
+ "inference": 1709284527
+ },
+ "id": "curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "model"
+ }
+ ],
+ "object": "list"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.yaml
new file mode 100644
index 000000000000..90b7db2ba06c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/get_models.yaml
@@ -0,0 +1,41 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+responses:
+ 200:
+ headers: {}
+ body:
+ data:
+ - status: succeeded
+ model:
+ fine_tune:
+ capabilities:
+ fine_tune: true
+ inference: true
+ completion: true
+ chat_completion: false
+ embeddings: false
+ lifecycle_status: generally-available
+ deprecation:
+ fine_tune: 1677662127
+ inference: 1709284527
+ id: curie
+ created_at: 1646126127
+ object: model
+ - status: succeeded
+ model: curie
+ fine_tune: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ capabilities:
+ fine_tune: false
+ inference: true
+ completion: true
+ chat_completion: false
+ embeddings: false
+ lifecycle_status: generally-available
+ deprecation:
+ inference: 1709284527
+ id: curie.ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: model
+ object: list
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.json
new file mode 100644
index 000000000000..582fc95df520
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-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",
+ "created_at": 1646126127,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.yaml
new file mode 100644
index 000000000000..3b1133f5c89d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/import_file.yaml
@@ -0,0 +1,47 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ fileImport:
+ purpose: fine-tune
+ filename: puppy.jsonl
+ content_url: &o0
+ absolutePath: /trainingdata/puppy.jsonl
+ absoluteUri: *o0
+ localPath: /trainingdata/puppy.jsonl
+ authority: www.contoso.com
+ hostNameType: Dns
+ isDefaultPort: true
+ isFile: false
+ isLoopback: false
+ pathAndQuery: /trainingdata/puppy.jsonl
+ segments:
+ - /
+ - trainingdata/
+ - puppy.jsonl
+ isUnc: false
+ host: www.contoso.com
+ port: 443
+ query: ""
+ fragment: ""
+ scheme: https
+ originalString: *o0
+ dnsSafeHost: www.contoso.com
+ idnHost: www.contoso.com
+ isAbsoluteUri: true
+ userEscaped: false
+ userInfo: ""
+ metadata:
+ Content-Type: application/json
+responses:
+ 201:
+ headers:
+ Location: https://aoairesource.openai.azure.com/openai/files/file-181a1cbdcdcf4677ada87f63a0928099
+ body:
+ metadata:
+ bytes:
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.json
new file mode 100644
index 000000000000..20b2e32c41c2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "job-id": "ingestion-job"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "jobId": "ingestion-job",
+ "runId": "f375b912-331c-4fc5-8e9f-2d7205e3e036",
+ "status": "succeeded"
+ },
+ {
+ "jobId": "ingestion-job",
+ "runId": "07f2d192-add7-4202-a2e3-858c2577f4fd",
+ "status": "failed"
+ },
+ {
+ "jobId": "ingestion-job",
+ "runId": "5ef7a436-1147-4cbb-82e0-3d502bcc6a7b",
+ "status": "running"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.yaml
new file mode 100644
index 000000000000..5f0aba23face
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_job_runs.yaml
@@ -0,0 +1,16 @@
+parameters:
+ api-version: 2024-12-01-preview
+ job-id: ingestion-job
+responses:
+ "200":
+ body:
+ value:
+ - jobId: ingestion-job
+ runId: f375b912-331c-4fc5-8e9f-2d7205e3e036
+ status: succeeded
+ - jobId: ingestion-job
+ runId: 07f2d192-add7-4202-a2e3-858c2577f4fd
+ status: failed
+ - jobId: ingestion-job
+ runId: 5ef7a436-1147-4cbb-82e0-3d502bcc6a7b
+ status: running
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.json
new file mode 100644
index 000000000000..da0191dfe394
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "jobId": "usercompute-ingestion-job",
+ "kind": "UserCompute",
+ "workspaceId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev"
+ },
+ {
+ "jobId": "syscompute-ingestion-job",
+ "kind": "SystemCompute"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.yaml
new file mode 100644
index 000000000000..65b83c418aca
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/list_ingestion_jobs.yaml
@@ -0,0 +1,12 @@
+parameters:
+ api-version: 2024-12-01-preview
+responses:
+ "200":
+ body:
+ value:
+ - jobId: usercompute-ingestion-job
+ kind: UserCompute
+ workspaceId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev
+ - jobId: syscompute-ingestion-job
+ kind: SystemCompute
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.json
new file mode 100644
index 000000000000..82f9bd602d1d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "batchCreateRequest": {
+ "input_file_id": "file-b4fa7277f3eb4722ac18b90f46102c3f",
+ "endpoint": "/chat/completions",
+ "completion_window": "24h",
+ "metadata": {
+ "batch_description": "Evaluation job"
+ }
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "deployment-enqueued-tokens": 1000,
+ "deployment-maximum-enqueued-tokens": 5000
+ },
+ "body": {
+ "object": "batch",
+ "id": "batch_72a2792ef7d24ba7b82c7fe4a37e379f",
+ "endpoint": "/chat/completions",
+ "errors": null,
+ "input_file_id": "file-b4fa7277f3eb4722ac18b90f46102c3f",
+ "completion_window": "24h",
+ "status": "validating",
+ "output_file_id": null,
+ "error_file_id": null,
+ "created_at": 1646126127,
+ "in_progress_at": null,
+ "expires_at": null,
+ "finalizing_at": null,
+ "completed_at": null,
+ "failed_at": null,
+ "expired_at": null,
+ "cancelling_at": null,
+ "cancelled_at": null,
+ "request_counts": {
+ "total": 0,
+ "completed": 0,
+ "failed": 0
+ },
+ "metadata": {
+ "batch_description": "Evaluation job"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.yaml
new file mode 100644
index 000000000000..438ea285de08
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_batch.yaml
@@ -0,0 +1,41 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ batchCreateRequest:
+ input_file_id: file-b4fa7277f3eb4722ac18b90f46102c3f
+ endpoint: /chat/completions
+ completion_window: 24h
+ metadata:
+ batch_description: Evaluation job
+ content-Type: application/json
+responses:
+ "201":
+ headers:
+ deployment-enqueued-tokens: 1000
+ deployment-maximum-enqueued-tokens: 5000
+ body:
+ object: batch
+ id: batch_72a2792ef7d24ba7b82c7fe4a37e379f
+ endpoint: /chat/completions
+ errors: null
+ input_file_id: file-b4fa7277f3eb4722ac18b90f46102c3f
+ completion_window: 24h
+ status: validating
+ output_file_id: null
+ error_file_id: null
+ created_at: 1646126127
+ in_progress_at: null
+ expires_at: null
+ finalizing_at: null
+ completed_at: null
+ failed_at: null
+ expired_at: null
+ cancelling_at: null
+ cancelled_at: null
+ request_counts:
+ total: 0
+ completed: 0
+ failed: 0
+ metadata:
+ batch_description: Evaluation job
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.json
new file mode 100644
index 000000000000..f027761b2bf6
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "fineTuningJob": {
+ "integrations": [
+ {
+ "type": "wandb",
+ "wandb": {
+ "project": "custom-wandb-project",
+ "tags": [
+ "project:tag",
+ "lineage"
+ ]
+ }
+ }
+ ],
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
+ },
+ "content-Type": "application/json"
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "location": "https://aoairesource.openai.azure.com/openai/fine_tuning/jobs/ft-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "body": {
+ "hyperparameters": {
+ "n_epochs": -1
+ },
+ "integrations": [
+ {
+ "type": "wandb",
+ "wandb": {
+ "project": "custom-wandb-project",
+ "tags": [
+ "project:tag",
+ "lineage"
+ ]
+ }
+ }
+ ],
+ "status": "pending",
+ "model": "curie",
+ "training_file": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "fine_tuning.job"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.yaml
new file mode 100644
index 000000000000..3e4274534d5b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/post_finetuning_job.yaml
@@ -0,0 +1,51 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: '{api key}'
+ api-version: 2024-12-01-preview
+ fineTuningJob:
+ hyperparameters:
+ suffix:
+ seed:
+ integrations:
+ - type: wandb
+ wandb:
+ project: custom-wandb-project
+ name:
+ entity:
+ tags:
+ - project:tag
+ - lineage
+ model: curie
+ trainingFile: file-181a1cbdcdcf4677ada87f63a0928099
+ validationFile:
+ Content-Type: application/json
+responses:
+ 201:
+ headers:
+ Location: https://aoairesource.openai.azure.com/openai/fine_tuning/jobs/ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ body:
+ hyperparameters:
+ n_epochs: -1
+ suffix:
+ seed:
+ integrations:
+ - type: wandb
+ wandb:
+ project: custom-wandb-project
+ name:
+ entity:
+ tags:
+ - project:tag
+ - lineage
+ status: pending
+ model: curie
+ fine_tuned_model:
+ training_file: file-181a1cbdcdcf4677ada87f63a0928099
+ validation_file:
+ result_files:
+ finished_at:
+ organisation_id:
+ error:
+ id: ft-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: fine_tuning.job
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.json
new file mode 100644
index 000000000000..9589df983ab0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "job-id": "ingestion-job",
+ "ingestionJob": {
+ "kind": "SystemCompute",
+ "searchServiceConnection": {
+ "kind": "EndpointWithManagedIdentity",
+ "endpoint": "https://aykame-dev-search.search.windows.net"
+ },
+ "datasource": {
+ "kind": "Storage",
+ "connection": {
+ "kind": "EndpointWithManagedIdentity",
+ "endpoint": "https://mystorage.blob.core.windows.net/",
+ "resourceId": "/subscriptions/1234567-abcd-1234-5678-1234abcd/resourceGroups/my-resource/providers/Microsoft.Storage/storageAccounts/mystorage"
+ },
+ "containerName": "container",
+ "chunking": {
+ "maxChunkSizeInTokens": 2048
+ },
+ "embeddings": [
+ {
+ "connection": {
+ "kind": "RelativeConnection"
+ },
+ "deploymentName": "Ada"
+ }
+ ]
+ },
+ "dataRefreshIntervalInHours": 24,
+ "completionAction": "keepAllAssets"
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "operation-location": "https://aoairesource.openai.azure.com/openai/ingestion/jobs/ingestion-job/runs/72a2792ef7d24ba7b82c7fe4a37e379f?api-version=2024-12-01-preview"
+ },
+ "body": {
+ "kind": "SystemCompute",
+ "jobId": "ingestion-job",
+ "searchServiceConnection": {
+ "kind": "EndpointWithManagedIdentity",
+ "endpoint": "https://aykame-dev-search.search.windows.net"
+ },
+ "datasource": {
+ "kind": "Storage",
+ "connection": {
+ "kind": "EndpointWithManagedIdentity",
+ "endpoint": "https://mystorage.blob.core.windows.net/",
+ "resourceId": "/subscriptions/1234567-abcd-1234-5678-1234abcd/resourceGroups/my-resource/providers/Microsoft.Storage/storageAccounts/mystorage"
+ },
+ "containerName": "container",
+ "chunking": {
+ "maxChunkSizeInTokens": 2048
+ },
+ "embeddings": [
+ {
+ "connection": {
+ "kind": "RelativeConnection"
+ },
+ "deploymentName": "Ada"
+ }
+ ]
+ },
+ "dataRefreshIntervalInHours": 24,
+ "completionAction": "keepAllAssets"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.yaml
new file mode 100644
index 000000000000..ca0c8bab0937
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_sc.yaml
@@ -0,0 +1,51 @@
+parameters:
+ api-version: 2024-12-01-preview
+ job-id: ingestion-job
+ ingestionJob:
+ kind: SystemCompute
+ searchServiceConnection:
+ kind: EndpointWithManagedIdentity
+ endpoint: "https://aykame-dev-search.search.windows.net"
+ datasource:
+ kind: Storage
+ connection:
+ kind: EndpointWithManagedIdentity
+ endpoint: "https://mystorage.blob.core.windows.net/"
+ resourceId: >-
+ /subscriptions/1234567-abcd-1234-5678-1234abcd/resourceGroups/my-resource/providers/Microsoft.Storage/storageAccounts/mystorage
+ containerName: container
+ chunking:
+ maxChunkSizeInTokens: 2048
+ embeddings:
+ - connection:
+ kind: RelativeConnection
+ deploymentName: Ada
+ dataRefreshIntervalInHours: 24
+ completionAction: keepAllAssets
+responses:
+ "200":
+ headers:
+ operation-location: >-
+ https://aoairesource.openai.azure.com/openai/ingestion/jobs/ingestion-job/runs/72a2792ef7d24ba7b82c7fe4a37e379f?api-version=2024-12-01-preview
+ body:
+ kind: SystemCompute
+ jobId: ingestion-job
+ searchServiceConnection:
+ kind: EndpointWithManagedIdentity
+ endpoint: "https://aykame-dev-search.search.windows.net"
+ datasource:
+ kind: Storage
+ connection:
+ kind: EndpointWithManagedIdentity
+ endpoint: "https://mystorage.blob.core.windows.net/"
+ resourceId: >-
+ /subscriptions/1234567-abcd-1234-5678-1234abcd/resourceGroups/my-resource/providers/Microsoft.Storage/storageAccounts/mystorage
+ containerName: container
+ chunking:
+ maxChunkSizeInTokens: 2048
+ embeddings:
+ - connection:
+ kind: RelativeConnection
+ deploymentName: Ada
+ dataRefreshIntervalInHours: 24
+ completionAction: keepAllAssets
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.json
new file mode 100644
index 000000000000..5b4afeb2bc22
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview",
+ "job-id": "ingestion-job",
+ "ingestionJob": {
+ "kind": "UserCompute",
+ "workspaceId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev",
+ "compute": {
+ "kind": "ServerlessCompute"
+ },
+ "target": {
+ "kind": "AzureAISearch",
+ "connectionId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev/connections/search-connection"
+ },
+ "datasource": {
+ "kind": "Dataset",
+ "datasetId": "azureml://locations/centraluseuap/workspaces/83317fe6-efa6-4e4a-b020-d0edd11ec382/data/PlainText/versions/1",
+ "datasetType": "uri_folder"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {
+ "operation-location": "https://aoairesource.openai.azure.com/openai/ingestion/jobs/ingestion-job/runs/72a2792ef7d24ba7b82c7fe4a37e379f?api-version=2024-12-01-preview"
+ },
+ "body": {
+ "kind": "UserCompute",
+ "jobId": "ingestion-job",
+ "workspaceId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev",
+ "compute": {
+ "kind": "ServerlessCompute"
+ },
+ "target": {
+ "kind": "AzureAISearch",
+ "connectionId": "/subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev/connections/search-connection"
+ },
+ "datasource": {
+ "kind": "Dataset",
+ "datasetId": "azureml://locations/centraluseuap/workspaces/83317fe6-efa6-4e4a-b020-d0edd11ec382/data/PlainText/versions/1",
+ "datasetType": "uri_folder"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.yaml
new file mode 100644
index 000000000000..a2b0857354dc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/put_ingestion_job_uc.yaml
@@ -0,0 +1,39 @@
+parameters:
+ api-version: 2024-12-01-preview
+ job-id: ingestion-job
+ ingestionJob:
+ kind: UserCompute
+ workspaceId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev
+ compute:
+ kind: ServerlessCompute
+ target:
+ kind: AzureAISearch
+ connectionId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev/connections/search-connection
+ datasource:
+ kind: Dataset
+ datasetId: >-
+ azureml://locations/centraluseuap/workspaces/83317fe6-efa6-4e4a-b020-d0edd11ec382/data/PlainText/versions/1
+ datasetType: uri_folder
+responses:
+ "200":
+ headers:
+ operation-location: >-
+ https://aoairesource.openai.azure.com/openai/ingestion/jobs/ingestion-job/runs/72a2792ef7d24ba7b82c7fe4a37e379f?api-version=2024-12-01-preview
+ body:
+ kind: UserCompute
+ jobId: ingestion-job
+ workspaceId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev
+ compute:
+ kind: ServerlessCompute
+ target:
+ kind: AzureAISearch
+ connectionId: >-
+ /subscriptions/f375b912-331c-4fc5-8e9f-2d7205e3e036/resourceGroups/adrama-copilot-demo/providers/Microsoft.MachineLearningServices/workspaces/adrama-rag-dev/connections/search-connection
+ datasource:
+ kind: Dataset
+ datasetId: >-
+ azureml://locations/centraluseuap/workspaces/83317fe6-efa6-4e4a-b020-d0edd11ec382/data/PlainText/versions/1
+ datasetType: uri_folder
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.json
new file mode 100644
index 000000000000..7b2cd95b1b00
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-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",
+ "created_at": 1646126127,
+ "object": "file"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.yaml
new file mode 100644
index 000000000000..56e384d441a7
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file.yaml
@@ -0,0 +1,19 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-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:
+ metadata:
+ bytes:
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.json
new file mode 100644
index 000000000000..a26ac8d3ec35
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "upload-id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "bytes": 2097152,
+ "filename": "training_data_v21.jsonl",
+ "purpose": "fine-tune",
+ "status": "cancelled",
+ "expires_at": 1646133327,
+ "file": {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "created_at": 1646126127,
+ "object": "file"
+ },
+ "id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "upload"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.yaml
new file mode 100644
index 000000000000..c66eb69598a4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_cancel.yaml
@@ -0,0 +1,25 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ upload-id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+responses:
+ 200:
+ headers: {}
+ body:
+ bytes: 2097152
+ filename: training_data_v21.jsonl
+ purpose: fine-tune
+ status: cancelled
+ expires_at: 1646133327
+ file:
+ metadata:
+ bytes: 140
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
+ id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: upload
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.json
new file mode 100644
index 000000000000..c0a0deb66234
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "upload-id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "body": {
+ "part_ids": [
+ "LnmictL3p0u4LH/ko343nw==",
+ "LmmictL3p0u4LH/ko343nw=="
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "bytes": 2097152,
+ "filename": "training_data_v21.jsonl",
+ "purpose": "fine-tune",
+ "status": "completed",
+ "expires_at": 1646133327,
+ "file": {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "created_at": 1646126127,
+ "object": "file"
+ },
+ "id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "upload"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.yaml
new file mode 100644
index 000000000000..acdcca282f1e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_complete.yaml
@@ -0,0 +1,30 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ upload-id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ body:
+ part_ids:
+ - LnmictL3p0u4LH/ko343nw==
+ - LmmictL3p0u4LH/ko343nw==
+ md5:
+responses:
+ 200:
+ headers: {}
+ body:
+ bytes: 2097152
+ filename: training_data_v21.jsonl
+ purpose: fine-tune
+ status: completed
+ expires_at: 1646133327
+ file:
+ metadata:
+ bytes: 140
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
+ id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: upload
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.json
new file mode 100644
index 000000000000..5cefc9bf3fe1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "upload-id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "data": "raw file content",
+ "content-Type": "multipart/form-data"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "upload_id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "azure_block_id": "LnmictL3p0u4LH/ko343nw==",
+ "id": "uplprt-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "upload.part"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.yaml
new file mode 100644
index 000000000000..cb5e49484689
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_part.yaml
@@ -0,0 +1,16 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ upload-id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ data: raw file content
+ Content-Type: multipart/form-data
+responses:
+ 200:
+ headers: {}
+ body:
+ upload_id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ azure_block_id: LnmictL3p0u4LH/ko343nw==
+ id: uplprt-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: upload.part
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.json b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.json
new file mode 100644
index 000000000000..0b4579360dc0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "endpoint": "https://aoairesource.openai.azure.com",
+ "api-key": "{api key}",
+ "api-version": "2024-12-01-preview",
+ "body": {
+ "purpose": "fine-tune",
+ "filename": "training_data_v21.jsonl",
+ "bytes": 2097152,
+ "mime_type": "application/json"
+ }
+ },
+ "responses": {
+ "201": {
+ "headers": {
+ "location": "https://aoairesource.openai.azure.com/openai/uploads/runs/fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f"
+ },
+ "body": {
+ "bytes": 2097152,
+ "filename": "training_data_v21.jsonl",
+ "purpose": "fine-tune",
+ "status": "pending",
+ "expires_at": 1646133327,
+ "file": {
+ "bytes": 140,
+ "purpose": "fine-tune",
+ "filename": "puppy.jsonl",
+ "id": "file-181a1cbdcdcf4677ada87f63a0928099",
+ "created_at": 1646126127,
+ "object": "file"
+ },
+ "id": "fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f",
+ "created_at": 1646126127,
+ "object": "upload"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.yaml
new file mode 100644
index 000000000000..464d5e3d4000
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/preview/2024-12-01-preview/examples/upload_file_start.yaml
@@ -0,0 +1,30 @@
+parameters:
+ endpoint: https://aoairesource.openai.azure.com
+ api-key: "{api key}"
+ api-version: 2024-12-01-preview
+ body:
+ purpose: fine-tune
+ filename: training_data_v21.jsonl
+ bytes: 2097152
+ mimeType: application/json
+responses:
+ 201:
+ headers:
+ Location: https://aoairesource.openai.azure.com/openai/uploads/runs/fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ body:
+ bytes: 2097152
+ filename: training_data_v21.jsonl
+ purpose: fine-tune
+ status: pending
+ expires_at: 1646133327
+ file:
+ metadata:
+ bytes: 140
+ purpose: fine-tune
+ filename: puppy.jsonl
+ id: file-181a1cbdcdcf4677ada87f63a0928099
+ created_at: 1646126127
+ object: file
+ id: fine-tune-72a2792ef7d24ba7b82c7fe4a37e379f
+ created_at: 1646126127
+ object: upload
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md
index ec2c64450f43..b263be62f7f9 100644
--- a/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/authoring/readme.md
@@ -431,3 +431,23 @@ directive:
- suppress: IntegerTypeMustHaveFormat
reason: API stewardship board recommend to use format "unixtime" which is not supported by linter at the moment.
```
+
+## AzureOpenAI 2024-12-01-preview
+These settings apply only when `--tag=release_2024_12_01_preview` is specified on the command line.
+
+``` yaml $(tag) == 'release_2024_12_01_preview'
+input-file: preview/2024-12-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/2024-12-01-preview/examples/audio_speech.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.json
new file mode 100644
index 000000000000..2adac2aaf7ec
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.json
@@ -0,0 +1,18 @@
+{
+ "title": "Synthesizes audio from the provided text.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "input": "Hi! What are you going to make?",
+ "voice": "fable",
+ "response_format": "mp3"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": "101010101"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.yaml
new file mode 100644
index 000000000000..c72e349ea38d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_speech.yaml
@@ -0,0 +1,12 @@
+parameters:
+ api-version: 2024-12-01-preview
+ body:
+ input: Hi! What are you going to make?
+ response_format: mp3
+ voice: fable
+ deployment-id:
+ endpoint: "{endpoint}"
+responses:
+ "200":
+ body: "101010101"
+title: Synthesizes audio from the provided text.
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.json
new file mode 100644
index 000000000000..ec817bc4150b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.json
@@ -0,0 +1,15 @@
+{
+ "title": "Gets transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": ""
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "text": "A structured object when requesting json or verbose_json"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.yaml
new file mode 100644
index 000000000000..666424e17cb9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_object.yaml
@@ -0,0 +1,9 @@
+parameters:
+ api-version: 2024-12-01-preview
+ deployment-id:
+ endpoint: "{endpoint}"
+responses:
+ "200":
+ body:
+ text: A structured object when requesting json or verbose_json
+title: Gets transcribed text and associated metadata from provided spoken audio data.
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.json
new file mode 100644
index 000000000000..80daf38450ef
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.json
@@ -0,0 +1,15 @@
+{
+ "title": "Gets transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": "---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"
+ },
+ "responses": {
+ "200": {
+ "type": "string",
+ "example": "plain text when requesting text, srt, or vtt"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.yaml
new file mode 100644
index 000000000000..e6b9b0fa5077
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_transcription_text.yaml
@@ -0,0 +1,19 @@
+parameters:
+ api-version: 2024-12-01-preview
+ body: '---multipart-boundary
+
+ Content-Disposition: form-data; name="file"; filename="file.wav"
+
+ Content-Type: application/octet-stream
+
+
+ RIFF..audio.data.omitted
+
+ ---multipart-boundary--'
+ deployment-id:
+ endpoint: "{endpoint}"
+responses:
+ "200":
+ example: plain text when requesting text, srt, or vtt
+ type: string
+title: Gets transcribed text and associated metadata from provided spoken audio data.
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.json
new file mode 100644
index 000000000000..fc92fbc01f40
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.json
@@ -0,0 +1,16 @@
+{
+ "title": "Gets English language transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": "---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "text": "A structured object when requesting json or verbose_json"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.yaml
new file mode 100644
index 000000000000..bc6b7e6355c0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_object.yaml
@@ -0,0 +1,21 @@
+parameters:
+ api-version: 2024-12-01-preview
+ body: '---multipart-boundary
+
+ Content-Disposition: form-data; name="file"; filename="file.wav"
+
+ Content-Type: application/octet-stream
+
+
+ RIFF..audio.data.omitted
+
+ ---multipart-boundary--'
+ deployment-id:
+ endpoint: "{endpoint}"
+responses:
+ "200":
+ body:
+ text: A structured object when requesting json or verbose_json
+title:
+ Gets English language transcribed text and associated metadata from provided
+ spoken audio data.
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.json
new file mode 100644
index 000000000000..da5a29106773
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.json
@@ -0,0 +1,15 @@
+{
+ "title": "Gets English language transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": "---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"
+ },
+ "responses": {
+ "200": {
+ "type": "string",
+ "example": "plain text when requesting text, srt, or vtt"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.yaml
new file mode 100644
index 000000000000..cbd7a7474b26
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/audio_translation_text.yaml
@@ -0,0 +1,21 @@
+parameters:
+ api-version: 2024-12-01-preview
+ body: '---multipart-boundary
+
+ Content-Disposition: form-data; name="file"; filename="file.wav"
+
+ Content-Type: application/octet-stream
+
+
+ RIFF..audio.data.omitted
+
+ ---multipart-boundary--'
+ deployment-id:
+ endpoint: "{endpoint}"
+responses:
+ "200":
+ example: plain text when requesting text, srt, or vtt
+ type: string
+title:
+ Gets English language transcribed text and associated metadata from provided
+ spoken audio data.
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.json
new file mode 100644
index 000000000000..3946b75655b4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.json
@@ -0,0 +1,46 @@
+{
+ "title": "Cancels a run that is `in_progress`.\n",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "run_id": "run_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699076126,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "cancelling",
+ "started_at": 1699076126,
+ "expires_at": 1699076726,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": null,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": "You summarize books.",
+ "tools": [
+ {
+ "type": "file_search"
+ }
+ ],
+ "tool_resources": {
+ "file_search": {
+ "vector_store_ids": [
+ "vs_123"
+ ]
+ }
+ },
+ "metadata": {},
+ "usage": null,
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "response_format": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.yaml
new file mode 100644
index 000000000000..7ac55283f336
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_run.yaml
@@ -0,0 +1,35 @@
+title: |
+ Cancels a run that is `in_progress`.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ run_id: run_abc123
+responses:
+ "200":
+ body:
+ id: run_abc123
+ object: thread.run
+ created_at: 1699076126
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ status: cancelling
+ started_at: 1699076126
+ expires_at: 1699076726
+ cancelled_at: null
+ failed_at: null
+ completed_at: null
+ last_error: null
+ model: gpt-4-turbo
+ instructions: You summarize books.
+ tools:
+ - type: file_search
+ tool_resources:
+ file_search:
+ vector_store_ids:
+ - vs_123
+ metadata: {}
+ usage: null
+ temperature: 1
+ top_p: 1
+ response_format: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.json
new file mode 100644
index 000000000000..5b741e5e717f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.json
@@ -0,0 +1,27 @@
+{
+ "title": "Cancel a vector store file batch. This attempts to cancel the processing of files in this batch as soon as possible.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "batch_id": "vsfb_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "vsfb_abc123",
+ "object": "vector_store.file_batch",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123",
+ "status": "cancelling",
+ "file_counts": {
+ "in_progress": 12,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 15
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.yaml
new file mode 100644
index 000000000000..215e203703de
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/cancel_vector_store_file_batch.yaml
@@ -0,0 +1,20 @@
+title: Cancel a vector store file batch. This attempts to cancel the processing of files in this batch as soon as possible.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ batch_id: vsfb_abc123
+responses:
+ "200":
+ body:
+ id: vsfb_abc123
+ object: vector_store.file_batch
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ status: cancelling
+ file_counts:
+ in_progress: 12
+ completed: 3
+ failed: 0
+ cancelled: 0
+ total: 15
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.json
new file mode 100644
index 000000000000..56e58d94c2c7
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.json
@@ -0,0 +1,43 @@
+{
+ "title": "Creates a completion for the provided prompt, parameters and chosen model.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "system",
+ "content": "you are a helpful assistant that talks like a pirate"
+ },
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Ahoy matey! So ye be wantin' to care for a fine squawkin' parrot, eh? Well, shiver me timbers, let ol' Cap'n Assistant share some wisdom with ye! Here be the steps to keepin' yer parrot happy 'n healthy:\n\n1. Secure a sturdy cage: Yer parrot be needin' a comfortable place to lay anchor! Be sure ye get a sturdy cage, at least double the size of the bird's wingspan, with enough space to spread their wings, yarrrr!\n\n2. Perches 'n toys: Aye, parrots need perches of different sizes, shapes, 'n textures to keep their feet healthy. Also, a few toys be helpin' to keep them entertained 'n their minds stimulated, arrrh!\n\n3. Proper grub: Feed yer feathered friend a balanced diet of high-quality pellets, fruits, 'n veggies to keep 'em strong 'n healthy. Give 'em fresh water every day, or ye’ll have a scurvy bird on yer hands!\n\n4. Cleanliness: Swab their cage deck! Clean their cage on a regular basis: fresh water 'n food daily, the floor every couple of days, 'n a thorough scrubbing ev'ry few weeks, so the bird be livin' in a tidy haven, arrhh!\n\n5. Socialize 'n train: Parrots be a sociable lot, arrr! Exercise 'n interact with 'em daily to create a bond 'n maintain their mental 'n physical health. Train 'em with positive reinforcement, treat 'em kindly, yarrr!\n\n6. Proper rest: Yer parrot be needin' ’bout 10-12 hours o' sleep each night. Cover their cage 'n let them slumber in a dim, quiet quarter for a proper night's rest, ye scallywag!\n\n7. Keep a weather eye open for illness: Birds be hidin' their ailments, arrr! Be watchful for signs of sickness, such as lethargy, loss of appetite, puffin' up, or change in droppings, and make haste to a vet if need be.\n\n8. Provide fresh air 'n avoid toxins: Parrots be sensitive to draft and pollutants. Keep yer quarters well ventilated, but no drafts, arrr! Be mindful of toxins like Teflon fumes, candles, or air fresheners.\n\nSo there ye have it, me hearty! With proper care 'n commitment, yer parrot will be squawkin' \"Yo-ho-ho\" for many years to come! Good luck, sailor, and may the wind be at yer back!"
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.yaml
new file mode 100644
index 000000000000..504b29691a59
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions.yaml
@@ -0,0 +1,45 @@
+title: Creates a completion for the provided prompt, parameters and chosen model.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: system
+ content: you are a helpful assistant that talks like a pirate
+ - role: user
+ content: can you tell me how to care for a parrot?
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: |-
+ Ahoy matey! So ye be wantin' to care for a fine squawkin' parrot, eh? Well, shiver me timbers, let ol' Cap'n Assistant share some wisdom with ye! Here be the steps to keepin' yer parrot happy 'n healthy:
+
+ 1. Secure a sturdy cage: Yer parrot be needin' a comfortable place to lay anchor! Be sure ye get a sturdy cage, at least double the size of the bird's wingspan, with enough space to spread their wings, yarrrr!
+
+ 2. Perches 'n toys: Aye, parrots need perches of different sizes, shapes, 'n textures to keep their feet healthy. Also, a few toys be helpin' to keep them entertained 'n their minds stimulated, arrrh!
+
+ 3. Proper grub: Feed yer feathered friend a balanced diet of high-quality pellets, fruits, 'n veggies to keep 'em strong 'n healthy. Give 'em fresh water every day, or ye’ll have a scurvy bird on yer hands!
+
+ 4. Cleanliness: Swab their cage deck! Clean their cage on a regular basis: fresh water 'n food daily, the floor every couple of days, 'n a thorough scrubbing ev'ry few weeks, so the bird be livin' in a tidy haven, arrhh!
+
+ 5. Socialize 'n train: Parrots be a sociable lot, arrr! Exercise 'n interact with 'em daily to create a bond 'n maintain their mental 'n physical health. Train 'em with positive reinforcement, treat 'em kindly, yarrr!
+
+ 6. Proper rest: Yer parrot be needin' ’bout 10-12 hours o' sleep each night. Cover their cage 'n let them slumber in a dim, quiet quarter for a proper night's rest, ye scallywag!
+
+ 7. Keep a weather eye open for illness: Birds be hidin' their ailments, arrr! Be watchful for signs of sickness, such as lethargy, loss of appetite, puffin' up, or change in droppings, and make haste to a vet if need be.
+
+ 8. Provide fresh air 'n avoid toxins: Parrots be sensitive to draft and pollutants. Keep yer quarters well ventilated, but no drafts, arrr! Be mindful of toxins like Teflon fumes, candles, or air fresheners.
+
+ So there ye have it, me hearty! With proper care 'n commitment, yer parrot will be squawkin' "Yo-ho-ho" for many years to come! Good luck, sailor, and may the wind be at yer back!
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.json
new file mode 100644
index 000000000000..b54c0d093eed
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.json
@@ -0,0 +1,96 @@
+{
+ "title": "Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a cat?"
+ },
+ {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "intent": "cat care"
+ }
+ },
+ {
+ "role": "user",
+ "content": "how about dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_search",
+ "parameters": {
+ "endpoint": "https://your-search-endpoint.search.windows.net/",
+ "authentication": {
+ "type": "user_assigned_managed_identity",
+ "managed_identity_resource_id": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{resource-name}"
+ },
+ "index_name": "{index name}",
+ "query_type": "vector",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "in_scope": true,
+ "top_n_documents": 5,
+ "strictness": 3,
+ "role_information": "You are an AI assistant that helps people find information.",
+ "fields_mapping": {
+ "content_fields_separator": "\\n",
+ "content_fields": [
+ "content"
+ ],
+ "filepath_field": "filepath",
+ "title_field": "title",
+ "url_field": "url",
+ "vector_fields": [
+ "contentvector"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "citations": [
+ {
+ "content": "Citation content 2.",
+ "title": "Citation Title 2",
+ "filepath": "contoso2.txt",
+ "url": "https://contoso.blob.windows.net/container/contoso2.txt",
+ "chunk_id": "0"
+ }
+ ],
+ "intent": "dog care"
+ }
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.yaml
new file mode 100644
index 000000000000..65bee58e5185
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_advanced.yaml
@@ -0,0 +1,63 @@
+title: Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a cat?
+ - role: assistant
+ content: Content of the completion [doc1].
+ context:
+ intent: cat care
+ - role: user
+ content: how about dog?
+ data_sources:
+ - type: azure_search
+ parameters:
+ endpoint: https://your-search-endpoint.search.windows.net/
+ authentication:
+ type: user_assigned_managed_identity
+ managed_identity_resource_id: /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{resource-name}
+ index_name: "{index name}"
+ query_type: vector
+ embedding_dependency:
+ type: deployment_name
+ deployment_name: "{embedding deployment name}"
+ in_scope: true
+ top_n_documents: 5
+ strictness: 3
+ role_information: You are an AI assistant that helps people find information.
+ fields_mapping:
+ content_fields_separator: \n
+ content_fields:
+ - content
+ filepath_field: filepath
+ title_field: title
+ url_field: url
+ vector_fields:
+ - contentvector
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion [doc1].
+ context:
+ citations:
+ - content: Citation content 2.
+ title: Citation Title 2
+ filepath: contoso2.txt
+ url: https://contoso.blob.windows.net/container/contoso2.txt
+ chunk_id: "0"
+ intent: dog care
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.json
new file mode 100644
index 000000000000..7c8d02a5e929
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.json
@@ -0,0 +1,58 @@
+{
+ "title": "Creates a completion based on Azure Search image vector data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_search",
+ "parameters": {
+ "endpoint": "https://your-search-endpoint.search.windows.net/",
+ "index_name": "{index name}",
+ "query_type": "vector",
+ "fields_mapping": {
+ "image_vector_fields": [
+ "image_vector"
+ ]
+ },
+ "authentication": {
+ "type": "api_key",
+ "key": "{api key}"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion."
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.yaml
new file mode 100644
index 000000000000..98a616f39213
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_image_vector.yaml
@@ -0,0 +1,36 @@
+title: Creates a completion based on Azure Search image vector data.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a dog?
+ data_sources:
+ - type: azure_search
+ parameters:
+ endpoint: https://your-search-endpoint.search.windows.net/
+ index_name: "{index name}"
+ query_type: vector
+ fields_mapping:
+ image_vector_fields:
+ - image_vector
+ authentication:
+ type: api_key
+ key: "{api key}"
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion.
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.json
new file mode 100644
index 000000000000..47b501f96648
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.json
@@ -0,0 +1,63 @@
+{
+ "title": "Creates a completion based on Azure Search data and system-assigned managed identity.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_search",
+ "parameters": {
+ "endpoint": "https://your-search-endpoint.search.windows.net/",
+ "index_name": "{index name}",
+ "authentication": {
+ "type": "system_assigned_managed_identity"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "citations": [
+ {
+ "content": "Citation content.",
+ "title": "Citation Title",
+ "filepath": "contoso.txt",
+ "url": "https://contoso.blob.windows.net/container/contoso.txt",
+ "chunk_id": "0"
+ }
+ ],
+ "intent": "dog care"
+ }
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.yaml
new file mode 100644
index 000000000000..a99876d44dca
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_azure_search_minimum.yaml
@@ -0,0 +1,39 @@
+title: Creates a completion based on Azure Search data and system-assigned managed identity.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a dog?
+ data_sources:
+ - type: azure_search
+ parameters:
+ endpoint: https://your-search-endpoint.search.windows.net/
+ index_name: "{index name}"
+ authentication:
+ type: system_assigned_managed_identity
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion [doc1].
+ context:
+ citations:
+ - content: Citation content.
+ title: Citation Title
+ filepath: contoso.txt
+ url: https://contoso.blob.windows.net/container/contoso.txt
+ chunk_id: "0"
+ intent: dog care
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.json
new file mode 100644
index 000000000000..d3c0302025f6
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.json
@@ -0,0 +1,77 @@
+{
+ "title": "Creates a completion for the provided Azure Cosmos DB.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_cosmos_db",
+ "parameters": {
+ "authentication": {
+ "type": "connection_string",
+ "connection_string": "mongodb+srv://rawantest:{password}$@{cluster-name}.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
+ },
+ "database_name": "vectordb",
+ "container_name": "azuredocs",
+ "index_name": "azuredocindex",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "fields_mapping": {
+ "content_fields": [
+ "content"
+ ],
+ "vector_fields": [
+ "contentvector"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "citations": [
+ {
+ "content": "Citation content.",
+ "title": "Citation Title",
+ "filepath": "contoso.txt",
+ "url": "https://contoso.blob.windows.net/container/contoso.txt",
+ "chunk_id": "0"
+ }
+ ],
+ "intent": "dog care"
+ }
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.yaml
new file mode 100644
index 000000000000..ba816225d05c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_cosmos_db.yaml
@@ -0,0 +1,49 @@
+title: Creates a completion for the provided Azure Cosmos DB.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a dog?
+ data_sources:
+ - type: azure_cosmos_db
+ parameters:
+ authentication:
+ type: connection_string
+ connection_string: mongodb+srv://rawantest:{password}$@{cluster-name}.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000
+ database_name: vectordb
+ container_name: azuredocs
+ index_name: azuredocindex
+ embedding_dependency:
+ type: deployment_name
+ deployment_name: "{embedding deployment name}"
+ fields_mapping:
+ content_fields:
+ - content
+ vector_fields:
+ - contentvector
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion [doc1].
+ context:
+ citations:
+ - content: Citation content.
+ title: Citation Title
+ filepath: contoso.txt
+ url: https://contoso.blob.windows.net/container/contoso.txt
+ chunk_id: "0"
+ intent: dog care
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.json
new file mode 100644
index 000000000000..e621a5db2c42
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.json
@@ -0,0 +1,65 @@
+{
+ "title": "Creates a completion for the provided Elasticsearch.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "elasticsearch",
+ "parameters": {
+ "endpoint": "https://your-elasticsearch-endpoint.eastus.azurecontainer.io",
+ "index_name": "{index name}",
+ "authentication": {
+ "type": "key_and_key_id",
+ "key": "{key}",
+ "key_id": "{key id}"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "citations": [
+ {
+ "content": "Citation content.",
+ "title": "Citation Title",
+ "filepath": "contoso.txt",
+ "url": "https://contoso.blob.windows.net/container/contoso.txt",
+ "chunk_id": "0"
+ }
+ ],
+ "intent": "dog care"
+ }
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.yaml
new file mode 100644
index 000000000000..0b80a39f5d27
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_elasticsearch.yaml
@@ -0,0 +1,41 @@
+title: Creates a completion for the provided Elasticsearch.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a dog?
+ data_sources:
+ - type: elasticsearch
+ parameters:
+ endpoint: https://your-elasticsearch-endpoint.eastus.azurecontainer.io
+ index_name: "{index name}"
+ authentication:
+ type: key_and_key_id
+ key: "{key}"
+ key_id: "{key id}"
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion [doc1].
+ context:
+ citations:
+ - content: Citation content.
+ title: Citation Title
+ filepath: contoso.txt
+ url: https://contoso.blob.windows.net/container/contoso.txt
+ chunk_id: "0"
+ intent: dog care
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.json
new file mode 100644
index 000000000000..60bf9afd1344
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.json
@@ -0,0 +1,80 @@
+{
+ "title": "Creates a completion for the provided Mongo DB.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "mongo_db",
+ "parameters": {
+ "authentication": {
+ "type": "username_and_password",
+ "username": "",
+ "password": ""
+ },
+ "endpoint": "",
+ "app_name": "",
+ "database_name": "sampledb",
+ "collection_name": "samplecollection",
+ "index_name": "sampleindex",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "fields_mapping": {
+ "content_fields": [
+ "content"
+ ],
+ "vector_fields": [
+ "contentvector"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "citations": [
+ {
+ "content": "Citation content.",
+ "title": "Citation Title",
+ "filepath": "contoso.txt",
+ "url": "https://contoso.blob.windows.net/container/contoso.txt",
+ "chunk_id": "0"
+ }
+ ],
+ "intent": "dog care"
+ }
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.yaml
new file mode 100644
index 000000000000..4c9d7cacb690
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_mongo_db.yaml
@@ -0,0 +1,52 @@
+title: Creates a completion for the provided Azure Cosmos DB.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a dog?
+ data_sources:
+ - type: mongo_db
+ parameters:
+ authentication:
+ type: username_and_password
+ username:
+ password:
+ endpoint:
+ app_name:
+ database_name: sampledb
+ collection_name: samplecollection
+ index_name: azuredocindex
+ embedding_dependency:
+ type: deployment_name
+ deployment_name: "{embedding deployment name}"
+ fields_mapping:
+ content_fields:
+ - content
+ vector_fields:
+ - contentvector
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion [doc1].
+ context:
+ citations:
+ - content: Citation content.
+ title: Citation Title
+ filepath: contoso.txt
+ url: https://contoso.blob.windows.net/container/contoso.txt
+ chunk_id: "0"
+ intent: dog care
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.json
new file mode 100644
index 000000000000..cee1eb81ac59
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.json
@@ -0,0 +1,77 @@
+{
+ "title": "Creates a completion for the provided Pinecone resource.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a dog?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "pinecone",
+ "parameters": {
+ "authentication": {
+ "type": "api_key",
+ "key": "{api key}"
+ },
+ "environment": "{environment name}",
+ "index_name": "{index name}",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "fields_mapping": {
+ "title_field": "title",
+ "url_field": "url",
+ "filepath_field": "filepath",
+ "content_fields": [
+ "content"
+ ],
+ "content_fields_separator": "\n"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "Content of the completion [doc1].",
+ "context": {
+ "citations": [
+ {
+ "content": "Citation content.",
+ "title": "Citation Title",
+ "filepath": "contoso.txt",
+ "url": "https://contoso.blob.windows.net/container/contoso.txt",
+ "chunk_id": "0"
+ }
+ ],
+ "intent": "dog care"
+ }
+ }
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.yaml
new file mode 100644
index 000000000000..ef2e5c2830ef
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/chat_completions_pinecone.yaml
@@ -0,0 +1,51 @@
+title: Creates a completion for the provided Pinecone resource.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id:
+ body:
+ messages:
+ - role: user
+ content: can you tell me how to care for a dog?
+ data_sources:
+ - type: pinecone
+ parameters:
+ authentication:
+ type: api_key
+ key: "{api key}"
+ environment: "{environment name}"
+ index_name: "{index name}"
+ embedding_dependency:
+ type: deployment_name
+ deployment_name: "{embedding deployment name}"
+ fields_mapping:
+ title_field: title
+ url_field: url
+ filepath_field: filepath
+ content_fields:
+ - content
+ content_fields_separator: |+
+
+responses:
+ "200":
+ body:
+ id: chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn
+ created: 1686676106
+ choices:
+ - index: 0
+ finish_reason: stop
+ message:
+ role: assistant
+ content: Content of the completion [doc1].
+ context:
+ citations:
+ - content: Citation content.
+ title: Citation Title
+ filepath: contoso.txt
+ url: https://contoso.blob.windows.net/container/contoso.txt
+ chunk_id: "0"
+ intent: dog care
+ usage:
+ completion_tokens: 557
+ prompt_tokens: 33
+ total_tokens: 590
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/completions.json
new file mode 100644
index 000000000000..4f5fe9ae45d6
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-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": "2024-12-01-preview",
+ "deployment-id": "",
+ "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/2024-12-01-preview/examples/create_assistant.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.json
new file mode 100644
index 000000000000..1b0f7fb49f12
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.json
@@ -0,0 +1,39 @@
+{
+ "title": "Create an assistant with a model and instructions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "body": {
+ "name": "Math Tutor",
+ "instructions": "When a customer asks about a specific math problem, use Python to evaluate their query.",
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "model": "gpt-4-1106-preview"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "asst_4nsG2qgNzimRPE7MazXTXbU7",
+ "object": "assistant",
+ "created_at": 1707295707,
+ "name": "Math Tutor",
+ "description": null,
+ "model": "gpt-4-1106-preview",
+ "instructions": "When a customer asks about a specific math problem, use Python to evaluate their query.",
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "metadata": {},
+ "top_p": 1.0,
+ "temperature": 1.0,
+ "response_format": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.yaml
new file mode 100644
index 000000000000..1168181a5ce8
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_assistant.yaml
@@ -0,0 +1,26 @@
+title: Create an assistant with a model and instructions.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ body:
+ name: Math Tutor
+ instructions: When a customer asks about a specific math problem, use Python to evaluate their query.
+ tools:
+ - type: code_interpreter
+ model: gpt-4-1106-preview
+responses:
+ "200":
+ body:
+ id: asst_4nsG2qgNzimRPE7MazXTXbU7
+ object: assistant
+ created_at: 1707295707
+ name: Math Tutor
+ description: null
+ model: gpt-4-1106-preview
+ instructions: When a customer asks about a specific math problem, use Python to evaluate their query.
+ tools:
+ - type: code_interpreter
+ metadata: {}
+ top_p: 1
+ temperature: 1
+ response_format: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.json
new file mode 100644
index 000000000000..a2dc963d2a6a
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.json
@@ -0,0 +1,36 @@
+{
+ "title": "Create a message.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "body": {
+ "role": "user",
+ "content": "What is the cube root of the sum of 12, 14, 1234, 4321, 90000, 123213541223, 443123123124, 5423324234, 234324324234, 653434534545, 200000000, 98237432984, 99999999, 99999999999, 220000000000, 3309587702? Give me the answer rounded to the nearest integer without commas or spaces."
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "msg_as3XIk1tpVP3hdHjWBGg3uG4",
+ "object": "thread.message",
+ "created_at": 1707298421,
+ "assistant_id": null,
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "run_id": null,
+ "role": "user",
+ "content": [
+ {
+ "type": "text",
+ "text": {
+ "value": "What is the cube root of the sum of 12, 14, 1234, 4321, 90000, 123213541223, 443123123124, 5423324234, 234324324234, 653434534545, 200000000, 98237432984, 99999999, 99999999999, 220000000000, 3309587702? Give me the answer rounded to the nearest integer without commas or spaces.",
+ "annotations": []
+ }
+ }
+ ],
+ "attachments": [],
+ "metadata": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.yaml
new file mode 100644
index 000000000000..18a3db445847
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_message.yaml
@@ -0,0 +1,25 @@
+title: Create a message.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+ body:
+ role: user
+ content: What is the cube root of the sum of 12, 14, 1234, 4321, 90000, 123213541223, 443123123124, 5423324234, 234324324234, 653434534545, 200000000, 98237432984, 99999999, 99999999999, 220000000000, 3309587702? Give me the answer rounded to the nearest integer without commas or spaces.
+responses:
+ "200":
+ body:
+ id: msg_as3XIk1tpVP3hdHjWBGg3uG4
+ object: thread.message
+ created_at: 1707298421
+ assistant_id: null
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+ run_id: null
+ role: user
+ content:
+ - type: text
+ text:
+ value: What is the cube root of the sum of 12, 14, 1234, 4321, 90000, 123213541223, 443123123124, 5423324234, 234324324234, 653434534545, 200000000, 98237432984, 99999999, 99999999999, 220000000000, 3309587702? Give me the answer rounded to the nearest integer without commas or spaces.
+ annotations: []
+ attachments: []
+ metadata: {}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.json
new file mode 100644
index 000000000000..b95a191179c7
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.json
@@ -0,0 +1,49 @@
+{
+ "title": "Create a run.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "body": {
+ "assistant_id": "asst_abc123"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699063290,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "queued",
+ "started_at": 1699063290,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1699063291,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "incomplete_details": null,
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "metadata": {},
+ "usage": null,
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "response_format": "auto",
+ "tool_choice": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.yaml
new file mode 100644
index 000000000000..5ae50aac92bc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_run.yaml
@@ -0,0 +1,38 @@
+title: Create a run.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ body:
+ assistant_id: asst_abc123
+responses:
+ "200":
+ body:
+ id: run_abc123
+ object: thread.run
+ created_at: 1699063290
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ status: queued
+ started_at: 1699063290
+ expires_at: null
+ cancelled_at: null
+ failed_at: null
+ completed_at: 1699063291
+ last_error: null
+ model: gpt-4-turbo
+ instructions: null
+ incomplete_details: null
+ tools:
+ - type: code_interpreter
+ metadata: {}
+ usage: null
+ temperature: 1
+ top_p: 1
+ max_prompt_tokens: 1000
+ max_completion_tokens: 1000
+ truncation_strategy:
+ type: auto
+ last_messages: null
+ response_format: auto
+ tool_choice: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.json
new file mode 100644
index 000000000000..a5885f545616
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.json
@@ -0,0 +1,17 @@
+{
+ "title": "Creates a thread.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "object": "thread",
+ "created_at": 1707297136,
+ "metadata": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.yaml
new file mode 100644
index 000000000000..99a1e07eebd8
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread.yaml
@@ -0,0 +1,11 @@
+title: Creates a thread.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+responses:
+ "200":
+ body:
+ id: thread_v7V4csrNOxtNmgcwGg496Smx
+ object: thread
+ created_at: 1707297136
+ metadata: {}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.json
new file mode 100644
index 000000000000..4998df44d4a4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.json
@@ -0,0 +1,54 @@
+{
+ "title": "Create a thread and run it in one request.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "body": {
+ "assistant_id": "asst_abc123",
+ "thread": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "Explain deep learning to a 5 year old."
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699076792,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "queued",
+ "started_at": null,
+ "expires_at": 1699077392,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": null,
+ "required_action": null,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": "You are a helpful assistant.",
+ "tools": [],
+ "tool_resources": {},
+ "metadata": {},
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_completion_tokens": null,
+ "max_prompt_tokens": null,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "incomplete_details": null,
+ "usage": null,
+ "response_format": "auto",
+ "tool_choice": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.yaml
new file mode 100644
index 000000000000..1363843d0755
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_thread_and_run.yaml
@@ -0,0 +1,42 @@
+title: Create a thread and run it in one request.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ body:
+ assistant_id: asst_abc123
+ thread:
+ messages:
+ - role: user
+ content: Explain deep learning to a 5 year old.
+responses:
+ "200":
+ body:
+ id: run_abc123
+ object: thread.run
+ created_at: 1699076792
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ status: queued
+ started_at: null
+ expires_at: 1699077392
+ cancelled_at: null
+ failed_at: null
+ completed_at: null
+ required_action: null
+ last_error: null
+ model: gpt-4-turbo
+ instructions: You are a helpful assistant.
+ tools: []
+ tool_resources: {}
+ metadata: {}
+ temperature: 1
+ top_p: 1
+ max_completion_tokens: null
+ max_prompt_tokens: null
+ truncation_strategy:
+ type: auto
+ last_messages: null
+ incomplete_details: null
+ usage: null
+ response_format: auto
+ tool_choice: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.json
new file mode 100644
index 000000000000..e9cee884656d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.json
@@ -0,0 +1,28 @@
+{
+ "title": "Creates a vector store.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview"
+ },
+ "body": {
+ "name": "Support FAQ"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "vs_abc123",
+ "object": "vector_store",
+ "created_at": 1699061776,
+ "name": "Support FAQ",
+ "bytes": 139920,
+ "file_counts": {
+ "in_progress": 0,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 3
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.yaml
new file mode 100644
index 000000000000..3fbd30637636
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store.yaml
@@ -0,0 +1,20 @@
+title: Creates a vector store.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+body:
+ name: Support FAQ
+responses:
+ "200":
+ body:
+ id: vs_abc123
+ object: vector_store
+ created_at: 1699061776
+ name: Support FAQ
+ bytes: 139920
+ file_counts:
+ in_progress: 0
+ completed: 3
+ failed: 0
+ cancelled: 0
+ total: 3
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.json
new file mode 100644
index 000000000000..1e97f7958a51
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.json
@@ -0,0 +1,24 @@
+{
+ "title": "Create a vector store file by attaching a File to a vector store.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "body": {
+ "file_id": "file-abc123"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "file-abc123",
+ "object": "vector_store.file",
+ "created_at": 1699061776,
+ "usage_bytes": 1234,
+ "vector_store_id": "vs_abcd",
+ "status": "completed",
+ "last_error": null
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.yaml
new file mode 100644
index 000000000000..eebed5105a64
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file.yaml
@@ -0,0 +1,17 @@
+title: Create a vector store file by attaching a File to a vector store.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ body:
+ file_id: file-abc123
+responses:
+ "200":
+ body:
+ id: file-abc123
+ object: vector_store.file
+ created_at: 1699061776
+ usage_bytes: 1234
+ vector_store_id: vs_abcd
+ status: completed
+ last_error: null
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.json
new file mode 100644
index 000000000000..6b10c16931cc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.json
@@ -0,0 +1,30 @@
+{
+ "title": "Create a vector store file batch.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "body": {
+ "file_ids": [
+ "file-abc123",
+ "file-abc456"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "id": "vsfb_abc123",
+ "object": "vector_store.file_batch",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123",
+ "status": "in_progress",
+ "file_counts": {
+ "in_progress": 1,
+ "completed": 1,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 0
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.yaml
new file mode 100644
index 000000000000..4d09c306a3a9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/create_vector_store_file_batch.yaml
@@ -0,0 +1,22 @@
+title: Create a vector store file batch.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ body:
+ file_ids:
+ - file-abc123
+ - file-abc456
+responses:
+ "200":
+ id: vsfb_abc123
+ object: vector_store.file_batch
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ status: in_progress
+ file_counts:
+ in_progress: 1
+ completed: 1
+ failed: 0
+ cancelled: 0
+ total: 0
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.json
new file mode 100644
index 000000000000..e572cb32d47a
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.json
@@ -0,0 +1,17 @@
+{
+ "title": "Deletes an assistant.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "assistant_id": "asst_4nsG2qgNzimRPE7MazXTXbU7"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "asst_4nsG2qgNzimRPE7MazXTXbU7",
+ "object": "assistant.deleted",
+ "deleted": true
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.yaml
new file mode 100644
index 000000000000..27da69c94878
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant.yaml
@@ -0,0 +1,11 @@
+title: Deletes an assistant.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ assistant_id: asst_4nsG2qgNzimRPE7MazXTXbU7
+responses:
+ "200":
+ body:
+ id: asst_4nsG2qgNzimRPE7MazXTXbU7
+ object: assistant.deleted
+ deleted: true
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.json
new file mode 100644
index 000000000000..c715c6e3219e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.json
@@ -0,0 +1,18 @@
+{
+ "title": "Deletes an AssistantFile.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "assistant_id": "asst_diz3BOIsXHMnqNnoMCyO9jlA",
+ "file_id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX",
+ "object": "assistant.file.deleted",
+ "deleted": true
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.yaml
new file mode 100644
index 000000000000..29026c4f78fd
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_assistant_file.yaml
@@ -0,0 +1,12 @@
+title: Deletes an AssistantFile.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ assistant_id: asst_diz3BOIsXHMnqNnoMCyO9jlA
+ file_id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+responses:
+ "200":
+ body:
+ id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+ object: assistant.file.deleted
+ deleted: true
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.json
new file mode 100644
index 000000000000..b200dd98ce2b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.json
@@ -0,0 +1,18 @@
+{
+ "title": "Deletes a message.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "message_id": "msg_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "msg_abc123",
+ "object": "thread.message.deleted",
+ "deleted": true
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.yaml
new file mode 100644
index 000000000000..a8538623fd4f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_message.yaml
@@ -0,0 +1,12 @@
+title: Deletes a message.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ message_id: msg_abc123
+responses:
+ "200":
+ body:
+ id: msg_abc123
+ object: thread.message.deleted
+ deleted: true
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.json
new file mode 100644
index 000000000000..b502d2730179
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.json
@@ -0,0 +1,17 @@
+{
+ "title": "Deletes a thread.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "object": "thread.deleted",
+ "deleted": true
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.yaml
new file mode 100644
index 000000000000..589a8c57b77c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_thread.yaml
@@ -0,0 +1,11 @@
+title: Deletes a thread.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+responses:
+ "200":
+ body:
+ id: thread_v7V4csrNOxtNmgcwGg496Smx
+ object: thread.deleted
+ deleted: true
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.json
new file mode 100644
index 000000000000..82128ed504cc
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.json
@@ -0,0 +1,17 @@
+{
+ "title": "Deletes a vector store.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123 "
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "vs_abc123",
+ "object": "vector_store.deleted",
+ "deleted": true
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.yaml
new file mode 100644
index 000000000000..10acf6607304
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store.yaml
@@ -0,0 +1,11 @@
+title: Deletes a vector store.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: "vs_abc123 "
+responses:
+ "200":
+ body:
+ id: vs_abc123
+ object: vector_store.deleted
+ deleted: true
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.json
new file mode 100644
index 000000000000..c0b08e874af1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.json
@@ -0,0 +1,18 @@
+{
+ "title": "Delete a vector store file. This will remove the file from the vector store but the file itself will not be deleted. To delete the file, use the delete file endpoint.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "file_id": "file_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "file_abc123",
+ "object": "vector_store.file.deleted",
+ "deleted": true
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.yaml
new file mode 100644
index 000000000000..ac310c3b2cf9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/delete_vector_store_file.yaml
@@ -0,0 +1,12 @@
+title: Delete a vector store file. This will remove the file from the vector store but the file itself will not be deleted. To delete the file, use the delete file endpoint.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ file_id: file_abc123
+responses:
+ "200":
+ body:
+ id: file_abc123
+ object: vector_store.file.deleted
+ deleted: true
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.json
new file mode 100644
index 000000000000..1ecca952a540
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.json
@@ -0,0 +1,1566 @@
+{
+ "title": "Return the embeddings for a given prompt.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "deployment-afa0669ca01e4693ae3a93baf40f26d6",
+ "body": {
+ "input": [
+ "this is a test"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "data": [
+ {
+ "index": 0,
+ "embedding": [
+ -0.012838088,
+ -0.007421397,
+ -0.017617522,
+ -0.028278312,
+ -0.018666342,
+ 0.01737855,
+ -0.01821495,
+ -0.006950092,
+ -0.009937238,
+ -0.038580645,
+ 0.010674067,
+ 0.02412286,
+ -0.013647936,
+ 0.013189907,
+ 0.0021125758,
+ 0.012406612,
+ 0.020790534,
+ 0.00074595667,
+ 0.008397198,
+ -0.00535031,
+ 0.008968075,
+ 0.014351576,
+ -0.014086051,
+ 0.015055214,
+ -0.022211088,
+ -0.025198232,
+ 0.0065186154,
+ -0.036350243,
+ 0.009180495,
+ -0.009698266,
+ 0.009446018,
+ -0.008463579,
+ -0.0040426035,
+ -0.03443847,
+ -0.00091273896,
+ -0.0019217303,
+ 0.002349888,
+ -0.021560553,
+ 0.016515596,
+ -0.015572986,
+ 0.0038666942,
+ -0.00008432463,
+ 0.0032178196,
+ -0.020365695,
+ -0.009631885,
+ -0.007647093,
+ 0.0033837722,
+ -0.026764825,
+ -0.010501476,
+ 0.020219658,
+ 0.024640633,
+ -0.0066912062,
+ -0.036456455,
+ -0.0040923897,
+ -0.013966565,
+ 0.017816665,
+ 0.005366905,
+ 0.022835068,
+ 0.0103488,
+ -0.0010811808,
+ -0.028942121,
+ 0.0074280356,
+ -0.017033368,
+ 0.0074877786,
+ 0.021640211,
+ 0.002499245,
+ 0.013316032,
+ 0.0021524043,
+ 0.010129742,
+ 0.0054731146,
+ 0.03143805,
+ 0.014856071,
+ 0.0023366117,
+ -0.0008243692,
+ 0.022781964,
+ 0.003038591,
+ -0.017617522,
+ 0.0013309394,
+ 0.0022154662,
+ 0.00097414135,
+ 0.012041516,
+ -0.027906578,
+ -0.023817508,
+ 0.013302756,
+ -0.003003741,
+ -0.006890349,
+ 0.0016744611,
+ 0.023658194,
+ -0.015851786,
+ -0.0045305043,
+ -0.003038591,
+ 0.017710455,
+ 0.019237218,
+ 0.016037652,
+ -0.022503164,
+ 0.025795663,
+ -0.001129307,
+ 0.032500144,
+ -0.008178141,
+ -0.019940857,
+ -0.009877495,
+ 0.00018918588,
+ 0.023060765,
+ -0.005692172,
+ -0.018347712,
+ -0.011039163,
+ -0.0062066247,
+ -0.0000524047,
+ 0.020126723,
+ -0.0011691356,
+ -0.015811957,
+ 0.020086896,
+ -0.009114114,
+ -0.03056182,
+ 0.0029025099,
+ -0.006591635,
+ -0.014046223,
+ -0.01590489,
+ -0.02307404,
+ -0.008861865,
+ -0.004832538,
+ 0.010030171,
+ 0.02311387,
+ -0.012652221,
+ 0.024906157,
+ 0.003860056,
+ -0.01936998,
+ -0.02957938,
+ -0.008357369,
+ -0.0016371218,
+ 0.027800368,
+ 0.0077333883,
+ 0.021626934,
+ 0.02140124,
+ -0.030482162,
+ 0.026406368,
+ -0.008277712,
+ 0.012884554,
+ -0.043784916,
+ -0.0145639945,
+ -0.0070297495,
+ 0.034889862,
+ -0.00041508878,
+ -0.010528029,
+ -0.009572142,
+ 0.015692472,
+ 0.037810627,
+ -0.0022021902,
+ 0.008662722,
+ -0.016794397,
+ 0.0003090866,
+ -0.0060506295,
+ 0.015227805,
+ 0.0006650548,
+ 0.01842737,
+ 0.036801632,
+ -0.002461076,
+ -0.0029390194,
+ -0.0057120863,
+ -0.012486269,
+ -0.0046831807,
+ -0.0017474802,
+ -0.0036210844,
+ -0.01178263,
+ 0.017869769,
+ 0.039111692,
+ 0.010946229,
+ 0.018467197,
+ 0.0027780454,
+ -0.005851486,
+ -0.016489044,
+ 0.03186289,
+ -0.040333103,
+ 0.016648358,
+ -0.006870435,
+ 0.0072687212,
+ 0.000002370982,
+ 0.006465511,
+ -0.018201673,
+ -0.00020526254,
+ -0.025410652,
+ 0.02010017,
+ 0.017537864,
+ 0.022821793,
+ 0.0064555537,
+ -0.0012969191,
+ 0.02157383,
+ -0.0053536287,
+ -0.0087622935,
+ -0.010952868,
+ 0.017564416,
+ 0.02185263,
+ 0.0004733796,
+ 0.0018337755,
+ -0.6954606,
+ -0.011231667,
+ 0.02748174,
+ 0.003929756,
+ 0.0144843375,
+ 0.045192193,
+ 0.01898497,
+ -0.0070363875,
+ -0.007813046,
+ 0.017604245,
+ -0.017790113,
+ 0.011165286,
+ -0.0036376796,
+ -0.014736585,
+ 0.0016421003,
+ -0.019144284,
+ -0.0072222543,
+ -0.023127146,
+ 0.006936816,
+ 0.025198232,
+ 0.0030219958,
+ 0.011722887,
+ -0.004271618,
+ -0.0011127117,
+ -0.0051047,
+ 0.00077333883,
+ 0.018599961,
+ 0.0074877786,
+ 0.010820106,
+ 0.0033406245,
+ -0.015055214,
+ 0.02384406,
+ 0.006090458,
+ 0.00891497,
+ 0.023366116,
+ -0.011078991,
+ -0.019582398,
+ 0.0011566891,
+ 0.015413672,
+ 0.01793615,
+ -0.014736585,
+ 0.002492607,
+ 0.027800368,
+ 0.023923717,
+ -0.007421397,
+ 0.0016105693,
+ 0.011337877,
+ -0.015041938,
+ -0.008768932,
+ -0.003982861,
+ 0.002884255,
+ -0.007832959,
+ 0.0025457118,
+ -0.0023548664,
+ -0.0061767534,
+ -0.016754568,
+ 0.0006036523,
+ 0.0105346665,
+ 0.0055361767,
+ 0.01478969,
+ -0.0011251582,
+ 0.009605332,
+ -0.0037140178,
+ -0.017537864,
+ -0.021733144,
+ 0.012897831,
+ -0.024481317,
+ 0.022290744,
+ 0.0056523434,
+ -0.005366905,
+ 0.0020412162,
+ 0.013435517,
+ -0.003408665,
+ -0.01705992,
+ 0.029446619,
+ 0.022011945,
+ 0.009226961,
+ -0.003310753,
+ -0.007939169,
+ 0.021308305,
+ 0.0026718357,
+ 0.002129171,
+ -0.020047067,
+ -0.007474502,
+ 0.021534001,
+ -0.0110590765,
+ -0.018374264,
+ -0.001664504,
+ -0.003923118,
+ 0.015387119,
+ 0.025516862,
+ 0.0016421003,
+ -0.017498035,
+ -0.01825478,
+ 0.01451089,
+ -0.008198055,
+ -0.011656506,
+ 0.0044242945,
+ 0.031491153,
+ 0.01017621,
+ -0.010408543,
+ -0.009034456,
+ -0.0023283141,
+ 0.012021601,
+ 0.015639367,
+ 0.011736163,
+ 0.007912617,
+ 0.02031259,
+ 0.022104878,
+ -0.02241023,
+ 0.00041156227,
+ -0.009817752,
+ -0.030880447,
+ -0.0017823302,
+ 0.0030933553,
+ -0.04128899,
+ -0.0007783174,
+ 0.012393335,
+ 0.0122273825,
+ -0.009087561,
+ 0.022728859,
+ -0.002884255,
+ 0.028065892,
+ 0.0047396044,
+ 0.008065294,
+ 0.015519881,
+ 0.0133956885,
+ -0.02279524,
+ -0.011729525,
+ 0.0037206558,
+ -0.0046732235,
+ 0.003587894,
+ 0.024401661,
+ -0.013574918,
+ 0.012685412,
+ -0.0041620894,
+ 0.020578114,
+ 0.007394845,
+ 0.014139156,
+ -0.012512821,
+ -0.021042781,
+ 0.022423506,
+ -0.015360567,
+ 0.004009413,
+ 0.0104550095,
+ -0.024799947,
+ -0.0081449505,
+ -0.00063850236,
+ 0.0070231115,
+ -0.0009633545,
+ -0.015705748,
+ -0.0028942123,
+ -0.008815398,
+ 0.007461226,
+ -0.014417957,
+ -0.012931022,
+ 0.0015674217,
+ -0.02506547,
+ -0.0063128346,
+ -0.013422241,
+ -0.0058614435,
+ -0.0006007482,
+ -0.015002109,
+ 0.0037040606,
+ -0.008410474,
+ -0.0016089098,
+ -0.018653065,
+ 0.020538285,
+ -0.016980262,
+ -0.042244878,
+ -0.017498035,
+ 0.006727716,
+ -0.01877255,
+ 0.008987989,
+ 0.00077665783,
+ -0.0007119364,
+ -0.0067243967,
+ 0.0038467797,
+ -0.018055636,
+ -0.01440468,
+ 0.007534245,
+ 0.0051212953,
+ 0.002741536,
+ 0.011523744,
+ -0.0018603279,
+ 0.023684746,
+ 0.016196968,
+ 0.01731217,
+ -0.01992758,
+ 0.009372999,
+ -0.01982137,
+ 0.001150051,
+ -0.014417957,
+ 0.005672258,
+ -0.015785405,
+ 0.0049387473,
+ -0.0051445286,
+ 0.012632307,
+ 0.0011666464,
+ 0.024587527,
+ 0.04259006,
+ -0.0025672857,
+ 0.02311387,
+ -0.014524166,
+ 0.0013848739,
+ -0.04105002,
+ -0.010089914,
+ -0.009087561,
+ 0.015440224,
+ 0.009207047,
+ 0.0128048975,
+ -0.030216638,
+ -0.02549031,
+ 0.00499849,
+ 0.02737553,
+ 0.024985814,
+ -0.015055214,
+ 0.007580712,
+ -0.003979542,
+ 0.0016304837,
+ 0.0010446712,
+ 0.0033373055,
+ 0.0066314633,
+ -0.011948583,
+ -0.021281753,
+ 0.012161002,
+ 0.030747686,
+ 0.03555367,
+ 0.023751127,
+ -0.03159736,
+ -0.0110590765,
+ 0.015758853,
+ -0.0012197511,
+ -0.0023249951,
+ -0.0007488608,
+ 0.0074877786,
+ 0.01643594,
+ -0.008098484,
+ 0.03730613,
+ -0.0010056724,
+ -0.000034798173,
+ 0.011702972,
+ 0.039563086,
+ -0.012280487,
+ 0.027747264,
+ 0.018387541,
+ 0.033057746,
+ -0.004835857,
+ -0.00471969,
+ 0.025450481,
+ -0.0051146573,
+ 0.014603823,
+ 0.00022258384,
+ 0.00060863094,
+ 0.015665919,
+ -0.021626934,
+ -0.013674489,
+ 0.0062066247,
+ 0.018560132,
+ 0.031942543,
+ 0.012054792,
+ 0.004902238,
+ 0.0028510645,
+ -0.027667606,
+ 0.009817752,
+ -0.002580562,
+ 0.0069036256,
+ 0.020047067,
+ -0.009704905,
+ -0.012619031,
+ -0.0056755766,
+ -0.0036443176,
+ 0.019383255,
+ 0.0030701219,
+ 0.024972538,
+ 0.009100837,
+ 0.026353262,
+ 0.012758431,
+ 0.029074885,
+ 0.021202097,
+ -0.0038102702,
+ -0.032048754,
+ 0.003996137,
+ 0.0029738694,
+ 0.0032277768,
+ -0.026127568,
+ -0.02213143,
+ 0.0028742978,
+ 0.0010637557,
+ 0.000580419,
+ 0.0021789568,
+ 0.00083764544,
+ 0.026924139,
+ -0.03265946,
+ 0.0059211864,
+ 0.021892458,
+ 0.01178263,
+ 0.0018188398,
+ 0.009718181,
+ -0.020047067,
+ 0.017989255,
+ 0.0046035233,
+ -0.010561219,
+ -0.010342162,
+ 0.009505761,
+ -0.018334435,
+ -0.00667793,
+ -0.024534423,
+ 0.00035347888,
+ 0.00082561385,
+ -0.006143563,
+ 0.016820949,
+ -0.0013500239,
+ -0.0069832825,
+ 0.015347291,
+ -0.005094743,
+ 0.001838754,
+ 0.017073197,
+ 0.02521151,
+ 0.006209944,
+ -0.015612815,
+ -0.009744733,
+ -0.019794818,
+ 0.007786493,
+ 0.037624758,
+ 0.017564416,
+ 0.0076802834,
+ 0.0026203906,
+ 0.0022403593,
+ -0.024560975,
+ -0.04062518,
+ -0.016581977,
+ 0.00789934,
+ 0.0099305995,
+ 0.006996559,
+ 0.011078991,
+ 0.016236795,
+ -0.0068969876,
+ 0.01374087,
+ 0.014922452,
+ -0.0042882133,
+ 0.00022901449,
+ -0.0006692036,
+ 0.001359981,
+ -0.00007581957,
+ 0.0042616613,
+ 0.0066381013,
+ 0.012512821,
+ 0.021534001,
+ 0.0032775626,
+ 0.016913882,
+ -0.00789934,
+ -0.009200408,
+ -0.020286039,
+ -0.017033368,
+ 0.014378128,
+ 0.009233599,
+ 0.0070828544,
+ -0.013229736,
+ 0.025928425,
+ -0.011862287,
+ 0.008383922,
+ 0.012632307,
+ -0.0003097089,
+ 0.007593988,
+ 0.0059079104,
+ -0.0026369859,
+ -0.0262205,
+ 0.003335646,
+ -0.0067609064,
+ -0.0042882133,
+ 0.008549875,
+ -0.007600626,
+ -0.012592479,
+ 0.028623493,
+ -0.0030502076,
+ -0.006989921,
+ -0.015785405,
+ 0.010050085,
+ 0.016714739,
+ -0.023724575,
+ -0.006346025,
+ -0.014245366,
+ -0.032154962,
+ -0.03388087,
+ -0.024308728,
+ -0.002461076,
+ -0.003733932,
+ -0.02195884,
+ -0.021069333,
+ -0.022144707,
+ -0.007872788,
+ -0.017179407,
+ -0.009034456,
+ -0.010893124,
+ -0.02478667,
+ -0.020153277,
+ -0.023976821,
+ 0.014656927,
+ 0.0005368565,
+ -0.015878338,
+ 0.010123105,
+ -0.0030717815,
+ 0.01555971,
+ 0.0018321159,
+ -0.036244035,
+ 0.00017176087,
+ -0.013375774,
+ -0.010375353,
+ 0.026512576,
+ 0.016581977,
+ 0.013847079,
+ 0.015719024,
+ 0.013223098,
+ 0.004975257,
+ -0.0010579474,
+ -0.0034385365,
+ -0.029048331,
+ 0.017298892,
+ -0.022529716,
+ 0.008463579,
+ -0.014723309,
+ -0.005814977,
+ -0.009027818,
+ -0.009738095,
+ -0.0104682855,
+ -0.005044957,
+ 0.007905979,
+ 0.011656506,
+ 0.003153098,
+ -0.0005231654,
+ 0.019954132,
+ -0.021985391,
+ -0.005307162,
+ 0.0021839354,
+ -0.025184957,
+ 0.013926737,
+ -0.0059908866,
+ 0.0065717204,
+ 0.009884133,
+ -0.0062298584,
+ 0.03388087,
+ 0.0028577026,
+ -0.015931444,
+ 0.0010986058,
+ -0.025808938,
+ 0.0022835068,
+ 0.014152432,
+ 0.015227805,
+ 0.013701041,
+ -0.007872788,
+ -0.030614924,
+ -0.026393091,
+ 0.0010753724,
+ -0.016940435,
+ 0.013647936,
+ -0.007408121,
+ -0.024308728,
+ -0.031915992,
+ -0.018161846,
+ 0.00072521257,
+ 0.028862465,
+ 0.012234021,
+ -0.019555846,
+ -0.027641054,
+ -0.00082810316,
+ -0.0019150922,
+ -0.016276624,
+ -0.01125822,
+ -0.034146395,
+ -0.015294186,
+ 0.006671292,
+ -0.015533158,
+ 0.013674489,
+ -0.0011766035,
+ -0.017325444,
+ -0.023233354,
+ -0.013189907,
+ 0.0005580154,
+ -0.03188944,
+ -0.007056302,
+ -0.0059942054,
+ 0.03411984,
+ 0.04317421,
+ 0.029420065,
+ 0.006488744,
+ -0.0022436783,
+ 0.013063784,
+ 0.00012207884,
+ 0.008118398,
+ -0.023246631,
+ 0.0051909955,
+ -0.00894816,
+ 0.0081316745,
+ 0.0023200165,
+ 0.011510468,
+ -0.0005770999,
+ 0.00016979019,
+ 0.010129742,
+ 0.015506605,
+ -0.0073815687,
+ 0.0031995648,
+ -0.026578957,
+ -0.016674912,
+ 0.0049652997,
+ 0.0072687212,
+ -0.016568702,
+ -0.001964878,
+ -0.015692472,
+ -0.0048955996,
+ 0.027773816,
+ 0.012864641,
+ 0.01594472,
+ 0.008244522,
+ 0.017139578,
+ -0.01772373,
+ -0.0012521119,
+ 0.011689696,
+ 0.0111121815,
+ -0.0036476366,
+ 0.0012570905,
+ -0.007826322,
+ -0.016754568,
+ 0.011948583,
+ -0.0045968853,
+ 0.023963546,
+ -0.0052739717,
+ 0.014656927,
+ 0.009731457,
+ 0.010727172,
+ -0.01705992,
+ -0.0026071144,
+ 0.010760362,
+ 0.000919377,
+ -0.006365939,
+ -0.03013698,
+ -0.010554581,
+ -0.018613236,
+ 0.013886908,
+ 0.029420065,
+ -0.013030593,
+ 0.016860778,
+ -0.019237218,
+ -0.022118153,
+ 0.007919255,
+ -0.0004003605,
+ 0.046546366,
+ 0.01349526,
+ 0.006352663,
+ 0.014258642,
+ 0.0031813101,
+ -0.027017072,
+ 0.0070828544,
+ -0.020219658,
+ 0.0037140178,
+ 0.023366116,
+ 0.040386207,
+ -0.016382834,
+ -0.0023681426,
+ 0.0064522345,
+ 0.016528873,
+ 0.0006804054,
+ -0.02891557,
+ -0.0043545947,
+ 0.01101261,
+ -0.0014778073,
+ -0.018055636,
+ -0.0077001974,
+ -0.0358723,
+ 0.003373815,
+ -0.00071940426,
+ -0.011822458,
+ -0.024295451,
+ -0.009791199,
+ -0.026565682,
+ 0.020989677,
+ -0.035155386,
+ 0.01832116,
+ 0.014776413,
+ -0.028012788,
+ -0.007262083,
+ 0.0030402504,
+ -0.029446619,
+ 0.00010174965,
+ 0.009758009,
+ 0.03767786,
+ -0.0154535,
+ 0.009346447,
+ 0.016077481,
+ 0.0041189417,
+ -0.027800368,
+ 0.01720596,
+ -0.011158649,
+ 0.027800368,
+ -0.03003077,
+ -0.0072819972,
+ 0.0014296811,
+ 0.0145374425,
+ 0.0043280423,
+ -0.017086472,
+ -0.01611731,
+ -0.01258584,
+ -0.016927158,
+ 0.007607264,
+ 0.018825656,
+ 0.011331239,
+ -0.0057784673,
+ 0.001569911,
+ -0.013900184,
+ -0.014776413,
+ -0.0050814664,
+ -0.0012454737,
+ -0.0115967635,
+ -0.017458206,
+ -0.013203184,
+ -0.0063692583,
+ -0.01244644,
+ 0.011882202,
+ 0.0007708495,
+ -0.02035242,
+ 0.016250072,
+ 0.018414093,
+ -0.029526275,
+ 0.012751793,
+ -0.01555971,
+ 0.0013840442,
+ -0.019502742,
+ 0.0063758963,
+ 0.0037538463,
+ -0.035686433,
+ 0.027534844,
+ -0.016409386,
+ -0.03247359,
+ -0.008782208,
+ -0.0059842486,
+ 0.014338299,
+ 0.009233599,
+ -0.0053171194,
+ 0.006160158,
+ 0.0072952732,
+ 0.01401967,
+ 0.008815398,
+ -0.023790956,
+ 0.013096974,
+ -0.0031365028,
+ 0.005044957,
+ 0.0005356118,
+ -0.009379637,
+ 0.0066248253,
+ -0.00010724682,
+ 0.010289057,
+ 0.008815398,
+ -0.02279524,
+ -0.019701885,
+ -0.0027747264,
+ 0.016183691,
+ -0.014205537,
+ -0.003933075,
+ -0.013375774,
+ -0.005751915,
+ -0.010116466,
+ 0.004988533,
+ -0.005904591,
+ -0.008656085,
+ -0.017431654,
+ -0.011988411,
+ -0.01594472,
+ 0.00660823,
+ -0.027216217,
+ 0.0073218257,
+ -0.029977666,
+ -0.004593566,
+ -0.026671892,
+ -0.028517283,
+ -0.0050084474,
+ 0.009844304,
+ 0.025729282,
+ -0.013780698,
+ -0.026751548,
+ 0.004905557,
+ -0.035951957,
+ -0.026738273,
+ -0.019768266,
+ 0.0048690476,
+ 0.005250738,
+ 0.0014603822,
+ -0.018892037,
+ 0.017683903,
+ 0.0067177587,
+ 0.027694158,
+ -0.002618731,
+ -0.012419888,
+ 0.01772373,
+ -0.0032593077,
+ 0.006611549,
+ 0.016648358,
+ -0.03789028,
+ -0.023100592,
+ 0.023684746,
+ 0.0031248862,
+ 0.016382834,
+ 0.019967409,
+ -0.008941523,
+ -0.02014,
+ 0.0073882067,
+ 0.011357792,
+ -0.0031796505,
+ -0.0030253148,
+ -0.0010206081,
+ -0.017577693,
+ -0.009598695,
+ 0.002915786,
+ 0.001325131,
+ -0.0029207645,
+ -0.010780277,
+ -0.00325101,
+ -0.00811176,
+ -0.00073434,
+ -0.030083876,
+ -0.012864641,
+ -0.012745155,
+ -0.011769353,
+ 0.018785827,
+ -0.008264436,
+ -0.002675155,
+ 0.024255622,
+ 0.005483072,
+ -0.018480474,
+ -0.005426648,
+ 0.015095043,
+ 0.00044392303,
+ 0.011271496,
+ -0.0027548121,
+ 0.0026884312,
+ -0.00894816,
+ -0.015161424,
+ -0.014975557,
+ -0.024600804,
+ 0.004457485,
+ -0.015519881,
+ -0.012366783,
+ -0.012579202,
+ 0.01478969,
+ 0.0075541595,
+ -0.017962702,
+ -0.0017441611,
+ -0.014059499,
+ 0.005499667,
+ -0.0026884312,
+ 0.0031929268,
+ 0.0010853296,
+ -0.008045379,
+ 0.017471483,
+ 0.02590187,
+ -0.018546855,
+ -0.007826322,
+ 0.009333171,
+ 0.0157323,
+ 0.000086036016,
+ 0.004776114,
+ 0.22155327,
+ 0.006787459,
+ -0.0017823302,
+ 0.024919434,
+ 0.0023449094,
+ 0.03210186,
+ 0.0047329664,
+ -0.010879848,
+ 0.0044342517,
+ 0.015334014,
+ 0.029499723,
+ 0.019715162,
+ -0.008569789,
+ -0.0018901994,
+ -0.0077400263,
+ -0.019210665,
+ -0.005088105,
+ -0.023153698,
+ -0.032739118,
+ -0.029313855,
+ 0.00082146504,
+ -0.0212552,
+ 0.0044309325,
+ -0.005446562,
+ 0.018613236,
+ -0.009751371,
+ -0.013023955,
+ -0.001996409,
+ 0.01915756,
+ 0.017431654,
+ -0.031092867,
+ -0.0070231115,
+ 0.025330994,
+ -0.00018099198,
+ -0.025131851,
+ -0.011025886,
+ 0.0116498675,
+ -0.02506547,
+ 0.029234199,
+ -0.012287126,
+ 0.0069766445,
+ 0.0018752636,
+ 0.014271918,
+ 0.005108019,
+ -0.0109064,
+ 0.014391404,
+ 0.0062597296,
+ -0.031411495,
+ 0.00014935728,
+ 0.013236375,
+ -0.02891557,
+ -0.0006671292,
+ 0.008662722,
+ 0.012161002,
+ 0.020963125,
+ -0.0133691365,
+ 0.02653913,
+ -0.017989255,
+ 0.007978998,
+ 0.0093398085,
+ -0.02024621,
+ 0.03265946,
+ -0.02846418,
+ 0.025397375,
+ -0.024693737,
+ -0.0027050264,
+ -0.019330151,
+ -0.0104417335,
+ 0.015626092,
+ -0.006541849,
+ 0.004653309,
+ -0.025118576,
+ 0.0038268655,
+ 0.004045923,
+ -0.017564416,
+ -0.02444149,
+ 0.030296294,
+ 0.028756255,
+ 0.03927101,
+ 0.010767001,
+ -0.012034878,
+ -0.007122683,
+ -0.022476612,
+ -0.034942966,
+ -0.028411074,
+ -0.03927101,
+ -0.0037505273,
+ -0.0038799702,
+ -0.00037111135,
+ -0.009718181,
+ -0.013455432,
+ -0.015400395,
+ -0.0066978442,
+ -0.010760362,
+ 0.015121595,
+ 0.03111942,
+ 0.007992274,
+ 0.0270569,
+ -0.003104972,
+ 0.010056724,
+ -0.018414093,
+ 0.006472149,
+ 0.021281753,
+ 0.0043579135,
+ -0.00021490853,
+ 0.0008546556,
+ -0.01269205,
+ -0.003936394,
+ 0.0008870163,
+ 0.0009816092,
+ 0.0054664765,
+ -0.031278733,
+ 0.017245788,
+ 0.00027734818,
+ 0.005161124,
+ 0.0048093046,
+ -0.003923118,
+ -0.027149836,
+ 0.006950092,
+ -0.00615352,
+ 0.014205537,
+ 0.0016620146,
+ 0.0047396044,
+ 0.0039994563,
+ -0.015440224,
+ -0.0055627287,
+ -0.026273604,
+ 0.0013276202,
+ 0.0021009592,
+ -0.034810204,
+ 0.0064522345,
+ 0.00042608313,
+ 0.02307404,
+ -0.005957696,
+ 0.0016869075,
+ -0.0032775626,
+ -0.009041094,
+ -0.01227385,
+ -0.04349284,
+ 0.015652644,
+ 0.013468708,
+ -0.0023249951,
+ -0.011171925,
+ 0.0030352718,
+ -0.0061203293,
+ -0.023153698,
+ 0.046068422,
+ -0.005582643,
+ -0.02405648,
+ 0.005433286,
+ -0.02814555,
+ -0.0036874653,
+ 0.0067841397,
+ 0.006628144,
+ 0.029844904,
+ -0.0044276137,
+ -0.029127989,
+ -0.04548427,
+ 0.022091601,
+ 0.0038069512,
+ -0.030269742,
+ 0.0051578046,
+ 0.043572497,
+ -0.0144843375,
+ -0.02891557,
+ -0.010461648,
+ -0.17375894,
+ 0.029154541,
+ 0.019648781,
+ -0.00038335036,
+ 0.0029572742,
+ -0.0026469429,
+ 0.035925403,
+ -0.012021601,
+ 0.0015566348,
+ -0.0033124126,
+ 0.0010430117,
+ -0.010620962,
+ -0.022582822,
+ 0.00601412,
+ 0.008364008,
+ -0.0016586956,
+ -0.0011102224,
+ -0.013860356,
+ 0.022542993,
+ 0.020564837,
+ 0.018414093,
+ -0.008908332,
+ 0.032951534,
+ -0.011908754,
+ 0.010169571,
+ -0.011198477,
+ 0.0029108075,
+ 0.033084296,
+ 0.0029008503,
+ -0.0010015236,
+ -0.019794818,
+ 0.005844848,
+ 0.011669782,
+ 0.0052208668,
+ 0.010129742,
+ 0.0037737607,
+ 0.02880936,
+ -0.018599961,
+ -0.015095043,
+ 0.026578957,
+ 0.019662056,
+ 0.006823968,
+ -0.00045885876,
+ -0.019396532,
+ -0.0047993474,
+ 0.017192682,
+ 0.039589636,
+ -0.00874238,
+ 0.02146762,
+ -0.007667007,
+ 0.018785827,
+ -0.012758431,
+ -0.010010257,
+ -0.02052501,
+ 0.016090758,
+ 0.0061867107,
+ -0.0145507185,
+ 0.008065294,
+ 0.0104284575,
+ -0.0022386997,
+ -0.008324179,
+ -0.021640211,
+ 0.01705992,
+ -0.010541305,
+ -0.01639611,
+ -0.0074413116,
+ -0.034703992,
+ 0.007016473,
+ -0.003083398,
+ 0.0013691084,
+ -0.005108019,
+ -0.007886064,
+ 0.00053270767,
+ -0.018865485,
+ 0.025503585,
+ 0.005101381,
+ -0.027534844,
+ 0.015028661,
+ -0.009286704,
+ 0.006233177,
+ 0.00004343289,
+ 0.036031615,
+ 0.00957878,
+ 0.019250493,
+ 0.0024411618,
+ 0.0023664832,
+ -0.0030269742,
+ -0.007939169,
+ 0.0058581247,
+ 0.00587472,
+ 0.036589216,
+ -0.035288148,
+ -0.012997403,
+ -0.0110989055,
+ -0.002492607,
+ 0.008151589,
+ -0.008085207,
+ -0.00734174,
+ -0.0016802694,
+ 0.008403837,
+ -0.007793131,
+ -0.003913161,
+ -0.025437204,
+ 0.027123282,
+ 0.019330151,
+ -0.008729103,
+ 0.003943032,
+ 0.010289057,
+ 0.029977666,
+ 0.0014836156,
+ -0.024282174,
+ -0.0024361832,
+ 0.0110325245,
+ 0.021719867,
+ 0.012844726,
+ 0.015002109,
+ 0.020737428,
+ -0.013037231,
+ 0.014802966,
+ -0.0027332383,
+ 0.041634172,
+ -0.00926679,
+ -0.018759275,
+ 0.018666342,
+ 0.005386819,
+ -0.008822037,
+ -0.068399,
+ -0.054804165,
+ 0.027800368,
+ 0.04954679,
+ -0.00437119,
+ 0.029127989,
+ 0.03180978,
+ 0.021321582,
+ -0.022503164,
+ 0.010554581,
+ -0.006823968,
+ -0.021387963,
+ -0.021865906,
+ -0.0074479496,
+ 0.0037206558,
+ 0.004132218,
+ 0.01073381,
+ -0.0021673401,
+ -0.0012819833,
+ 0.041235887,
+ -0.010202762,
+ 0.004839176,
+ 0.0081715025,
+ -0.030402504,
+ -0.023764404,
+ -0.010800191,
+ -0.018374264,
+ 0.033641897,
+ 0.005416691,
+ -0.0055096243,
+ -0.0032775626,
+ -0.018095464,
+ 0.008563151,
+ -0.02339267,
+ -0.013674489,
+ 0.0023382711,
+ -0.028411074,
+ -0.0024063117,
+ 0.026658615,
+ -0.012413249,
+ 0.009333171,
+ 0.026446195,
+ -0.009107475,
+ -0.024560975,
+ 0.0011085629,
+ -0.02395027,
+ 0.0013857037,
+ 0.01926377,
+ -0.0020710877,
+ -0.031278733,
+ -0.015095043,
+ 0.0041720467,
+ -0.012798259,
+ 0.010162933,
+ 0.0063128346,
+ -0.010972782,
+ 0.045617033,
+ 0.016874054,
+ -0.010368714,
+ -0.0055992384,
+ -0.0092999805,
+ 0.0015782086,
+ -0.013581555,
+ 0.017843217,
+ -0.01615714,
+ 0.0036575939,
+ -0.027110007,
+ -0.013621384,
+ 0.022197811,
+ 0.0013964906,
+ -0.007348378,
+ 0.0145772705,
+ -0.003996137,
+ 0.0008364008,
+ -0.03411984,
+ 0.013030593,
+ -0.021454344,
+ -0.05034336,
+ 0.021095887,
+ -0.0055029863,
+ -0.025623072,
+ -0.023525432,
+ 0.007335102,
+ -0.043413185,
+ 0.016316453,
+ 0.016196968,
+ 0.0093132565,
+ -0.0110989055,
+ 0.0154535,
+ -0.045218747,
+ 0.0037737607,
+ 0.01639611,
+ 0.019887751,
+ -0.023366116,
+ -0.024043202,
+ 0.014258642,
+ 0.004271618,
+ -0.006877073,
+ 0.021387963,
+ -0.0019781543,
+ -0.036350243,
+ -0.009114114,
+ -0.037359234,
+ 0.01919739,
+ 0.011829097,
+ -0.015665919,
+ -0.0015591241,
+ 0.0144843375,
+ -0.003139822,
+ -0.024083031,
+ -0.015307462,
+ -0.0040990277,
+ -0.013223098,
+ 0.0024278855,
+ -0.008702551,
+ -0.0033207103,
+ -0.009804476,
+ -0.010554581,
+ 0.031066315,
+ 0.0044408897,
+ 0.025370823,
+ 0.009406189,
+ 0.025583243,
+ -0.002066109,
+ 0.015267633,
+ 0.008337456,
+ -0.009426104,
+ 0.01590489,
+ -0.011716249,
+ 0.007713474,
+ -0.029552827,
+ -0.013900184,
+ 0.0050150855,
+ -0.01650232,
+ -0.0015757193,
+ 0.008549875,
+ -0.020471904,
+ 0.008397198,
+ -0.013136802,
+ 0.021520725,
+ 0.0060406723,
+ 0.012858002,
+ -0.004723009,
+ -0.029313855,
+ 0.009240237,
+ -0.0212552,
+ -0.028118998,
+ 0.017803388,
+ -0.0314646,
+ 0.012353507,
+ 0.029632485,
+ -0.000016128512,
+ 0.016966987,
+ 0.009711542,
+ -0.037253026,
+ -0.015095043,
+ 0.013442155,
+ -0.00905437,
+ -0.000982439,
+ -0.0020495139,
+ 0.008337456,
+ -0.020644495,
+ 0.042085562,
+ -0.000744712,
+ 0.021135716,
+ -0.0072886352,
+ 0.01643594,
+ 0.013767422,
+ -0.0044707614,
+ -0.014763137,
+ 0.018852208,
+ -0.03080079,
+ -0.0049188333,
+ 0.0058846767,
+ 0.008330817,
+ 0.008257798,
+ 0.024202518,
+ 0.02307404,
+ 0.011065715,
+ 0.00036053188,
+ -0.00049412367,
+ 0.036270585,
+ 0.027043626,
+ 0.011902116,
+ -0.027773816,
+ 0.013289479,
+ 0.018374264,
+ -0.0033157317,
+ 0.0016636741,
+ 0.0020677685,
+ -0.012293763,
+ 0.008184779,
+ -0.034252603,
+ 0.010753725,
+ 0.008675998,
+ 0.00968499,
+ -0.003793675,
+ -0.011218391,
+ 0.010375353,
+ -0.0005737809,
+ 0.019781543,
+ 0.020591391,
+ 0.019954132,
+ -0.00053976063,
+ -0.0059444197,
+ -0.022675755,
+ -0.010003619,
+ 0.0038467797,
+ -0.0212552,
+ -0.033482585,
+ -0.015572986,
+ 0.0037737607,
+ 0.01451089,
+ 0.0036376796,
+ 0.007454588,
+ 0.013979842,
+ -0.013402327,
+ 0.014975557,
+ -0.010435095,
+ 0.0151747,
+ -0.030375952,
+ 0.023166973,
+ -0.0024760119,
+ -0.005881358,
+ 0.019914305,
+ -0.008596341,
+ 0.017737007,
+ -0.0036111271,
+ 0.012499545,
+ -0.02647275,
+ 0.0053901384,
+ 0.008556513,
+ 0.019648781,
+ 0.00874238,
+ -0.012439802,
+ -0.028623493,
+ -0.022330573,
+ -0.0029340407,
+ -0.016303178,
+ 0.007474502,
+ -0.016555425,
+ 0.060645696,
+ 0.0023631642,
+ -0.012054792,
+ 0.017604245,
+ 0.013103612,
+ 0.026061187,
+ 0.015533158,
+ 0.025742557,
+ 0.00013753316,
+ -0.013940013,
+ 0.02880936,
+ 0.010109829,
+ -0.0036111271,
+ -0.012419888,
+ -0.045457717,
+ 0.022835068,
+ -0.014139156,
+ 0.007819683,
+ -0.010461648,
+ -0.012008325,
+ 0.008895056,
+ 0.015984548,
+ 0.024043202,
+ -0.00059825886,
+ -0.0036376796,
+ -0.007939169,
+ 0.0242689,
+ -0.022197811,
+ -0.026313433,
+ -0.026724996,
+ 0.010939592,
+ 0.0023449094,
+ -0.012074706,
+ -0.018493751,
+ 0.017697178,
+ -0.0052142288,
+ -0.00360117,
+ 0.0056058764,
+ 0.01070062,
+ 0.0035248317,
+ 0.023671469,
+ 0.030880447,
+ -0.020299314,
+ -0.0145905465,
+ 0.018055636,
+ -0.013727593,
+ -0.023313012,
+ 0.013236375,
+ -0.0020113448
+ ]
+ }
+ ],
+ "usage": {
+ "prompt_tokens": 4,
+ "total_tokens": 4
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.yaml
new file mode 100644
index 000000000000..020ac10d40ab
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/embeddings.yaml
@@ -0,0 +1,1553 @@
+title: Return the embeddings for a given prompt.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ deployment-id: deployment-afa0669ca01e4693ae3a93baf40f26d6
+ body:
+ input:
+ - this is a test
+responses:
+ "200":
+ body:
+ data:
+ - index: 0
+ embedding:
+ - -0.012838088
+ - -0.007421397
+ - -0.017617522
+ - -0.028278312
+ - -0.018666342
+ - 0.01737855
+ - -0.01821495
+ - -0.006950092
+ - -0.009937238
+ - -0.038580645
+ - 0.010674067
+ - 0.02412286
+ - -0.013647936
+ - 0.013189907
+ - 0.0021125758
+ - 0.012406612
+ - 0.020790534
+ - 0.00074595667
+ - 0.008397198
+ - -0.00535031
+ - 0.008968075
+ - 0.014351576
+ - -0.014086051
+ - 0.015055214
+ - -0.022211088
+ - -0.025198232
+ - 0.0065186154
+ - -0.036350243
+ - 0.009180495
+ - -0.009698266
+ - 0.009446018
+ - -0.008463579
+ - -0.0040426035
+ - -0.03443847
+ - -0.00091273896
+ - -0.0019217303
+ - 0.002349888
+ - -0.021560553
+ - 0.016515596
+ - -0.015572986
+ - 0.0038666942
+ - -8.432463e-05
+ - 0.0032178196
+ - -0.020365695
+ - -0.009631885
+ - -0.007647093
+ - 0.0033837722
+ - -0.026764825
+ - -0.010501476
+ - 0.020219658
+ - 0.024640633
+ - -0.0066912062
+ - -0.036456455
+ - -0.0040923897
+ - -0.013966565
+ - 0.017816665
+ - 0.005366905
+ - 0.022835068
+ - 0.0103488
+ - -0.0010811808
+ - -0.028942121
+ - 0.0074280356
+ - -0.017033368
+ - 0.0074877786
+ - 0.021640211
+ - 0.002499245
+ - 0.013316032
+ - 0.0021524043
+ - 0.010129742
+ - 0.0054731146
+ - 0.03143805
+ - 0.014856071
+ - 0.0023366117
+ - -0.0008243692
+ - 0.022781964
+ - 0.003038591
+ - -0.017617522
+ - 0.0013309394
+ - 0.0022154662
+ - 0.00097414135
+ - 0.012041516
+ - -0.027906578
+ - -0.023817508
+ - 0.013302756
+ - -0.003003741
+ - -0.006890349
+ - 0.0016744611
+ - 0.023658194
+ - -0.015851786
+ - -0.0045305043
+ - -0.003038591
+ - 0.017710455
+ - 0.019237218
+ - 0.016037652
+ - -0.022503164
+ - 0.025795663
+ - -0.001129307
+ - 0.032500144
+ - -0.008178141
+ - -0.019940857
+ - -0.009877495
+ - 0.00018918588
+ - 0.023060765
+ - -0.005692172
+ - -0.018347712
+ - -0.011039163
+ - -0.0062066247
+ - -5.24047e-05
+ - 0.020126723
+ - -0.0011691356
+ - -0.015811957
+ - 0.020086896
+ - -0.009114114
+ - -0.03056182
+ - 0.0029025099
+ - -0.006591635
+ - -0.014046223
+ - -0.01590489
+ - -0.02307404
+ - -0.008861865
+ - -0.004832538
+ - 0.010030171
+ - 0.02311387
+ - -0.012652221
+ - 0.024906157
+ - 0.003860056
+ - -0.01936998
+ - -0.02957938
+ - -0.008357369
+ - -0.0016371218
+ - 0.027800368
+ - 0.0077333883
+ - 0.021626934
+ - 0.02140124
+ - -0.030482162
+ - 0.026406368
+ - -0.008277712
+ - 0.012884554
+ - -0.043784916
+ - -0.0145639945
+ - -0.0070297495
+ - 0.034889862
+ - -0.00041508878
+ - -0.010528029
+ - -0.009572142
+ - 0.015692472
+ - 0.037810627
+ - -0.0022021902
+ - 0.008662722
+ - -0.016794397
+ - 0.0003090866
+ - -0.0060506295
+ - 0.015227805
+ - 0.0006650548
+ - 0.01842737
+ - 0.036801632
+ - -0.002461076
+ - -0.0029390194
+ - -0.0057120863
+ - -0.012486269
+ - -0.0046831807
+ - -0.0017474802
+ - -0.0036210844
+ - -0.01178263
+ - 0.017869769
+ - 0.039111692
+ - 0.010946229
+ - 0.018467197
+ - 0.0027780454
+ - -0.005851486
+ - -0.016489044
+ - 0.03186289
+ - -0.040333103
+ - 0.016648358
+ - -0.006870435
+ - 0.0072687212
+ - 2.370982e-06
+ - 0.006465511
+ - -0.018201673
+ - -0.00020526254
+ - -0.025410652
+ - 0.02010017
+ - 0.017537864
+ - 0.022821793
+ - 0.0064555537
+ - -0.0012969191
+ - 0.02157383
+ - -0.0053536287
+ - -0.0087622935
+ - -0.010952868
+ - 0.017564416
+ - 0.02185263
+ - 0.0004733796
+ - 0.0018337755
+ - -0.6954606
+ - -0.011231667
+ - 0.02748174
+ - 0.003929756
+ - 0.0144843375
+ - 0.045192193
+ - 0.01898497
+ - -0.0070363875
+ - -0.007813046
+ - 0.017604245
+ - -0.017790113
+ - 0.011165286
+ - -0.0036376796
+ - -0.014736585
+ - 0.0016421003
+ - -0.019144284
+ - -0.0072222543
+ - -0.023127146
+ - 0.006936816
+ - 0.025198232
+ - 0.0030219958
+ - 0.011722887
+ - -0.004271618
+ - -0.0011127117
+ - -0.0051047
+ - 0.00077333883
+ - 0.018599961
+ - 0.0074877786
+ - 0.010820106
+ - 0.0033406245
+ - -0.015055214
+ - 0.02384406
+ - 0.006090458
+ - 0.00891497
+ - 0.023366116
+ - -0.011078991
+ - -0.019582398
+ - 0.0011566891
+ - 0.015413672
+ - 0.01793615
+ - -0.014736585
+ - 0.002492607
+ - 0.027800368
+ - 0.023923717
+ - -0.007421397
+ - 0.0016105693
+ - 0.011337877
+ - -0.015041938
+ - -0.008768932
+ - -0.003982861
+ - 0.002884255
+ - -0.007832959
+ - 0.0025457118
+ - -0.0023548664
+ - -0.0061767534
+ - -0.016754568
+ - 0.0006036523
+ - 0.0105346665
+ - 0.0055361767
+ - 0.01478969
+ - -0.0011251582
+ - 0.009605332
+ - -0.0037140178
+ - -0.017537864
+ - -0.021733144
+ - 0.012897831
+ - -0.024481317
+ - 0.022290744
+ - 0.0056523434
+ - -0.005366905
+ - 0.0020412162
+ - 0.013435517
+ - -0.003408665
+ - -0.01705992
+ - 0.029446619
+ - 0.022011945
+ - 0.009226961
+ - -0.003310753
+ - -0.007939169
+ - 0.021308305
+ - 0.0026718357
+ - 0.002129171
+ - -0.020047067
+ - -0.007474502
+ - 0.021534001
+ - -0.0110590765
+ - -0.018374264
+ - -0.001664504
+ - -0.003923118
+ - 0.015387119
+ - 0.025516862
+ - 0.0016421003
+ - -0.017498035
+ - -0.01825478
+ - 0.01451089
+ - -0.008198055
+ - -0.011656506
+ - 0.0044242945
+ - 0.031491153
+ - 0.01017621
+ - -0.010408543
+ - -0.009034456
+ - -0.0023283141
+ - 0.012021601
+ - 0.015639367
+ - 0.011736163
+ - 0.007912617
+ - 0.02031259
+ - 0.022104878
+ - -0.02241023
+ - 0.00041156227
+ - -0.009817752
+ - -0.030880447
+ - -0.0017823302
+ - 0.0030933553
+ - -0.04128899
+ - -0.0007783174
+ - 0.012393335
+ - 0.0122273825
+ - -0.009087561
+ - 0.022728859
+ - -0.002884255
+ - 0.028065892
+ - 0.0047396044
+ - 0.008065294
+ - 0.015519881
+ - 0.0133956885
+ - -0.02279524
+ - -0.011729525
+ - 0.0037206558
+ - -0.0046732235
+ - 0.003587894
+ - 0.024401661
+ - -0.013574918
+ - 0.012685412
+ - -0.0041620894
+ - 0.020578114
+ - 0.007394845
+ - 0.014139156
+ - -0.012512821
+ - -0.021042781
+ - 0.022423506
+ - -0.015360567
+ - 0.004009413
+ - 0.0104550095
+ - -0.024799947
+ - -0.0081449505
+ - -0.00063850236
+ - 0.0070231115
+ - -0.0009633545
+ - -0.015705748
+ - -0.0028942123
+ - -0.008815398
+ - 0.007461226
+ - -0.014417957
+ - -0.012931022
+ - 0.0015674217
+ - -0.02506547
+ - -0.0063128346
+ - -0.013422241
+ - -0.0058614435
+ - -0.0006007482
+ - -0.015002109
+ - 0.0037040606
+ - -0.008410474
+ - -0.0016089098
+ - -0.018653065
+ - 0.020538285
+ - -0.016980262
+ - -0.042244878
+ - -0.017498035
+ - 0.006727716
+ - -0.01877255
+ - 0.008987989
+ - 0.00077665783
+ - -0.0007119364
+ - -0.0067243967
+ - 0.0038467797
+ - -0.018055636
+ - -0.01440468
+ - 0.007534245
+ - 0.0051212953
+ - 0.002741536
+ - 0.011523744
+ - -0.0018603279
+ - 0.023684746
+ - 0.016196968
+ - 0.01731217
+ - -0.01992758
+ - 0.009372999
+ - -0.01982137
+ - 0.001150051
+ - -0.014417957
+ - 0.005672258
+ - -0.015785405
+ - 0.0049387473
+ - -0.0051445286
+ - 0.012632307
+ - 0.0011666464
+ - 0.024587527
+ - 0.04259006
+ - -0.0025672857
+ - 0.02311387
+ - -0.014524166
+ - 0.0013848739
+ - -0.04105002
+ - -0.010089914
+ - -0.009087561
+ - 0.015440224
+ - 0.009207047
+ - 0.0128048975
+ - -0.030216638
+ - -0.02549031
+ - 0.00499849
+ - 0.02737553
+ - 0.024985814
+ - -0.015055214
+ - 0.007580712
+ - -0.003979542
+ - 0.0016304837
+ - 0.0010446712
+ - 0.0033373055
+ - 0.0066314633
+ - -0.011948583
+ - -0.021281753
+ - 0.012161002
+ - 0.030747686
+ - 0.03555367
+ - 0.023751127
+ - -0.03159736
+ - -0.0110590765
+ - 0.015758853
+ - -0.0012197511
+ - -0.0023249951
+ - -0.0007488608
+ - 0.0074877786
+ - 0.01643594
+ - -0.008098484
+ - 0.03730613
+ - -0.0010056724
+ - -3.4798173e-05
+ - 0.011702972
+ - 0.039563086
+ - -0.012280487
+ - 0.027747264
+ - 0.018387541
+ - 0.033057746
+ - -0.004835857
+ - -0.00471969
+ - 0.025450481
+ - -0.0051146573
+ - 0.014603823
+ - 0.00022258384
+ - 0.00060863094
+ - 0.015665919
+ - -0.021626934
+ - -0.013674489
+ - 0.0062066247
+ - 0.018560132
+ - 0.031942543
+ - 0.012054792
+ - 0.004902238
+ - 0.0028510645
+ - -0.027667606
+ - 0.009817752
+ - -0.002580562
+ - 0.0069036256
+ - 0.020047067
+ - -0.009704905
+ - -0.012619031
+ - -0.0056755766
+ - -0.0036443176
+ - 0.019383255
+ - 0.0030701219
+ - 0.024972538
+ - 0.009100837
+ - 0.026353262
+ - 0.012758431
+ - 0.029074885
+ - 0.021202097
+ - -0.0038102702
+ - -0.032048754
+ - 0.003996137
+ - 0.0029738694
+ - 0.0032277768
+ - -0.026127568
+ - -0.02213143
+ - 0.0028742978
+ - 0.0010637557
+ - 0.000580419
+ - 0.0021789568
+ - 0.00083764544
+ - 0.026924139
+ - -0.03265946
+ - 0.0059211864
+ - 0.021892458
+ - 0.01178263
+ - 0.0018188398
+ - 0.009718181
+ - -0.020047067
+ - 0.017989255
+ - 0.0046035233
+ - -0.010561219
+ - -0.010342162
+ - 0.009505761
+ - -0.018334435
+ - -0.00667793
+ - -0.024534423
+ - 0.00035347888
+ - 0.00082561385
+ - -0.006143563
+ - 0.016820949
+ - -0.0013500239
+ - -0.0069832825
+ - 0.015347291
+ - -0.005094743
+ - 0.001838754
+ - 0.017073197
+ - 0.02521151
+ - 0.006209944
+ - -0.015612815
+ - -0.009744733
+ - -0.019794818
+ - 0.007786493
+ - 0.037624758
+ - 0.017564416
+ - 0.0076802834
+ - 0.0026203906
+ - 0.0022403593
+ - -0.024560975
+ - -0.04062518
+ - -0.016581977
+ - 0.00789934
+ - 0.0099305995
+ - 0.006996559
+ - 0.011078991
+ - 0.016236795
+ - -0.0068969876
+ - 0.01374087
+ - 0.014922452
+ - -0.0042882133
+ - 0.00022901449
+ - -0.0006692036
+ - 0.001359981
+ - -7.581957e-05
+ - 0.0042616613
+ - 0.0066381013
+ - 0.012512821
+ - 0.021534001
+ - 0.0032775626
+ - 0.016913882
+ - -0.00789934
+ - -0.009200408
+ - -0.020286039
+ - -0.017033368
+ - 0.014378128
+ - 0.009233599
+ - 0.0070828544
+ - -0.013229736
+ - 0.025928425
+ - -0.011862287
+ - 0.008383922
+ - 0.012632307
+ - -0.0003097089
+ - 0.007593988
+ - 0.0059079104
+ - -0.0026369859
+ - -0.0262205
+ - 0.003335646
+ - -0.0067609064
+ - -0.0042882133
+ - 0.008549875
+ - -0.007600626
+ - -0.012592479
+ - 0.028623493
+ - -0.0030502076
+ - -0.006989921
+ - -0.015785405
+ - 0.010050085
+ - 0.016714739
+ - -0.023724575
+ - -0.006346025
+ - -0.014245366
+ - -0.032154962
+ - -0.03388087
+ - -0.024308728
+ - -0.002461076
+ - -0.003733932
+ - -0.02195884
+ - -0.021069333
+ - -0.022144707
+ - -0.007872788
+ - -0.017179407
+ - -0.009034456
+ - -0.010893124
+ - -0.02478667
+ - -0.020153277
+ - -0.023976821
+ - 0.014656927
+ - 0.0005368565
+ - -0.015878338
+ - 0.010123105
+ - -0.0030717815
+ - 0.01555971
+ - 0.0018321159
+ - -0.036244035
+ - 0.00017176087
+ - -0.013375774
+ - -0.010375353
+ - 0.026512576
+ - 0.016581977
+ - 0.013847079
+ - 0.015719024
+ - 0.013223098
+ - 0.004975257
+ - -0.0010579474
+ - -0.0034385365
+ - -0.029048331
+ - 0.017298892
+ - -0.022529716
+ - 0.008463579
+ - -0.014723309
+ - -0.005814977
+ - -0.009027818
+ - -0.009738095
+ - -0.0104682855
+ - -0.005044957
+ - 0.007905979
+ - 0.011656506
+ - 0.003153098
+ - -0.0005231654
+ - 0.019954132
+ - -0.021985391
+ - -0.005307162
+ - 0.0021839354
+ - -0.025184957
+ - 0.013926737
+ - -0.0059908866
+ - 0.0065717204
+ - 0.009884133
+ - -0.0062298584
+ - 0.03388087
+ - 0.0028577026
+ - -0.015931444
+ - 0.0010986058
+ - -0.025808938
+ - 0.0022835068
+ - 0.014152432
+ - 0.015227805
+ - 0.013701041
+ - -0.007872788
+ - -0.030614924
+ - -0.026393091
+ - 0.0010753724
+ - -0.016940435
+ - 0.013647936
+ - -0.007408121
+ - -0.024308728
+ - -0.031915992
+ - -0.018161846
+ - 0.00072521257
+ - 0.028862465
+ - 0.012234021
+ - -0.019555846
+ - -0.027641054
+ - -0.00082810316
+ - -0.0019150922
+ - -0.016276624
+ - -0.01125822
+ - -0.034146395
+ - -0.015294186
+ - 0.006671292
+ - -0.015533158
+ - 0.013674489
+ - -0.0011766035
+ - -0.017325444
+ - -0.023233354
+ - -0.013189907
+ - 0.0005580154
+ - -0.03188944
+ - -0.007056302
+ - -0.0059942054
+ - 0.03411984
+ - 0.04317421
+ - 0.029420065
+ - 0.006488744
+ - -0.0022436783
+ - 0.013063784
+ - 0.00012207884
+ - 0.008118398
+ - -0.023246631
+ - 0.0051909955
+ - -0.00894816
+ - 0.0081316745
+ - 0.0023200165
+ - 0.011510468
+ - -0.0005770999
+ - 0.00016979019
+ - 0.010129742
+ - 0.015506605
+ - -0.0073815687
+ - 0.0031995648
+ - -0.026578957
+ - -0.016674912
+ - 0.0049652997
+ - 0.0072687212
+ - -0.016568702
+ - -0.001964878
+ - -0.015692472
+ - -0.0048955996
+ - 0.027773816
+ - 0.012864641
+ - 0.01594472
+ - 0.008244522
+ - 0.017139578
+ - -0.01772373
+ - -0.0012521119
+ - 0.011689696
+ - 0.0111121815
+ - -0.0036476366
+ - 0.0012570905
+ - -0.007826322
+ - -0.016754568
+ - 0.011948583
+ - -0.0045968853
+ - 0.023963546
+ - -0.0052739717
+ - 0.014656927
+ - 0.009731457
+ - 0.010727172
+ - -0.01705992
+ - -0.0026071144
+ - 0.010760362
+ - 0.000919377
+ - -0.006365939
+ - -0.03013698
+ - -0.010554581
+ - -0.018613236
+ - 0.013886908
+ - 0.029420065
+ - -0.013030593
+ - 0.016860778
+ - -0.019237218
+ - -0.022118153
+ - 0.007919255
+ - -0.0004003605
+ - 0.046546366
+ - 0.01349526
+ - 0.006352663
+ - 0.014258642
+ - 0.0031813101
+ - -0.027017072
+ - 0.0070828544
+ - -0.020219658
+ - 0.0037140178
+ - 0.023366116
+ - 0.040386207
+ - -0.016382834
+ - -0.0023681426
+ - 0.0064522345
+ - 0.016528873
+ - 0.0006804054
+ - -0.02891557
+ - -0.0043545947
+ - 0.01101261
+ - -0.0014778073
+ - -0.018055636
+ - -0.0077001974
+ - -0.0358723
+ - 0.003373815
+ - -0.00071940426
+ - -0.011822458
+ - -0.024295451
+ - -0.009791199
+ - -0.026565682
+ - 0.020989677
+ - -0.035155386
+ - 0.01832116
+ - 0.014776413
+ - -0.028012788
+ - -0.007262083
+ - 0.0030402504
+ - -0.029446619
+ - 0.00010174965
+ - 0.009758009
+ - 0.03767786
+ - -0.0154535
+ - 0.009346447
+ - 0.016077481
+ - 0.0041189417
+ - -0.027800368
+ - 0.01720596
+ - -0.011158649
+ - 0.027800368
+ - -0.03003077
+ - -0.0072819972
+ - 0.0014296811
+ - 0.0145374425
+ - 0.0043280423
+ - -0.017086472
+ - -0.01611731
+ - -0.01258584
+ - -0.016927158
+ - 0.007607264
+ - 0.018825656
+ - 0.011331239
+ - -0.0057784673
+ - 0.001569911
+ - -0.013900184
+ - -0.014776413
+ - -0.0050814664
+ - -0.0012454737
+ - -0.0115967635
+ - -0.017458206
+ - -0.013203184
+ - -0.0063692583
+ - -0.01244644
+ - 0.011882202
+ - 0.0007708495
+ - -0.02035242
+ - 0.016250072
+ - 0.018414093
+ - -0.029526275
+ - 0.012751793
+ - -0.01555971
+ - 0.0013840442
+ - -0.019502742
+ - 0.0063758963
+ - 0.0037538463
+ - -0.035686433
+ - 0.027534844
+ - -0.016409386
+ - -0.03247359
+ - -0.008782208
+ - -0.0059842486
+ - 0.014338299
+ - 0.009233599
+ - -0.0053171194
+ - 0.006160158
+ - 0.0072952732
+ - 0.01401967
+ - 0.008815398
+ - -0.023790956
+ - 0.013096974
+ - -0.0031365028
+ - 0.005044957
+ - 0.0005356118
+ - -0.009379637
+ - 0.0066248253
+ - -0.00010724682
+ - 0.010289057
+ - 0.008815398
+ - -0.02279524
+ - -0.019701885
+ - -0.0027747264
+ - 0.016183691
+ - -0.014205537
+ - -0.003933075
+ - -0.013375774
+ - -0.005751915
+ - -0.010116466
+ - 0.004988533
+ - -0.005904591
+ - -0.008656085
+ - -0.017431654
+ - -0.011988411
+ - -0.01594472
+ - 0.00660823
+ - -0.027216217
+ - 0.0073218257
+ - -0.029977666
+ - -0.004593566
+ - -0.026671892
+ - -0.028517283
+ - -0.0050084474
+ - 0.009844304
+ - 0.025729282
+ - -0.013780698
+ - -0.026751548
+ - 0.004905557
+ - -0.035951957
+ - -0.026738273
+ - -0.019768266
+ - 0.0048690476
+ - 0.005250738
+ - 0.0014603822
+ - -0.018892037
+ - 0.017683903
+ - 0.0067177587
+ - 0.027694158
+ - -0.002618731
+ - -0.012419888
+ - 0.01772373
+ - -0.0032593077
+ - 0.006611549
+ - 0.016648358
+ - -0.03789028
+ - -0.023100592
+ - 0.023684746
+ - 0.0031248862
+ - 0.016382834
+ - 0.019967409
+ - -0.008941523
+ - -0.02014
+ - 0.0073882067
+ - 0.011357792
+ - -0.0031796505
+ - -0.0030253148
+ - -0.0010206081
+ - -0.017577693
+ - -0.009598695
+ - 0.002915786
+ - 0.001325131
+ - -0.0029207645
+ - -0.010780277
+ - -0.00325101
+ - -0.00811176
+ - -0.00073434
+ - -0.030083876
+ - -0.012864641
+ - -0.012745155
+ - -0.011769353
+ - 0.018785827
+ - -0.008264436
+ - -0.002675155
+ - 0.024255622
+ - 0.005483072
+ - -0.018480474
+ - -0.005426648
+ - 0.015095043
+ - 0.00044392303
+ - 0.011271496
+ - -0.0027548121
+ - 0.0026884312
+ - -0.00894816
+ - -0.015161424
+ - -0.014975557
+ - -0.024600804
+ - 0.004457485
+ - -0.015519881
+ - -0.012366783
+ - -0.012579202
+ - 0.01478969
+ - 0.0075541595
+ - -0.017962702
+ - -0.0017441611
+ - -0.014059499
+ - 0.005499667
+ - -0.0026884312
+ - 0.0031929268
+ - 0.0010853296
+ - -0.008045379
+ - 0.017471483
+ - 0.02590187
+ - -0.018546855
+ - -0.007826322
+ - 0.009333171
+ - 0.0157323
+ - 8.6036016e-05
+ - 0.004776114
+ - 0.22155327
+ - 0.006787459
+ - -0.0017823302
+ - 0.024919434
+ - 0.0023449094
+ - 0.03210186
+ - 0.0047329664
+ - -0.010879848
+ - 0.0044342517
+ - 0.015334014
+ - 0.029499723
+ - 0.019715162
+ - -0.008569789
+ - -0.0018901994
+ - -0.0077400263
+ - -0.019210665
+ - -0.005088105
+ - -0.023153698
+ - -0.032739118
+ - -0.029313855
+ - 0.00082146504
+ - -0.0212552
+ - 0.0044309325
+ - -0.005446562
+ - 0.018613236
+ - -0.009751371
+ - -0.013023955
+ - -0.001996409
+ - 0.01915756
+ - 0.017431654
+ - -0.031092867
+ - -0.0070231115
+ - 0.025330994
+ - -0.00018099198
+ - -0.025131851
+ - -0.011025886
+ - 0.0116498675
+ - -0.02506547
+ - 0.029234199
+ - -0.012287126
+ - 0.0069766445
+ - 0.0018752636
+ - 0.014271918
+ - 0.005108019
+ - -0.0109064
+ - 0.014391404
+ - 0.0062597296
+ - -0.031411495
+ - 0.00014935728
+ - 0.013236375
+ - -0.02891557
+ - -0.0006671292
+ - 0.008662722
+ - 0.012161002
+ - 0.020963125
+ - -0.0133691365
+ - 0.02653913
+ - -0.017989255
+ - 0.007978998
+ - 0.0093398085
+ - -0.02024621
+ - 0.03265946
+ - -0.02846418
+ - 0.025397375
+ - -0.024693737
+ - -0.0027050264
+ - -0.019330151
+ - -0.0104417335
+ - 0.015626092
+ - -0.006541849
+ - 0.004653309
+ - -0.025118576
+ - 0.0038268655
+ - 0.004045923
+ - -0.017564416
+ - -0.02444149
+ - 0.030296294
+ - 0.028756255
+ - 0.03927101
+ - 0.010767001
+ - -0.012034878
+ - -0.007122683
+ - -0.022476612
+ - -0.034942966
+ - -0.028411074
+ - -0.03927101
+ - -0.0037505273
+ - -0.0038799702
+ - -0.00037111135
+ - -0.009718181
+ - -0.013455432
+ - -0.015400395
+ - -0.0066978442
+ - -0.010760362
+ - 0.015121595
+ - 0.03111942
+ - 0.007992274
+ - 0.0270569
+ - -0.003104972
+ - 0.010056724
+ - -0.018414093
+ - 0.006472149
+ - 0.021281753
+ - 0.0043579135
+ - -0.00021490853
+ - 0.0008546556
+ - -0.01269205
+ - -0.003936394
+ - 0.0008870163
+ - 0.0009816092
+ - 0.0054664765
+ - -0.031278733
+ - 0.017245788
+ - 0.00027734818
+ - 0.005161124
+ - 0.0048093046
+ - -0.003923118
+ - -0.027149836
+ - 0.006950092
+ - -0.00615352
+ - 0.014205537
+ - 0.0016620146
+ - 0.0047396044
+ - 0.0039994563
+ - -0.015440224
+ - -0.0055627287
+ - -0.026273604
+ - 0.0013276202
+ - 0.0021009592
+ - -0.034810204
+ - 0.0064522345
+ - 0.00042608313
+ - 0.02307404
+ - -0.005957696
+ - 0.0016869075
+ - -0.0032775626
+ - -0.009041094
+ - -0.01227385
+ - -0.04349284
+ - 0.015652644
+ - 0.013468708
+ - -0.0023249951
+ - -0.011171925
+ - 0.0030352718
+ - -0.0061203293
+ - -0.023153698
+ - 0.046068422
+ - -0.005582643
+ - -0.02405648
+ - 0.005433286
+ - -0.02814555
+ - -0.0036874653
+ - 0.0067841397
+ - 0.006628144
+ - 0.029844904
+ - -0.0044276137
+ - -0.029127989
+ - -0.04548427
+ - 0.022091601
+ - 0.0038069512
+ - -0.030269742
+ - 0.0051578046
+ - 0.043572497
+ - -0.0144843375
+ - -0.02891557
+ - -0.010461648
+ - -0.17375894
+ - 0.029154541
+ - 0.019648781
+ - -0.00038335036
+ - 0.0029572742
+ - -0.0026469429
+ - 0.035925403
+ - -0.012021601
+ - 0.0015566348
+ - -0.0033124126
+ - 0.0010430117
+ - -0.010620962
+ - -0.022582822
+ - 0.00601412
+ - 0.008364008
+ - -0.0016586956
+ - -0.0011102224
+ - -0.013860356
+ - 0.022542993
+ - 0.020564837
+ - 0.018414093
+ - -0.008908332
+ - 0.032951534
+ - -0.011908754
+ - 0.010169571
+ - -0.011198477
+ - 0.0029108075
+ - 0.033084296
+ - 0.0029008503
+ - -0.0010015236
+ - -0.019794818
+ - 0.005844848
+ - 0.011669782
+ - 0.0052208668
+ - 0.010129742
+ - 0.0037737607
+ - 0.02880936
+ - -0.018599961
+ - -0.015095043
+ - 0.026578957
+ - 0.019662056
+ - 0.006823968
+ - -0.00045885876
+ - -0.019396532
+ - -0.0047993474
+ - 0.017192682
+ - 0.039589636
+ - -0.00874238
+ - 0.02146762
+ - -0.007667007
+ - 0.018785827
+ - -0.012758431
+ - -0.010010257
+ - -0.02052501
+ - 0.016090758
+ - 0.0061867107
+ - -0.0145507185
+ - 0.008065294
+ - 0.0104284575
+ - -0.0022386997
+ - -0.008324179
+ - -0.021640211
+ - 0.01705992
+ - -0.010541305
+ - -0.01639611
+ - -0.0074413116
+ - -0.034703992
+ - 0.007016473
+ - -0.003083398
+ - 0.0013691084
+ - -0.005108019
+ - -0.007886064
+ - 0.00053270767
+ - -0.018865485
+ - 0.025503585
+ - 0.005101381
+ - -0.027534844
+ - 0.015028661
+ - -0.009286704
+ - 0.006233177
+ - 4.343289e-05
+ - 0.036031615
+ - 0.00957878
+ - 0.019250493
+ - 0.0024411618
+ - 0.0023664832
+ - -0.0030269742
+ - -0.007939169
+ - 0.0058581247
+ - 0.00587472
+ - 0.036589216
+ - -0.035288148
+ - -0.012997403
+ - -0.0110989055
+ - -0.002492607
+ - 0.008151589
+ - -0.008085207
+ - -0.00734174
+ - -0.0016802694
+ - 0.008403837
+ - -0.007793131
+ - -0.003913161
+ - -0.025437204
+ - 0.027123282
+ - 0.019330151
+ - -0.008729103
+ - 0.003943032
+ - 0.010289057
+ - 0.029977666
+ - 0.0014836156
+ - -0.024282174
+ - -0.0024361832
+ - 0.0110325245
+ - 0.021719867
+ - 0.012844726
+ - 0.015002109
+ - 0.020737428
+ - -0.013037231
+ - 0.014802966
+ - -0.0027332383
+ - 0.041634172
+ - -0.00926679
+ - -0.018759275
+ - 0.018666342
+ - 0.005386819
+ - -0.008822037
+ - -0.068399
+ - -0.054804165
+ - 0.027800368
+ - 0.04954679
+ - -0.00437119
+ - 0.029127989
+ - 0.03180978
+ - 0.021321582
+ - -0.022503164
+ - 0.010554581
+ - -0.006823968
+ - -0.021387963
+ - -0.021865906
+ - -0.0074479496
+ - 0.0037206558
+ - 0.004132218
+ - 0.01073381
+ - -0.0021673401
+ - -0.0012819833
+ - 0.041235887
+ - -0.010202762
+ - 0.004839176
+ - 0.0081715025
+ - -0.030402504
+ - -0.023764404
+ - -0.010800191
+ - -0.018374264
+ - 0.033641897
+ - 0.005416691
+ - -0.0055096243
+ - -0.0032775626
+ - -0.018095464
+ - 0.008563151
+ - -0.02339267
+ - -0.013674489
+ - 0.0023382711
+ - -0.028411074
+ - -0.0024063117
+ - 0.026658615
+ - -0.012413249
+ - 0.009333171
+ - 0.026446195
+ - -0.009107475
+ - -0.024560975
+ - 0.0011085629
+ - -0.02395027
+ - 0.0013857037
+ - 0.01926377
+ - -0.0020710877
+ - -0.031278733
+ - -0.015095043
+ - 0.0041720467
+ - -0.012798259
+ - 0.010162933
+ - 0.0063128346
+ - -0.010972782
+ - 0.045617033
+ - 0.016874054
+ - -0.010368714
+ - -0.0055992384
+ - -0.0092999805
+ - 0.0015782086
+ - -0.013581555
+ - 0.017843217
+ - -0.01615714
+ - 0.0036575939
+ - -0.027110007
+ - -0.013621384
+ - 0.022197811
+ - 0.0013964906
+ - -0.007348378
+ - 0.0145772705
+ - -0.003996137
+ - 0.0008364008
+ - -0.03411984
+ - 0.013030593
+ - -0.021454344
+ - -0.05034336
+ - 0.021095887
+ - -0.0055029863
+ - -0.025623072
+ - -0.023525432
+ - 0.007335102
+ - -0.043413185
+ - 0.016316453
+ - 0.016196968
+ - 0.0093132565
+ - -0.0110989055
+ - 0.0154535
+ - -0.045218747
+ - 0.0037737607
+ - 0.01639611
+ - 0.019887751
+ - -0.023366116
+ - -0.024043202
+ - 0.014258642
+ - 0.004271618
+ - -0.006877073
+ - 0.021387963
+ - -0.0019781543
+ - -0.036350243
+ - -0.009114114
+ - -0.037359234
+ - 0.01919739
+ - 0.011829097
+ - -0.015665919
+ - -0.0015591241
+ - 0.0144843375
+ - -0.003139822
+ - -0.024083031
+ - -0.015307462
+ - -0.0040990277
+ - -0.013223098
+ - 0.0024278855
+ - -0.008702551
+ - -0.0033207103
+ - -0.009804476
+ - -0.010554581
+ - 0.031066315
+ - 0.0044408897
+ - 0.025370823
+ - 0.009406189
+ - 0.025583243
+ - -0.002066109
+ - 0.015267633
+ - 0.008337456
+ - -0.009426104
+ - 0.01590489
+ - -0.011716249
+ - 0.007713474
+ - -0.029552827
+ - -0.013900184
+ - 0.0050150855
+ - -0.01650232
+ - -0.0015757193
+ - 0.008549875
+ - -0.020471904
+ - 0.008397198
+ - -0.013136802
+ - 0.021520725
+ - 0.0060406723
+ - 0.012858002
+ - -0.004723009
+ - -0.029313855
+ - 0.009240237
+ - -0.0212552
+ - -0.028118998
+ - 0.017803388
+ - -0.0314646
+ - 0.012353507
+ - 0.029632485
+ - -1.6128512e-05
+ - 0.016966987
+ - 0.009711542
+ - -0.037253026
+ - -0.015095043
+ - 0.013442155
+ - -0.00905437
+ - -0.000982439
+ - -0.0020495139
+ - 0.008337456
+ - -0.020644495
+ - 0.042085562
+ - -0.000744712
+ - 0.021135716
+ - -0.0072886352
+ - 0.01643594
+ - 0.013767422
+ - -0.0044707614
+ - -0.014763137
+ - 0.018852208
+ - -0.03080079
+ - -0.0049188333
+ - 0.0058846767
+ - 0.008330817
+ - 0.008257798
+ - 0.024202518
+ - 0.02307404
+ - 0.011065715
+ - 0.00036053188
+ - -0.00049412367
+ - 0.036270585
+ - 0.027043626
+ - 0.011902116
+ - -0.027773816
+ - 0.013289479
+ - 0.018374264
+ - -0.0033157317
+ - 0.0016636741
+ - 0.0020677685
+ - -0.012293763
+ - 0.008184779
+ - -0.034252603
+ - 0.010753725
+ - 0.008675998
+ - 0.00968499
+ - -0.003793675
+ - -0.011218391
+ - 0.010375353
+ - -0.0005737809
+ - 0.019781543
+ - 0.020591391
+ - 0.019954132
+ - -0.00053976063
+ - -0.0059444197
+ - -0.022675755
+ - -0.010003619
+ - 0.0038467797
+ - -0.0212552
+ - -0.033482585
+ - -0.015572986
+ - 0.0037737607
+ - 0.01451089
+ - 0.0036376796
+ - 0.007454588
+ - 0.013979842
+ - -0.013402327
+ - 0.014975557
+ - -0.010435095
+ - 0.0151747
+ - -0.030375952
+ - 0.023166973
+ - -0.0024760119
+ - -0.005881358
+ - 0.019914305
+ - -0.008596341
+ - 0.017737007
+ - -0.0036111271
+ - 0.012499545
+ - -0.02647275
+ - 0.0053901384
+ - 0.008556513
+ - 0.019648781
+ - 0.00874238
+ - -0.012439802
+ - -0.028623493
+ - -0.022330573
+ - -0.0029340407
+ - -0.016303178
+ - 0.007474502
+ - -0.016555425
+ - 0.060645696
+ - 0.0023631642
+ - -0.012054792
+ - 0.017604245
+ - 0.013103612
+ - 0.026061187
+ - 0.015533158
+ - 0.025742557
+ - 0.00013753316
+ - -0.013940013
+ - 0.02880936
+ - 0.010109829
+ - -0.0036111271
+ - -0.012419888
+ - -0.045457717
+ - 0.022835068
+ - -0.014139156
+ - 0.007819683
+ - -0.010461648
+ - -0.012008325
+ - 0.008895056
+ - 0.015984548
+ - 0.024043202
+ - -0.00059825886
+ - -0.0036376796
+ - -0.007939169
+ - 0.0242689
+ - -0.022197811
+ - -0.026313433
+ - -0.026724996
+ - 0.010939592
+ - 0.0023449094
+ - -0.012074706
+ - -0.018493751
+ - 0.017697178
+ - -0.0052142288
+ - -0.00360117
+ - 0.0056058764
+ - 0.01070062
+ - 0.0035248317
+ - 0.023671469
+ - 0.030880447
+ - -0.020299314
+ - -0.0145905465
+ - 0.018055636
+ - -0.013727593
+ - -0.023313012
+ - 0.013236375
+ - -0.0020113448
+ usage:
+ prompt_tokens: 4
+ total_tokens: 4
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_speech.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_speech.json
new file mode 100644
index 000000000000..14b9ff3f8021
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_speech.json
@@ -0,0 +1,19 @@
+{
+ "operationId": "GenerateSpeechFromText",
+ "title": "Generates text-to-speech audio from the input text.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "input": "The text to generate audio for",
+ "voice": "alloy"
+ }
+ },
+ "responses": {
+ "200": {
+ "content-type": "application/octet-stream",
+ "body": "RIFF...audio.data.omitted"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_object.json
new file mode 100644
index 000000000000..629ca7bc14e9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_object.json
@@ -0,0 +1,17 @@
+{
+ "operationId": "GetAudioTranscriptionAsResponseObject",
+ "title": "Gets transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "file": "U3dhZ2dlciByb2Nrcw=="
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "text": "A structured object when requesting json or verbose_json"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_text.json
new file mode 100644
index 000000000000..a6c4e9aadfc2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_transcription_text.json
@@ -0,0 +1,16 @@
+{
+ "operationId": "GetAudioTranscriptionAsPlainText",
+ "title": "Gets transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "file": "U3dhZ2dlciByb2Nrcw=="
+ },
+ "responses": {
+ "200": {
+ "type": "string",
+ "body": "plain text when requesting text, srt, or vtt"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_object.json
new file mode 100644
index 000000000000..b0346104e6e9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_object.json
@@ -0,0 +1,17 @@
+{
+ "operationId": "GetAudioTranslationAsResponseObject",
+ "title": "Gets English language transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "file": "U3dhZ2dlciByb2Nrcw=="
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "text": "A structured object when requesting json or verbose_json"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_text.json
new file mode 100644
index 000000000000..15d086f76ee5
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_audio_translation_text.json
@@ -0,0 +1,16 @@
+{
+ "operationId": "GetAudioTranslationAsPlainText",
+ "title": "Gets English language transcribed text and associated metadata from provided spoken audio data.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "file": "U3dhZ2dlciByb2Nrcw=="
+ },
+ "responses": {
+ "200": {
+ "type": "string",
+ "body": "plain text when requesting text, srt, or vtt"
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_chat_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_chat_completions.json
new file mode 100644
index 000000000000..f21e3badcf1f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_chat_completions.json
@@ -0,0 +1,45 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided prompt, parameters and chosen model.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-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!"
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_completions.json
new file mode 100644
index 000000000000..bb02f500ccd4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_completions.json
@@ -0,0 +1,38 @@
+{
+ "operationId": "GetCompletions",
+ "title": "Creates a completion for the provided prompt, parameters and chosen model.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-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/2024-12-01-preview/examples/generated_embeddings.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_embeddings.json
new file mode 100644
index 000000000000..d0740c8068d2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_embeddings.json
@@ -0,0 +1,1567 @@
+{
+ "operationId": "GetEmbeddings",
+ "title": "Return the embeddings for a given prompt.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-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/2024-12-01-preview/examples/generated_extensions_chat_completions_aml_index.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_aml_index.json
new file mode 100644
index 000000000000..151b192a2591
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_aml_index.json
@@ -0,0 +1,62 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided AML index. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_ml_index",
+ "parameters": {
+ "project_resource_id": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-id}",
+ "name": "gm-cars",
+ "version": "5"
+ }
+ }
+ ]
+ }
+ },
+ "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_advanced.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_advanced.json
new file mode 100644
index 000000000000..76867b05e9db
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_advanced.json
@@ -0,0 +1,86 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion based on Azure Cognitive Services vector data and user-assigned managed identity. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_search",
+ "parameters": {
+ "endpoint": "https://your-search-endpoint.search.windows.net/",
+ "authentication": {
+ "type": "user_assigned_managed_identity",
+ "managed_identity_resource_id": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{resource-name}"
+ },
+ "index_name": "{index name}",
+ "query_type": "vector",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "in_scope": true,
+ "top_n_documents": 5,
+ "strictness": 3,
+ "role_information": "You are an AI assistant that helps people find information.",
+ "fields_mapping": {
+ "content_fields_separator": "\\n",
+ "content_fields": [
+ "content"
+ ],
+ "filepath_field": "filepath",
+ "title_field": "title",
+ "url_field": "url",
+ "vector_fields": [
+ "contentvector"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_image_vector.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_image_vector.json
new file mode 100644
index 000000000000..2e16b13718d1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_image_vector.json
@@ -0,0 +1,67 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion based on Azure Cognitive Services image vector data. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_search",
+ "parameters": {
+ "endpoint": "https://your-search-endpoint.search.windows.net/",
+ "index_name": "{index name}",
+ "query_type": "vector",
+ "fields_mapping": {
+ "image_vector_fields": [
+ "image_vector"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_minimum.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_minimum.json
new file mode 100644
index 000000000000..673c52a40431
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_azure_search_minimum.json
@@ -0,0 +1,61 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion based on Azure Cognitive Services data and system-assigned managed identity. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_search",
+ "parameters": {
+ "endpoint": "https://your-search-endpoint.search.windows.net/",
+ "index_name": "{index name}"
+ }
+ }
+ ]
+ }
+ },
+ "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_cosmos_db.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_cosmos_db.json
new file mode 100644
index 000000000000..4cb94685d394
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_cosmos_db.json
@@ -0,0 +1,78 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided Azure Cosmos DB. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "azure_cosmos_db",
+ "parameters": {
+ "authentication": {
+ "type": "connection_string",
+ "connection_string": "mongodb+srv://rawantest:{password}$@{cluster-name}.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
+ },
+ "database_name": "vectordb",
+ "container_name": "azuredocs",
+ "index_name": "azuredocindex",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "fields_mapping": {
+ "content_fields": [
+ "content"
+ ],
+ "vector_fields": [
+ "contentvector"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "chatcmpl-7R1nGnsXO8n4oi9UPz2f3UHdgAYMn",
+ "created": 1686676106,
+ "choices": [
+ {
+ "index": 0,
+ "finish_reason": "stop",
+ "message": {
+ "role": "assistant",
+ "content": "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_elasticsearch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_elasticsearch.json
new file mode 100644
index 000000000000..e20d83528781
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_elasticsearch.json
@@ -0,0 +1,66 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided Elasticsearch. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "elasticsearch",
+ "parameters": {
+ "endpoint": "https://your-elasticsearch-endpoint.eastus.azurecontainer.io",
+ "index_name": "{index name}",
+ "authentication": {
+ "type": "key_and_key_id",
+ "key": "{key}",
+ "key_id": "{key id}"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_pinecone.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_pinecone.json
new file mode 100644
index 000000000000..cc43a1e8bb62
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_extensions_chat_completions_pinecone.json
@@ -0,0 +1,78 @@
+{
+ "operationId": "GetChatCompletions",
+ "title": "Creates a completion for the provided Pinecone resource. Uses Azure OpenAI chat extensions.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "messages": [
+ {
+ "role": "user",
+ "content": "can you tell me how to care for a parrot?"
+ }
+ ],
+ "data_sources": [
+ {
+ "type": "pinecone",
+ "parameters": {
+ "authentication": {
+ "type": "api_key",
+ "key": "{api key}"
+ },
+ "environment": "{environment name}",
+ "index_name": "{index name}",
+ "embedding_dependency": {
+ "type": "deployment_name",
+ "deployment_name": "{embedding deployment name}"
+ },
+ "fields_mapping": {
+ "title_field": "title",
+ "url_field": "url",
+ "filepath_field": "filepath",
+ "content_fields": [
+ "content"
+ ],
+ "content_fields_separator": "\n"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "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!",
+ "context": {
+ "citations": [
+ {
+ "content": "Content of the citation",
+ "url": "https://www.example.com",
+ "title": "Title of the citation",
+ "filepath": "path/to/file",
+ "chunk_id": "chunk-id"
+ }
+ ]
+ }
+ },
+ "logprobs": null
+ }
+ ],
+ "usage": {
+ "completion_tokens": 557,
+ "prompt_tokens": 33,
+ "total_tokens": 590
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_image_generation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_image_generation.json
new file mode 100644
index 000000000000..6d4e47f06f1d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/generated_image_generation.json
@@ -0,0 +1,31 @@
+{
+ "operationId": "GetImageGenerations",
+ "title": "Creates images given a prompt.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deploymentId": "",
+ "body": {
+ "prompt": "In the style of WordArt, Microsoft Clippy wearing a cowboy hat.",
+ "n": 1,
+ "style": "natural",
+ "quality": "standard"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "created": 1698342300,
+ "data": [
+ {
+ "url": "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&..."
+ },
+ {
+ "url": "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_01.png?se=2023-10-27T17%3A45%3A09Z&...",
+ "revised_prompt": "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat."
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.json
new file mode 100644
index 000000000000..ec79d4048792
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.json
@@ -0,0 +1,19 @@
+{
+ "title": "Retrieves an AssistantFile.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "assistant_id": "asst_diz3BOIsXHMnqNnoMCyO9jlA",
+ "file_id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX",
+ "object": "assistant.file",
+ "created_at": 1707324164,
+ "assistant_id": "asst_diz3BOIsXHMnqNnoMCyO9jlA"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.yaml
new file mode 100644
index 000000000000..613581f70b15
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_assistant_file.yaml
@@ -0,0 +1,13 @@
+title: Retrieves an AssistantFile.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ assistant_id: asst_diz3BOIsXHMnqNnoMCyO9jlA
+ file_id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+responses:
+ "200":
+ body:
+ id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+ object: assistant.file
+ created_at: 1707324164
+ assistant_id: asst_diz3BOIsXHMnqNnoMCyO9jlA
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.json
new file mode 100644
index 000000000000..637153e98ced
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.json
@@ -0,0 +1,33 @@
+{
+ "title": "Retrieve a message.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "message_id": "msg_as3XIk1tpVP3hdHjWBGg3uG4"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "msg_as3XIk1tpVP3hdHjWBGg3uG4",
+ "object": "thread.message",
+ "created_at": 1707298421,
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "role": "user",
+ "content": [
+ {
+ "type": "text",
+ "text": {
+ "value": "What is the cube root of the sum of 12, 14, 1234, 4321, 90000, 123213541223, 443123123124, 5423324234, 234324324234, 653434534545, 200000000, 98237432984, 99999999, 99999999999, 220000000000, 3309587702? Give me the answer rounded to the nearest integer without commas or spaces.",
+ "annotations": []
+ }
+ }
+ ],
+ "file_ids": [],
+ "assistant_id": null,
+ "run_id": null,
+ "metadata": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.yaml
new file mode 100644
index 000000000000..2e11da0fc395
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message.yaml
@@ -0,0 +1,23 @@
+title: Retrieve a message.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+ message_id: msg_as3XIk1tpVP3hdHjWBGg3uG4
+responses:
+ "200":
+ body:
+ id: msg_as3XIk1tpVP3hdHjWBGg3uG4
+ object: thread.message
+ created_at: 1707298421
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+ role: user
+ content:
+ - type: text
+ text:
+ value: What is the cube root of the sum of 12, 14, 1234, 4321, 90000, 123213541223, 443123123124, 5423324234, 234324324234, 653434534545, 200000000, 98237432984, 99999999, 99999999999, 220000000000, 3309587702? Give me the answer rounded to the nearest integer without commas or spaces.
+ annotations: []
+ file_ids: []
+ assistant_id: null
+ run_id: null
+ metadata: {}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.json
new file mode 100644
index 000000000000..b0ed9c81860c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.json
@@ -0,0 +1,20 @@
+{
+ "title": "Retrieves a message file.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "message_id": "msg_abc123",
+ "file_id": "file_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "file-abc123",
+ "object": "thread.message.file",
+ "created_at": 1699061776,
+ "message_id": "msg_abc123"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.yaml
new file mode 100644
index 000000000000..337d7a5b2cc9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_message_file.yaml
@@ -0,0 +1,14 @@
+title: Retrieves a message file.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ message_id: msg_abc123
+ file_id: file_abc123
+responses:
+ "200":
+ body:
+ id: file-abc123
+ object: thread.message.file
+ created_at: 1699061776
+ message_id: msg_abc123
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.json
new file mode 100644
index 000000000000..f1ea386ff1b9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.json
@@ -0,0 +1,32 @@
+{
+ "title": "Gets a run.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_eRNwflE3ncDYak1np6MdMHJh",
+ "run_id": "run_HsO8tYM4K5AAMAHgK0J3om8Q"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_HsO8tYM4K5AAMAHgK0J3om8Q",
+ "object": "thread.run",
+ "created_at": 1707303196,
+ "assistant_id": "asst_JtTwHk28cIocgFXZPCBxhOzl",
+ "thread_id": "thread_eRNwflE3ncDYak1np6MdMHJh",
+ "status": "completed",
+ "started_at": 1707303197,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1707303201,
+ "last_error": null,
+ "model": "gpt-4-1106-preview",
+ "instructions": "You are an AI model that empowers every person and every organization on the planet to achieve more.",
+ "tools": [],
+ "file_ids": [],
+ "metadata": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.yaml
new file mode 100644
index 000000000000..47306e096c4e
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run.yaml
@@ -0,0 +1,26 @@
+title: Gets a run.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_eRNwflE3ncDYak1np6MdMHJh
+ run_id: run_HsO8tYM4K5AAMAHgK0J3om8Q
+responses:
+ "200":
+ body:
+ id: run_HsO8tYM4K5AAMAHgK0J3om8Q
+ object: thread.run
+ created_at: 1707303196
+ assistant_id: asst_JtTwHk28cIocgFXZPCBxhOzl
+ thread_id: thread_eRNwflE3ncDYak1np6MdMHJh
+ status: completed
+ started_at: 1707303197
+ expires_at: null
+ cancelled_at: null
+ failed_at: null
+ completed_at: 1707303201
+ last_error: null
+ model: gpt-4-1106-preview
+ instructions: You are an AI model that empowers every person and every organization on the planet to achieve more.
+ tools: []
+ file_ids: []
+ metadata: {}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.json
new file mode 100644
index 000000000000..34ec39a15235
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.json
@@ -0,0 +1,40 @@
+{
+ "title": "Retrieves a run step.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_eRNwflE3ncDYak1np6MdMHJh",
+ "run_id": "run_HsO8tYM4K5AAMAHgK0J3om8Q",
+ "step_id": "step_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "step_abc123",
+ "object": "thread.run.step",
+ "created_at": 1699063291,
+ "run_id": "run_abc123",
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "type": "message_creation",
+ "status": "completed",
+ "cancelled_at": null,
+ "completed_at": 1699063291,
+ "expired_at": null,
+ "failed_at": null,
+ "last_error": null,
+ "step_details": {
+ "type": "message_creation",
+ "message_creation": {
+ "message_id": "msg_abc123"
+ }
+ },
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.yaml
new file mode 100644
index 000000000000..e156a936a0ed
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/get_run_step.yaml
@@ -0,0 +1,31 @@
+title: Retrieves a run step.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_eRNwflE3ncDYak1np6MdMHJh
+ run_id: run_HsO8tYM4K5AAMAHgK0J3om8Q
+ step_id: step_abc123
+responses:
+ "200":
+ body:
+ id: step_abc123
+ object: thread.run.step
+ created_at: 1699063291
+ run_id: run_abc123
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ type: message_creation
+ status: completed
+ cancelled_at: null
+ completed_at: 1699063291
+ expired_at: null
+ failed_at: null
+ last_error: null
+ step_details:
+ type: message_creation
+ message_creation:
+ message_id: msg_abc123
+ usage:
+ prompt_tokens: 123
+ completion_tokens: 456
+ total_tokens: 579
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.json
new file mode 100644
index 000000000000..d3e4be3d9831
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.json
@@ -0,0 +1,71 @@
+{
+ "title": "Creates images given a prompt.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "deployment-id": "",
+ "body": {
+ "prompt": "In the style of WordArt, Microsoft Clippy wearing a cowboy hat.",
+ "n": 1,
+ "style": "natural",
+ "quality": "standard"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "created": 1698342300,
+ "data": [
+ {
+ "revised_prompt": "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat.",
+ "prompt_filter_results": {
+ "sexual": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "violence": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "hate": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "self_harm": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "profanity": {
+ "detected": false,
+ "filtered": false
+ },
+ "custom_blocklists": {
+ "filtered": false,
+ "details": []
+ }
+ },
+ "url": "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&...",
+ "content_filter_results": {
+ "sexual": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "violence": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "hate": {
+ "severity": "safe",
+ "filtered": false
+ },
+ "self_harm": {
+ "severity": "safe",
+ "filtered": false
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.yaml
new file mode 100644
index 000000000000..4e069622e706
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/image_generation.yaml
@@ -0,0 +1,49 @@
+title: "Creates images given a prompt."
+parameters:
+ endpoint: "{endpoint}"
+ api-version: "2024-12-01-preview"
+ deployment-id: ""
+ body:
+ prompt: "In the style of WordArt, Microsoft Clippy wearing a cowboy hat."
+ n: 1
+ style: "natural"
+ quality: "standard"
+responses:
+ "200":
+ body:
+ created: 1698342300
+ data:
+ - revised_prompt: "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat."
+ prompt_filter_results:
+ sexual:
+ severity: "safe"
+ filtered: false
+ violence:
+ severity: "safe"
+ filtered: false
+ hate:
+ severity: "safe"
+ filtered: false
+ self_harm:
+ severity: "safe"
+ filtered: false
+ profanity:
+ detected: false
+ filtered: false
+ custom_blocklists:
+ filtered: false
+ details: []
+ url: "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&..."
+ content_filter_results:
+ sexual:
+ severity: "safe"
+ filtered: false
+ violence:
+ severity: "safe"
+ filtered: false
+ hate:
+ severity: "safe"
+ filtered: false
+ self_harm:
+ severity: "safe"
+ filtered: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.json
new file mode 100644
index 000000000000..ba69201e35ac
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.json
@@ -0,0 +1,26 @@
+{
+ "title": "Returns a list of assistant files.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "assistant_id": "asst_diz3BOIsXHMnqNnoMCyO9jlA"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX",
+ "object": "assistant.file",
+ "created_at": 1707324164,
+ "assistant_id": "asst_diz3BOIsXHMnqNnoMCyO9jlA"
+ }
+ ],
+ "first_id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX",
+ "last_id": "assistant-Vau3gDQ1MfiBJk4flihOxwZX",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.yaml
new file mode 100644
index 000000000000..ea1b7c548d68
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistant_files.yaml
@@ -0,0 +1,17 @@
+title: Returns a list of assistant files.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ assistant_id: asst_diz3BOIsXHMnqNnoMCyO9jlA
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+ object: assistant.file
+ created_at: 1707324164
+ assistant_id: asst_diz3BOIsXHMnqNnoMCyO9jlA
+ first_id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+ last_id: assistant-Vau3gDQ1MfiBJk4flihOxwZX
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.json
new file mode 100644
index 000000000000..7d4abe681ac0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.json
@@ -0,0 +1,70 @@
+{
+ "title": "Returns a list of assistants.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "order": "desc",
+ "limit": 20
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "asst_abc123",
+ "object": "assistant",
+ "created_at": 1707257477,
+ "name": "Stock Analyst",
+ "description": null,
+ "model": "gpt-4-1106-preview",
+ "instructions": "You are a financial analyst that analyzes stock market prices and other financial data present on user uploaded files or by calling external APIs.",
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "tool_resources": {},
+ "metadata": {},
+ "top_p": 1.0,
+ "temperature": 1.0,
+ "response_format": "auto"
+ },
+ {
+ "id": "asst_abc456",
+ "object": "assistant",
+ "created_at": 1698982718,
+ "name": "My Assistant",
+ "description": null,
+ "model": "gpt-4-turbo",
+ "instructions": "You are a helpful assistant designed to make me better at coding!",
+ "tools": [],
+ "tool_resources": {},
+ "metadata": {},
+ "top_p": 1.0,
+ "temperature": 1.0,
+ "response_format": "auto"
+ },
+ {
+ "id": "asst_abc789",
+ "object": "assistant",
+ "created_at": 1698982643,
+ "name": null,
+ "description": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "tools": [],
+ "tool_resources": {},
+ "metadata": {},
+ "top_p": 1.0,
+ "temperature": 1.0,
+ "response_format": "auto"
+ }
+ ],
+ "first_id": "asst_abc123",
+ "last_id": "asst_abc789",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.yaml
new file mode 100644
index 000000000000..34f002fc2d55
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_assistants.yaml
@@ -0,0 +1,54 @@
+title: Returns a list of assistants.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ order: desc
+ limit: 20
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: asst_abc123
+ object: assistant
+ created_at: 1707257477
+ name: Stock Analyst
+ description: null
+ model: gpt-4-1106-preview
+ instructions: You are a financial analyst that analyzes stock market prices and other financial data present on user uploaded files or by calling external APIs.
+ tools:
+ - type: code_interpreter
+ tool_resources: {}
+ metadata: {}
+ top_p: 1
+ temperature: 1
+ response_format: auto
+ - id: asst_abc456
+ object: assistant
+ created_at: 1698982718
+ name: My Assistant
+ description: null
+ model: gpt-4-turbo
+ instructions: You are a helpful assistant designed to make me better at coding!
+ tools: []
+ tool_resources: {}
+ metadata: {}
+ top_p: 1
+ temperature: 1
+ response_format: auto
+ - id: asst_abc789
+ object: assistant
+ created_at: 1698982643
+ name: null
+ description: null
+ model: gpt-4-turbo
+ instructions: null
+ tools: []
+ tool_resources: {}
+ metadata: {}
+ top_p: 1
+ temperature: 1
+ response_format: auto
+ first_id: asst_abc123
+ last_id: asst_abc789
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.json
new file mode 100644
index 000000000000..38866c4f157b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.json
@@ -0,0 +1,33 @@
+{
+ "title": "Returns a list of message files.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "message_id": "msg_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "file-abc123",
+ "object": "thread.message.file",
+ "created_at": 1699061776,
+ "message_id": "msg_abc123"
+ },
+ {
+ "id": "file-abc123",
+ "object": "thread.message.file",
+ "created_at": 1699061776,
+ "message_id": "msg_abc123"
+ }
+ ],
+ "first_id": "file-abc123",
+ "last_id": "file-abc123",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.yaml
new file mode 100644
index 000000000000..382a6253eac7
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_message_files.yaml
@@ -0,0 +1,22 @@
+title: Returns a list of message files.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ message_id: msg_abc123
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: file-abc123
+ object: thread.message.file
+ created_at: 1699061776
+ message_id: msg_abc123
+ - id: file-abc123
+ object: thread.message.file
+ created_at: 1699061776
+ message_id: msg_abc123
+ first_id: file-abc123
+ last_id: file-abc123
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.json
new file mode 100644
index 000000000000..8ff82d560c98
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.json
@@ -0,0 +1,60 @@
+{
+ "title": "List Messages",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "msg_abc123",
+ "object": "thread.message",
+ "created_at": 1699016383,
+ "assistant_id": null,
+ "thread_id": "thread_abc123",
+ "run_id": null,
+ "role": "user",
+ "content": [
+ {
+ "type": "text",
+ "text": {
+ "value": "How does AI work? Explain it in simple terms.",
+ "annotations": []
+ }
+ }
+ ],
+ "attachments": [],
+ "metadata": {}
+ },
+ {
+ "id": "msg_abc456",
+ "object": "thread.message",
+ "created_at": 1699016383,
+ "assistant_id": null,
+ "thread_id": "thread_abc123",
+ "run_id": null,
+ "role": "user",
+ "content": [
+ {
+ "type": "text",
+ "text": {
+ "value": "Hello, what is AI?",
+ "annotations": []
+ }
+ }
+ ],
+ "attachments": [],
+ "metadata": {}
+ }
+ ],
+ "first_id": "msg_abc123",
+ "last_id": "msg_abc456",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.yaml
new file mode 100644
index 000000000000..8a28e2feaee3
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_messages.yaml
@@ -0,0 +1,41 @@
+title: List Messages
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: msg_abc123
+ object: thread.message
+ created_at: 1699016383
+ assistant_id: null
+ thread_id: thread_abc123
+ run_id: null
+ role: user
+ content:
+ - type: text
+ text:
+ value: How does AI work? Explain it in simple terms.
+ annotations: []
+ attachments: []
+ metadata: {}
+ - id: msg_abc456
+ object: thread.message
+ created_at: 1699016383
+ assistant_id: null
+ thread_id: thread_abc123
+ run_id: null
+ role: user
+ content:
+ - type: text
+ text:
+ value: Hello, what is AI?
+ annotations: []
+ attachments: []
+ metadata: {}
+ first_id: msg_abc123
+ last_id: msg_abc456
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.json
new file mode 100644
index 000000000000..9ff30947afd1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.json
@@ -0,0 +1,47 @@
+{
+ "title": "Returns a list of run steps belonging to a run.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "run_id": "run_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "step_abc123",
+ "object": "thread.run.step",
+ "created_at": 1699063291,
+ "run_id": "run_abc123",
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "type": "message_creation",
+ "status": "completed",
+ "cancelled_at": null,
+ "completed_at": 1699063291,
+ "expired_at": null,
+ "failed_at": null,
+ "last_error": null,
+ "step_details": {
+ "type": "message_creation",
+ "message_creation": {
+ "message_id": "msg_abc123"
+ }
+ },
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ }
+ }
+ ],
+ "first_id": "step_abc123",
+ "last_id": "step_abc456",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.yaml
new file mode 100644
index 000000000000..35b28411b4d1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_run_steps.yaml
@@ -0,0 +1,35 @@
+title: Returns a list of run steps belonging to a run.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ run_id: run_abc123
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: step_abc123
+ object: thread.run.step
+ created_at: 1699063291
+ run_id: run_abc123
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ type: message_creation
+ status: completed
+ cancelled_at: null
+ completed_at: 1699063291
+ expired_at: null
+ failed_at: null
+ last_error: null
+ step_details:
+ type: message_creation
+ message_creation:
+ message_id: msg_abc123
+ usage:
+ prompt_tokens: 123
+ completion_tokens: 456
+ total_tokens: 579
+ first_id: step_abc123
+ last_id: step_abc456
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.json
new file mode 100644
index 000000000000..244056bf4d15
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.json
@@ -0,0 +1,112 @@
+{
+ "title": "Returns a list of runs belonging to a thread.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699075072,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "completed",
+ "started_at": 1699075072,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1699075073,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "incomplete_details": null,
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "tool_resources": {
+ "code_interpreter": {
+ "file_ids": [
+ "file-abc123",
+ "file-abc456"
+ ]
+ }
+ },
+ "metadata": {},
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ },
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "response_format": "auto",
+ "tool_choice": "auto"
+ },
+ {
+ "id": "run_abc456",
+ "object": "thread.run",
+ "created_at": 1699063290,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "completed",
+ "started_at": 1699063290,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1699063291,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "incomplete_details": null,
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "tool_resources": {
+ "code_interpreter": {
+ "file_ids": [
+ "file-abc123",
+ "file-abc456"
+ ]
+ }
+ },
+ "metadata": {},
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ },
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "response_format": "auto",
+ "tool_choice": "auto"
+ }
+ ],
+ "first_id": "run_abc123",
+ "last_id": "run_abc456",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.yaml
new file mode 100644
index 000000000000..10be1bfa1c16
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_runs.yaml
@@ -0,0 +1,85 @@
+title: Returns a list of runs belonging to a thread.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: run_abc123
+ object: thread.run
+ created_at: 1699075072
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ status: completed
+ started_at: 1699075072
+ expires_at: null
+ cancelled_at: null
+ failed_at: null
+ completed_at: 1699075073
+ last_error: null
+ model: gpt-4-turbo
+ instructions: null
+ incomplete_details: null
+ tools:
+ - type: code_interpreter
+ tool_resources:
+ code_interpreter:
+ file_ids:
+ - file-abc123
+ - file-abc456
+ metadata: {}
+ usage:
+ prompt_tokens: 123
+ completion_tokens: 456
+ total_tokens: 579
+ temperature: 1
+ top_p: 1
+ max_prompt_tokens: 1000
+ max_completion_tokens: 1000
+ truncation_strategy:
+ type: auto
+ last_messages: null
+ response_format: auto
+ tool_choice: auto
+ - id: run_abc456
+ object: thread.run
+ created_at: 1699063290
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ status: completed
+ started_at: 1699063290
+ expires_at: null
+ cancelled_at: null
+ failed_at: null
+ completed_at: 1699063291
+ last_error: null
+ model: gpt-4-turbo
+ instructions: null
+ incomplete_details: null
+ tools:
+ - type: code_interpreter
+ tool_resources:
+ code_interpreter:
+ file_ids:
+ - file-abc123
+ - file-abc456
+ metadata: {}
+ usage:
+ prompt_tokens: 123
+ completion_tokens: 456
+ total_tokens: 579
+ temperature: 1
+ top_p: 1
+ max_prompt_tokens: 1000
+ max_completion_tokens: 1000
+ truncation_strategy:
+ type: auto
+ last_messages: null
+ response_format: auto
+ tool_choice: auto
+ first_id: run_abc123
+ last_id: run_abc456
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.json
new file mode 100644
index 000000000000..513d2fe40498
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.json
@@ -0,0 +1,33 @@
+{
+ "title": "Returns a list of vector store files in a batch.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "batch_id": "vsfb_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "file-abc123",
+ "object": "vector_store.file",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123"
+ },
+ {
+ "id": "file-abc456",
+ "object": "vector_store.file",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123"
+ }
+ ],
+ "first_id": "file-abc123",
+ "last_id": "file-abc456",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.yaml
new file mode 100644
index 000000000000..ff50bb2b3f9c
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_file_batch.yaml
@@ -0,0 +1,22 @@
+title: Returns a list of vector store files in a batch.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ batch_id: vsfb_abc123
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: file-abc123
+ object: vector_store.file
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ - id: file-abc456
+ object: vector_store.file
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ first_id: file-abc123
+ last_id: file-abc456
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.json
new file mode 100644
index 000000000000..d5fe698359a0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.json
@@ -0,0 +1,32 @@
+{
+ "title": "Returns a list of vector store files.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "file-abc123",
+ "object": "vector_store.file",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123"
+ },
+ {
+ "id": "file-abc456",
+ "object": "vector_store.file",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123"
+ }
+ ],
+ "first_id": "file-abc123",
+ "last_id": "file-abc456",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.yaml
new file mode 100644
index 000000000000..c7b40679f127
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_store_files.yaml
@@ -0,0 +1,21 @@
+title: Returns a list of vector store files.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+responses:
+ "200":
+ body:
+ object: list
+ data:
+ - id: file-abc123
+ object: vector_store.file
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ - id: file-abc456
+ object: vector_store.file
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ first_id: file-abc123
+ last_id: file-abc456
+ has_more: false
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.json
new file mode 100644
index 000000000000..988d6b4335f2
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.json
@@ -0,0 +1,47 @@
+{
+ "title": "Returns a list of vector stores.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "object": "list",
+ "data": [
+ {
+ "id": "vs_abc123",
+ "object": "vector_store",
+ "created_at": 1699061776,
+ "name": "Support FAQ",
+ "bytes": 139920,
+ "file_counts": {
+ "in_progress": 0,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 3
+ }
+ },
+ {
+ "id": "vs_abc456",
+ "object": "vector_store",
+ "created_at": 1699061776,
+ "name": "Support FAQ v2",
+ "bytes": 139920,
+ "file_counts": {
+ "in_progress": 0,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 3
+ }
+ }
+ ],
+ "first_id": "vs_abc123",
+ "last_id": "vs_abc456",
+ "has_more": false
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.yaml
new file mode 100644
index 000000000000..918164bdb312
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/list_vector_stores.yaml
@@ -0,0 +1,51 @@
+{
+ "title": "Returns a list of vector stores.",
+ "parameters":
+ { "endpoint": "{endpoint}", "api-version": "2024-12-01-preview" },
+ "responses":
+ {
+ "200":
+ {
+ "body":
+ {
+ "object": "list",
+ "data":
+ [
+ {
+ "id": "vs_abc123",
+ "object": "vector_store",
+ "created_at": 1699061776,
+ "name": "Support FAQ",
+ "bytes": 139920,
+ "file_counts":
+ {
+ "in_progress": 0,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 3,
+ },
+ },
+ {
+ "id": "vs_abc456",
+ "object": "vector_store",
+ "created_at": 1699061776,
+ "name": "Support FAQ v2",
+ "bytes": 139920,
+ "file_counts":
+ {
+ "in_progress": 0,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 3,
+ },
+ },
+ ],
+ "first_id": "vs_abc123",
+ "last_id": "vs_abc456",
+ "has_more": false,
+ },
+ },
+ },
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.json
new file mode 100644
index 000000000000..502a99ad5f5d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.json
@@ -0,0 +1,44 @@
+{
+ "title": "Modifies an assistant.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "assistant_id": "asst_abc123",
+ "body": {
+ "instructions": "You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.",
+ "tools": [
+ {
+ "type": "file_search"
+ }
+ ],
+ "model": "gpt-4-turbo"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "asst_123",
+ "object": "assistant",
+ "created_at": 1699009709,
+ "name": "HR Helper",
+ "description": null,
+ "model": "gpt-4-turbo",
+ "instructions": "You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.",
+ "tools": [
+ {
+ "type": "file_search"
+ }
+ ],
+ "tool_resources": {
+ "file_search": {
+ "vector_store_ids": []
+ }
+ },
+ "metadata": {},
+ "top_p": 1.0,
+ "temperature": 1.0,
+ "response_format": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.yaml
new file mode 100644
index 000000000000..9d431a661b4b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_assistant.yaml
@@ -0,0 +1,29 @@
+title: Modifies an assistant.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ assistant_id: asst_abc123
+ body:
+ instructions: You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.
+ tools:
+ - type: file_search
+ model: gpt-4-turbo
+responses:
+ "200":
+ body:
+ id: asst_123
+ object: assistant
+ created_at: 1699009709
+ name: HR Helper
+ description: null
+ model: gpt-4-turbo
+ instructions: You are an HR bot, and you have access to files to answer employee questions about company policies. Always response with info from either of the files.
+ tools:
+ - type: file_search
+ tool_resources:
+ file_search:
+ vector_store_ids: []
+ metadata: {}
+ top_p: 1
+ temperature: 1
+ response_format: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.json
new file mode 100644
index 000000000000..d7f2511845c9
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.json
@@ -0,0 +1,42 @@
+{
+ "title": "Modify a message.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "message_id": "msg_abc123 ",
+ "body": {
+ "metadata": {
+ "modified": "true",
+ "user": "abc123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "msg_abc123",
+ "object": "thread.message",
+ "created_at": 1699017614,
+ "assistant_id": null,
+ "thread_id": "thread_abc123",
+ "run_id": null,
+ "role": "user",
+ "content": [
+ {
+ "type": "text",
+ "text": {
+ "value": "How does AI work? Explain it in simple terms.",
+ "annotations": []
+ }
+ }
+ ],
+ "file_ids": [],
+ "metadata": {
+ "modified": "true",
+ "user": "abc123"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.yaml
new file mode 100644
index 000000000000..9023f1ce965f
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_message.yaml
@@ -0,0 +1,29 @@
+title: Modify a message.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ message_id: "msg_abc123 "
+ body:
+ metadata:
+ modified: "true"
+ user: abc123
+responses:
+ "200":
+ body:
+ id: msg_abc123
+ object: thread.message
+ created_at: 1699017614
+ assistant_id: null
+ thread_id: thread_abc123
+ run_id: null
+ role: user
+ content:
+ - type: text
+ text:
+ value: How does AI work? Explain it in simple terms.
+ annotations: []
+ file_ids: []
+ metadata:
+ modified: "true"
+ user: abc123
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.json
new file mode 100644
index 000000000000..018f0f6259de
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.json
@@ -0,0 +1,66 @@
+{
+ "title": "Modifies a run.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "run_id": "run_abc123",
+ "body": {
+ "metadata": {
+ "user_id": "user_abc123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699075072,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "completed",
+ "started_at": 1699075072,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1699075073,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "incomplete_details": null,
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "tool_resources": {
+ "code_interpreter": {
+ "file_ids": [
+ "file-abc123",
+ "file-abc456"
+ ]
+ }
+ },
+ "metadata": {
+ "user_id": "user_abc123"
+ },
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ },
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "response_format": "auto",
+ "tool_choice": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.yaml
new file mode 100644
index 000000000000..d9e48767c2ff
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_run.yaml
@@ -0,0 +1,55 @@
+{
+ "title": "Modifies a run.",
+ "parameters":
+ {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "run_id": "run_abc123",
+ "body": { "metadata": { "user_id": "user_abc123" } },
+ },
+ "responses":
+ {
+ "200":
+ {
+ "body":
+ {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699075072,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "completed",
+ "started_at": 1699075072,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1699075073,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "incomplete_details": null,
+ "tools": [{ "type": "code_interpreter" }],
+ "tool_resources":
+ {
+ "code_interpreter":
+ { "file_ids": ["file-abc123", "file-abc456"] },
+ },
+ "metadata": { "user_id": "user_abc123" },
+ "usage":
+ {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579,
+ },
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": { "type": "auto", "last_messages": null },
+ "response_format": "auto",
+ "tool_choice": "auto",
+ },
+ },
+ },
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.json
new file mode 100644
index 000000000000..7af0b9930ce0
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.json
@@ -0,0 +1,28 @@
+{
+ "title": "Modifies a thread.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "body": {
+ "metadata": {
+ "modified": "true",
+ "user": "abc123"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "object": "thread",
+ "created_at": 1707297136,
+ "metadata": {
+ "modified": "true",
+ "user": "abc123"
+ },
+ "tool_resources": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.yaml
new file mode 100644
index 000000000000..597f57bcf3b4
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_thread.yaml
@@ -0,0 +1,19 @@
+title: Modifies a thread.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+ body:
+ metadata:
+ modified: "true"
+ user: abc123
+responses:
+ "200":
+ body:
+ id: thread_v7V4csrNOxtNmgcwGg496Smx
+ object: thread
+ created_at: 1707297136
+ metadata:
+ modified: "true"
+ user: abc123
+ tool_resources: {}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.json
new file mode 100644
index 000000000000..e5a93e54a736
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.json
@@ -0,0 +1,29 @@
+{
+ "title": "Modifies a vector store.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "body": {
+ "name": "Support FAQ"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "vs_abc123",
+ "object": "vector_store",
+ "created_at": 1699061776,
+ "name": "Support FAQ",
+ "bytes": 139920,
+ "file_counts": {
+ "in_progress": 0,
+ "completed": 3,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 3
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.yaml
new file mode 100644
index 000000000000..00ef0c379f7d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/modify_vector_store.yaml
@@ -0,0 +1,21 @@
+title: Modifies a vector store.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ body:
+ name: Support FAQ
+responses:
+ "200":
+ body:
+ id: vs_abc123
+ object: vector_store
+ created_at: 1699061776
+ name: Support FAQ
+ bytes: 139920
+ file_counts:
+ in_progress: 0
+ completed: 3
+ failed: 0
+ cancelled: 0
+ total: 3
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.json
new file mode 100644
index 000000000000..7ce017b9706d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.json
@@ -0,0 +1,30 @@
+{
+ "title": "Retrieves an assistant.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "assistant_id": "asst_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "asst_abc123",
+ "object": "assistant",
+ "created_at": 1699009709,
+ "name": "HR Helper",
+ "description": null,
+ "model": "gpt-4-turbo",
+ "instructions": "You are an HR bot, and you have access to files to answer employee questions about company policies.",
+ "tools": [
+ {
+ "type": "file_search"
+ }
+ ],
+ "metadata": {},
+ "top_p": 1.0,
+ "temperature": 1.0,
+ "response_format": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.yaml
new file mode 100644
index 000000000000..34a809f5e508
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_assistant.yaml
@@ -0,0 +1,21 @@
+title: Retrieves an assistant.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ assistant_id: asst_abc123
+responses:
+ "200":
+ body:
+ id: asst_abc123
+ object: assistant
+ created_at: 1699009709
+ name: HR Helper
+ description: null
+ model: gpt-4-turbo
+ instructions: You are an HR bot, and you have access to files to answer employee questions about company policies.
+ tools:
+ - type: file_search
+ metadata: {}
+ top_p: 1
+ temperature: 1
+ response_format: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.json
new file mode 100644
index 000000000000..2a09844600dd
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.json
@@ -0,0 +1,33 @@
+{
+ "title": "Retrieves a message.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "message_id": "msg_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "msg_abc123",
+ "object": "thread.message",
+ "created_at": 1699017614,
+ "assistant_id": null,
+ "thread_id": "thread_abc123",
+ "run_id": null,
+ "role": "user",
+ "content": [
+ {
+ "type": "text",
+ "text": {
+ "value": "How does AI work? Explain it in simple terms.",
+ "annotations": []
+ }
+ }
+ ],
+ "attachments": [],
+ "metadata": {}
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.yaml
new file mode 100644
index 000000000000..1b8d71f94cea
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_message.yaml
@@ -0,0 +1,23 @@
+title: Retrieves a message.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ message_id: msg_abc123
+responses:
+ "200":
+ body:
+ id: msg_abc123
+ object: thread.message
+ created_at: 1699017614
+ assistant_id: null
+ thread_id: thread_abc123
+ run_id: null
+ role: user
+ content:
+ - type: text
+ text:
+ value: How does AI work? Explain it in simple terms.
+ annotations: []
+ attachments: []
+ metadata: {}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.json
new file mode 100644
index 000000000000..c23afa761b47
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.json
@@ -0,0 +1,51 @@
+{
+ "title": "Retrieves a run.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "run_id": "run_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_abc123",
+ "object": "thread.run",
+ "created_at": 1699075072,
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "status": "completed",
+ "started_at": 1699075072,
+ "expires_at": null,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": 1699075073,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "incomplete_details": null,
+ "tools": [
+ {
+ "type": "code_interpreter"
+ }
+ ],
+ "metadata": {},
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ },
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "response_format": "auto",
+ "tool_choice": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.yaml
new file mode 100644
index 000000000000..21d68339d080
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run.yaml
@@ -0,0 +1,40 @@
+title: Retrieves a run.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ run_id: run_abc123
+responses:
+ "200":
+ body:
+ id: run_abc123
+ object: thread.run
+ created_at: 1699075072
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ status: completed
+ started_at: 1699075072
+ expires_at: null
+ cancelled_at: null
+ failed_at: null
+ completed_at: 1699075073
+ last_error: null
+ model: gpt-4-turbo
+ instructions: null
+ incomplete_details: null
+ tools:
+ - type: code_interpreter
+ metadata: {}
+ usage:
+ prompt_tokens: 123
+ completion_tokens: 456
+ total_tokens: 579
+ temperature: 1
+ top_p: 1
+ max_prompt_tokens: 1000
+ max_completion_tokens: 1000
+ truncation_strategy:
+ type: auto
+ last_messages: null
+ response_format: auto
+ tool_choice: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.json
new file mode 100644
index 000000000000..b81cfa123327
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.json
@@ -0,0 +1,40 @@
+{
+ "title": "Retrieves a run step.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_abc123",
+ "run_id": "run_abc123",
+ "step_id": "step_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "step_abc123",
+ "object": "thread.run.step",
+ "created_at": 1699063291,
+ "run_id": "run_abc123",
+ "assistant_id": "asst_abc123",
+ "thread_id": "thread_abc123",
+ "type": "message_creation",
+ "status": "completed",
+ "cancelled_at": null,
+ "completed_at": 1699063291,
+ "expired_at": null,
+ "failed_at": null,
+ "last_error": null,
+ "step_details": {
+ "type": "message_creation",
+ "message_creation": {
+ "message_id": "msg_abc123"
+ }
+ },
+ "usage": {
+ "prompt_tokens": 123,
+ "completion_tokens": 456,
+ "total_tokens": 579
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.yaml
new file mode 100644
index 000000000000..240b8fdaaa49
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_run_step.yaml
@@ -0,0 +1,31 @@
+title: Retrieves a run step.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_abc123
+ run_id: run_abc123
+ step_id: step_abc123
+responses:
+ "200":
+ body:
+ id: step_abc123
+ object: thread.run.step
+ created_at: 1699063291
+ run_id: run_abc123
+ assistant_id: asst_abc123
+ thread_id: thread_abc123
+ type: message_creation
+ status: completed
+ cancelled_at: null
+ completed_at: 1699063291
+ expired_at: null
+ failed_at: null
+ last_error: null
+ step_details:
+ type: message_creation
+ message_creation:
+ message_id: msg_abc123
+ usage:
+ prompt_tokens: 123
+ completion_tokens: 456
+ total_tokens: 579
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.json
new file mode 100644
index 000000000000..2e9e9d423576
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.json
@@ -0,0 +1,23 @@
+{
+ "title": "Retrieves a thread.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_v7V4csrNOxtNmgcwGg496Smx"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "thread_v7V4csrNOxtNmgcwGg496Smx",
+ "object": "thread",
+ "created_at": 1707297136,
+ "metadata": {},
+ "tool_resources": {
+ "code_interpreter": {
+ "file_ids": []
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.yaml
new file mode 100644
index 000000000000..015fc3268412
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_thread.yaml
@@ -0,0 +1,15 @@
+title: Retrieves a thread.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_v7V4csrNOxtNmgcwGg496Smx
+responses:
+ "200":
+ body:
+ id: thread_v7V4csrNOxtNmgcwGg496Smx
+ object: thread
+ created_at: 1707297136
+ metadata: {}
+ tool_resources:
+ code_interpreter:
+ file_ids: []
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.json
new file mode 100644
index 000000000000..088c4a801241
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.json
@@ -0,0 +1,17 @@
+{
+ "title": "Retrieves a vector store.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "vs_abc123",
+ "object": "vector_store",
+ "created_at": 1699061776
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.yaml
new file mode 100644
index 000000000000..04a6a1da079b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store.yaml
@@ -0,0 +1,11 @@
+title: Retrieves a vector store.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+responses:
+ "200":
+ body:
+ id: vs_abc123
+ object: vector_store
+ created_at: 1699061776
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.json
new file mode 100644
index 000000000000..7ad62afb2bbe
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.json
@@ -0,0 +1,21 @@
+{
+ "title": "Retrieves a vector store file.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "file_id": "file-abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "file-abc123",
+ "object": "vector_store.file",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abcd",
+ "status": "completed",
+ "last_error": null
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.yaml
new file mode 100644
index 000000000000..6586a4bb76bd
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file.yaml
@@ -0,0 +1,15 @@
+title: Retrieves a vector store file.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ file_id: file-abc123
+responses:
+ "200":
+ body:
+ id: file-abc123
+ object: vector_store.file
+ created_at: 1699061776
+ vector_store_id: vs_abcd
+ status: completed
+ last_error: null
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.json
new file mode 100644
index 000000000000..846c6ee29f3b
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.json
@@ -0,0 +1,27 @@
+{
+ "title": "Retrieves a vector store file batch.",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "vector_store_id": "vs_abc123",
+ "batch_id": "vsfb_abc123"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "vsfb_abc123",
+ "object": "vector_store.file_batch",
+ "created_at": 1699061776,
+ "vector_store_id": "vs_abc123",
+ "status": "in_progress",
+ "file_counts": {
+ "in_progress": 1,
+ "completed": 1,
+ "failed": 0,
+ "cancelled": 0,
+ "total": 0
+ }
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.yaml
new file mode 100644
index 000000000000..599ef35e8bb1
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/retrieve_vector_store_file_batch.yaml
@@ -0,0 +1,20 @@
+title: Retrieves a vector store file batch.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ vector_store_id: vs_abc123
+ batch_id: vsfb_abc123
+responses:
+ "200":
+ body:
+ id: vsfb_abc123
+ object: vector_store.file_batch
+ created_at: 1699061776
+ vector_store_id: vs_abc123
+ status: in_progress
+ file_counts:
+ in_progress: 1
+ completed: 1
+ failed: 0
+ cancelled: 0
+ total: 0
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.json
new file mode 100644
index 000000000000..de4110246f97
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.json
@@ -0,0 +1,77 @@
+{
+ "title": "When a run has the `status: \"requires_action\"` and `required_action.type` is `submit_tool_outputs`, this endpoint can be used to submit the outputs from the tool calls once they're all completed. All outputs must be submitted in a single request.\n",
+ "parameters": {
+ "endpoint": "{endpoint}",
+ "api-version": "2024-12-01-preview",
+ "thread_id": "thread_123",
+ "run_id": "run_123",
+ "body": {
+ "tool_outputs": [
+ {
+ "tool_call_id": "call_001",
+ "output": "70 degrees and sunny."
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "run_123",
+ "object": "thread.run",
+ "created_at": 1699075592,
+ "assistant_id": "asst_123",
+ "thread_id": "thread_123",
+ "status": "queued",
+ "started_at": 1699075592,
+ "expires_at": 1699076192,
+ "cancelled_at": null,
+ "failed_at": null,
+ "completed_at": null,
+ "last_error": null,
+ "model": "gpt-4-turbo",
+ "instructions": null,
+ "tools": [
+ {
+ "type": "function",
+ "function": {
+ "name": "get_current_weather",
+ "description": "Get the current weather in a given location",
+ "parameters": {
+ "type": "object",
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "The city and state, e.g. San Francisco, CA"
+ },
+ "unit": {
+ "type": "string",
+ "enum": [
+ "celsius",
+ "fahrenheit"
+ ]
+ }
+ },
+ "required": [
+ "location"
+ ]
+ }
+ }
+ }
+ ],
+ "metadata": {},
+ "usage": null,
+ "temperature": 1.0,
+ "top_p": 1.0,
+ "max_prompt_tokens": 1000,
+ "max_completion_tokens": 1000,
+ "truncation_strategy": {
+ "type": "auto",
+ "last_messages": null
+ },
+ "response_format": "auto",
+ "tool_choice": "auto"
+ }
+ }
+ }
+}
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.yaml
new file mode 100644
index 000000000000..65486ee32363
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/examples/submit_tool_outputs_to_run.yaml
@@ -0,0 +1,57 @@
+title: |
+ When a run has the `status: "requires_action"` and `required_action.type` is `submit_tool_outputs`, this endpoint can be used to submit the outputs from the tool calls once they're all completed. All outputs must be submitted in a single request.
+parameters:
+ endpoint: "{endpoint}"
+ api-version: 2024-12-01-preview
+ thread_id: thread_123
+ run_id: run_123
+ body:
+ tool_outputs:
+ - tool_call_id: call_001
+ output: 70 degrees and sunny.
+responses:
+ "200":
+ body:
+ id: run_123
+ object: thread.run
+ created_at: 1699075592
+ assistant_id: asst_123
+ thread_id: thread_123
+ status: queued
+ started_at: 1699075592
+ expires_at: 1699076192
+ cancelled_at: null
+ failed_at: null
+ completed_at: null
+ last_error: null
+ model: gpt-4-turbo
+ instructions: null
+ tools:
+ - type: function
+ function:
+ name: get_current_weather
+ description: Get the current weather in a given location
+ parameters:
+ type: object
+ properties:
+ location:
+ type: string
+ description: The city and state, e.g. San Francisco, CA
+ unit:
+ type: string
+ enum:
+ - celsius
+ - fahrenheit
+ required:
+ - location
+ metadata: {}
+ usage: null
+ temperature: 1
+ top_p: 1
+ max_prompt_tokens: 1000
+ max_completion_tokens: 1000
+ truncation_strategy:
+ type: auto
+ last_messages: null
+ response_format: auto
+ tool_choice: auto
diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.json
new file mode 100644
index 000000000000..ac66d046534d
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.json
@@ -0,0 +1,12335 @@
+{
+ "openapi": "3.0.0",
+ "info": {
+ "title": "Azure OpenAI Service API",
+ "description": "Azure OpenAI APIs for completions and search",
+ "version": "2024-12-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": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createCompletionRequest"
+ },
+ "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": {
+ "$ref": "#/components/schemas/createCompletionResponse"
+ },
+ "example": {
+ "model": "davinci",
+ "object": "text_completion",
+ "id": "cmpl-4509KAos68kxOqpE2uYGw81j6m7uo",
+ "created": 1637097562,
+ "choices": [
+ {
+ "index": 0,
+ "text": "The price for bubblegum decreased on thursday.",
+ "logprobs": null,
+ "finish_reason": "stop"
+ }
+ ]
+ }
+ }
+ },
+ "headers": {
+ "apim-request-id": {
+ "description": "Request ID for troubleshooting purposes",
+ "schema": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "Service unavailable",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/errorResponse"
+ }
+ }
+ },
+ "headers": {
+ "apim-request-id": {
+ "description": "Request ID for troubleshooting purposes",
+ "schema": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a completion.": {
+ "$ref": "./examples/completions.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/embeddings": {
+ "post": {
+ "summary": "Get a vector representation of a given input that can be easily consumed by machine learning models and algorithms.",
+ "operationId": "embeddings_create",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "deployment-id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "ada-search-index-v1"
+ },
+ "description": "The deployment id of the model which was deployed."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "additionalProperties": true,
+ "properties": {
+ "input": {
+ "description": "Input text to embed, encoded as a string or array of tokens. To embed multiple inputs in a single request, pass an array of strings or array of token arrays. The input must not exceed the max input tokens for the model (8192 tokens for `text-embedding-ada-002`), cannot be an empty string, and any array must be 2048 dimensions or less.",
+ "oneOf": [
+ {
+ "type": "string",
+ "default": "",
+ "example": "This is a test.",
+ "nullable": true
+ },
+ {
+ "type": "array",
+ "minItems": 1,
+ "maxItems": 2048,
+ "items": {
+ "type": "string",
+ "minLength": 1,
+ "example": "This is a test.",
+ "nullable": false
+ }
+ }
+ ]
+ },
+ "user": {
+ "description": "A unique identifier representing your end-user, which can help monitoring and detecting abuse.",
+ "type": "string",
+ "nullable": false
+ },
+ "input_type": {
+ "description": "input type of embedding search to use",
+ "type": "string",
+ "example": "query"
+ },
+ "encoding_format": {
+ "description": "The format to return the embeddings in. Can be either `float` or `base64`. Defaults to `float`.",
+ "type": "string",
+ "example": "float",
+ "nullable": true
+ },
+ "dimensions": {
+ "description": "The number of dimensions the resulting output embeddings should have. Only supported in `text-embedding-3` and later models.",
+ "type": "integer",
+ "example": 1,
+ "nullable": true
+ }
+ },
+ "required": [
+ "input"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "object": {
+ "type": "string"
+ },
+ "model": {
+ "type": "string"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer"
+ },
+ "object": {
+ "type": "string"
+ },
+ "embedding": {
+ "type": "array",
+ "items": {
+ "type": "number"
+ }
+ }
+ },
+ "required": [
+ "index",
+ "object",
+ "embedding"
+ ]
+ }
+ },
+ "usage": {
+ "type": "object",
+ "properties": {
+ "prompt_tokens": {
+ "type": "integer"
+ },
+ "total_tokens": {
+ "type": "integer"
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "total_tokens"
+ ]
+ }
+ },
+ "required": [
+ "object",
+ "model",
+ "data",
+ "usage"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a embeddings.": {
+ "$ref": "./examples/embeddings.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/chat/completions": {
+ "post": {
+ "summary": "Creates a completion for the chat message",
+ "operationId": "ChatCompletions_Create",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "deployment-id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "description": "Deployment id of the model which was deployed."
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createChatCompletionRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/createChatCompletionResponse"
+ },
+ {
+ "$ref": "#/components/schemas/createChatCompletionStreamResponse"
+ }
+ ]
+ }
+ }
+ },
+ "headers": {
+ "apim-request-id": {
+ "description": "Request ID for troubleshooting purposes",
+ "schema": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "Service unavailable",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/errorResponse"
+ }
+ }
+ },
+ "headers": {
+ "apim-request-id": {
+ "description": "Request ID for troubleshooting purposes",
+ "schema": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a chat completion.": {
+ "$ref": "./examples/chat_completions.json"
+ },
+ "Creates a completion based on Azure Search data and system-assigned managed identity.": {
+ "$ref": "./examples/chat_completions_azure_search_minimum.json"
+ },
+ "Creates a completion based on Azure Search image vector data.": {
+ "$ref": "./examples/chat_completions_azure_search_image_vector.json"
+ },
+ "Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.": {
+ "$ref": "./examples/chat_completions_azure_search_advanced.json"
+ },
+ "Creates a completion for the provided Azure Cosmos DB.": {
+ "$ref": "./examples/chat_completions_cosmos_db.json"
+ },
+ "Creates a completion for the provided Mongo DB.": {
+ "$ref": "./examples/chat_completions_mongo_db.json"
+ },
+ "Creates a completion for the provided Elasticsearch.": {
+ "$ref": "./examples/chat_completions_elasticsearch.json"
+ },
+ "Creates a completion for the provided Pinecone resource.": {
+ "$ref": "./examples/chat_completions_pinecone.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/audio/transcriptions": {
+ "post": {
+ "summary": "Transcribes audio into the input language.",
+ "operationId": "Transcriptions_Create",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "deployment-id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "whisper",
+ "description": "Deployment id of the whisper model."
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "multipart/form-data": {
+ "schema": {
+ "$ref": "#/components/schemas/createTranscriptionRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/audioResponse"
+ },
+ {
+ "$ref": "#/components/schemas/audioVerboseResponse"
+ }
+ ]
+ }
+ },
+ "text/plain": {
+ "schema": {
+ "type": "string",
+ "description": "Transcribed text in the output format (when response_format was one of text, vtt or srt)."
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an audio transcription with json response format.": {
+ "$ref": "./examples/audio_transcription_object.json"
+ },
+ "Create an audio transcription with text response format.": {
+ "$ref": "./examples/audio_transcription_text.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/audio/translations": {
+ "post": {
+ "summary": "Transcribes and translates input audio into English text.",
+ "operationId": "Translations_Create",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "deployment-id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "whisper",
+ "description": "Deployment id of the whisper model which was deployed."
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "multipart/form-data": {
+ "schema": {
+ "$ref": "#/components/schemas/createTranslationRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/audioResponse"
+ },
+ {
+ "$ref": "#/components/schemas/audioVerboseResponse"
+ }
+ ]
+ }
+ },
+ "text/plain": {
+ "schema": {
+ "type": "string",
+ "description": "Transcribed text in the output format (when response_format was one of text, vtt or srt)."
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an audio translation with json response format.": {
+ "$ref": "./examples/audio_translation_object.json"
+ },
+ "Create an audio translation with text response format.": {
+ "$ref": "./examples/audio_translation_text.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/audio/speech": {
+ "post": {
+ "summary": "Generates audio from the input text.",
+ "operationId": "Speech_Create",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "deployment-id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "tts-1",
+ "description": "Deployment id of the tts model which was deployed."
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "multipart/form-data": {
+ "schema": {
+ "$ref": "#/components/schemas/createSpeechRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/octet-stream": {
+ "schema": {
+ "type": "string",
+ "format": "binary"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an audio from text with response format mp3.": {
+ "$ref": "./examples/audio_speech.json"
+ }
+ }
+ }
+ },
+ "/deployments/{deployment-id}/images/generations": {
+ "post": {
+ "summary": "Generates a batch of images from a text caption on a given DALLE model deployment",
+ "operationId": "ImageGenerations_Create",
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/imageGenerationsRequest"
+ }
+ }
+ }
+ },
+ "parameters": [
+ {
+ "in": "path",
+ "name": "deployment-id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "dalle-deployment",
+ "description": "Deployment id of the dalle model which was deployed."
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/generateImagesResponse"
+ }
+ }
+ }
+ },
+ "default": {
+ "description": "An error occurred.",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/dalleErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an image.": {
+ "$ref": "./examples/image_generation.json"
+ }
+ }
+ }
+ },
+ "/assistants": {
+ "get": {
+ "operationId": "List_Assistants",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Returns a list of assistants.",
+ "parameters": [
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListAssistantsOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc",
+ "description": "Order results in ascending order"
+ },
+ {
+ "value": "desc",
+ "description": "Order results in descending order"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listAssistantsResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all assistants.": {
+ "$ref": "./examples/list_assistants.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Create_Assistant",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Create an assistant with a model and instructions.",
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createAssistantRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/assistantObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create an assistant.": {
+ "$ref": "./examples/create_assistant.json"
+ }
+ }
+ }
+ },
+ "/assistants/{assistant_id}": {
+ "get": {
+ "operationId": "Get_Assistant",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Retrieves an assistant.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "assistant_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the assistant to retrieve."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/assistantObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieves an assistant.": {
+ "$ref": "./examples/retrieve_assistant.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Modify_Assistant",
+ "tags": [
+ "Assistant"
+ ],
+ "summary": "Modifies an assistant.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "assistant_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the assistant to modify."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/modifyAssistantRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/assistantObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Modifies an assistant.": {
+ "$ref": "./examples/modify_assistant.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Delete_Assistant",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Delete an assistant.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "assistant_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the assistant to delete."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/deleteAssistantResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete an assistant.": {
+ "$ref": "./examples/delete_assistant.json"
+ }
+ }
+ }
+ },
+ "/threads": {
+ "post": {
+ "operationId": "Create_Thread",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Create a thread.",
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createThreadRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/threadObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a thread.": {
+ "$ref": "./examples/create_thread.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}": {
+ "get": {
+ "operationId": "Get_Thread",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Retrieves a thread.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to retrieve."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/threadObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a thread.": {
+ "$ref": "./examples/retrieve_thread.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Modify_Thread",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Modifies a thread.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to modify. Only the `metadata` can be modified."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/modifyThreadRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/threadObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Modify a thread.": {
+ "$ref": "./examples/modify_thread.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Delete_Thread",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Delete a thread.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to delete."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/deleteThreadResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a thread.": {
+ "$ref": "./examples/delete_thread.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/messages": {
+ "get": {
+ "operationId": "List_Messages",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Returns a list of messages for a given thread.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the [thread](/docs/api-reference/threads) the messages belong to."
+ },
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListMessagesOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc",
+ "description": "Order results in ascending order"
+ },
+ {
+ "value": "desc",
+ "description": "Order results in descending order"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "run_id",
+ "in": "query",
+ "description": "Filter messages by the run ID that generated them.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listMessagesResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all messages.": {
+ "$ref": "./examples/list_messages.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Create_Message",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Create a message.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the [thread](/docs/api-reference/threads) to create a message for."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createMessageRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a message.": {
+ "$ref": "./examples/create_message.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/messages/{message_id}": {
+ "get": {
+ "operationId": "Get_Message",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Retrieve a message.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the [thread](/docs/api-reference/threads) to which this message belongs."
+ },
+ {
+ "in": "path",
+ "name": "message_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the message to retrieve."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a message.": {
+ "$ref": "./examples/get_message.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Modify_Message",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Modifies a message.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to which this message belongs."
+ },
+ {
+ "in": "path",
+ "name": "message_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the message to modify."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/modifyMessageRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Modify a message.": {
+ "$ref": "./examples/modify_message.json"
+ }
+ }
+ }
+ },
+ "/threads/runs": {
+ "post": {
+ "operationId": "Create_Thread_And_Run",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Create a thread and run it in one request.",
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createThreadAndRunRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a thread and run it.": {
+ "$ref": "./examples/create_thread_and_run.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/runs": {
+ "get": {
+ "operationId": "List_Runs",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Returns a list of runs belonging to a thread.",
+ "parameters": [
+ {
+ "name": "thread_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread the run belongs to."
+ },
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListRunsOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc",
+ "description": "Order results in ascending order"
+ },
+ {
+ "value": "desc",
+ "description": "Order results in descending order"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listRunsResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all runs.": {
+ "$ref": "./examples/list_runs.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Create_Run",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Create a run.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to run."
+ },
+ {
+ "name": "include[]",
+ "in": "query",
+ "description": "A list of additional fields to include in the response. Currently the only supported value is `step_details.tool_calls[*].file_search.results[*].content` to fetch the file search result content.",
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "step_details.tool_calls[*].file_search.results[*].content"
+ ],
+ "x-ms-enum": {
+ "name": "Include",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "step_details.tool_calls[*].file_search.results[*].content"
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createRunRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a run.": {
+ "$ref": "./examples/create_run.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/runs/{run_id}": {
+ "get": {
+ "operationId": "Get_Run",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Retrieves a run.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the [thread](/docs/api-reference/threads) that was run."
+ },
+ {
+ "in": "path",
+ "name": "run_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run to retrieve."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a run.": {
+ "$ref": "./examples/get_run.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Modify_Run",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Modifies a run.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the [thread](/docs/api-reference/threads) that was run."
+ },
+ {
+ "in": "path",
+ "name": "run_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run to modify."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/modifyRunRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Modify a run.": {
+ "$ref": "./examples/modify_run.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/runs/{run_id}/submit_tool_outputs": {
+ "post": {
+ "operationId": "Submit_Tool_Outputs_To_Run",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "When a run has the `status: \"requires_action\"` and `required_action.type` is `submit_tool_outputs`, this endpoint can be used to submit the outputs from the tool calls once they're all completed. All outputs must be submitted in a single request.\n",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the [thread](/docs/api-reference/threads) to which this run belongs."
+ },
+ {
+ "in": "path",
+ "name": "run_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run that requires the tool output submission."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/submitToolOutputsRunRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Submit tool outputs to a run.": {
+ "$ref": "./examples/submit_tool_outputs_to_run.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/runs/{run_id}/cancel": {
+ "post": {
+ "operationId": "Cancel_Run",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Cancels a run that is `in_progress`.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to which this run belongs."
+ },
+ {
+ "in": "path",
+ "name": "run_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run to cancel."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Cancel a run.": {
+ "$ref": "./examples/cancel_run.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/runs/{run_id}/steps": {
+ "get": {
+ "operationId": "List_Run_Steps",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Returns a list of run steps belonging to a run.",
+ "parameters": [
+ {
+ "name": "thread_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread the run and run steps belong to."
+ },
+ {
+ "name": "run_id",
+ "in": "path",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run the run steps belong to."
+ },
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListRunStepsOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc",
+ "description": "Order results in ascending order"
+ },
+ {
+ "value": "desc",
+ "description": "Order results in descending order"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ },
+ {
+ "name": "include[]",
+ "in": "query",
+ "description": "A list of additional fields to include in the response. Currently the only supported value is `step_details.tool_calls[*].file_search.results[*].content` to fetch the file search result content.\n",
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "step_details.tool_calls[*].file_search.results[*].content"
+ ],
+ "x-ms-enum": {
+ "name": "Include",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "step_details.tool_calls[*].file_search.results[*].content"
+ }
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listRunStepsResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all run steps.": {
+ "$ref": "./examples/list_run_steps.json"
+ }
+ }
+ }
+ },
+ "/threads/{thread_id}/runs/{run_id}/steps/{step_id}": {
+ "get": {
+ "operationId": "Get_Run_Step",
+ "tags": [
+ "Assistants"
+ ],
+ "summary": "Retrieves a run step.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "thread_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the thread to which the run and run step belongs."
+ },
+ {
+ "in": "path",
+ "name": "run_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run to which the run step belongs."
+ },
+ {
+ "in": "path",
+ "name": "step_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the run step to retrieve."
+ },
+ {
+ "name": "include[]",
+ "in": "query",
+ "description": "A list of additional fields to include in the response. Currently the only supported value is `step_details.tool_calls[*].file_search.results[*].content` to fetch the file search result content.\n",
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "step_details.tool_calls[*].file_search.results[*].content"
+ ],
+ "x-ms-enum": {
+ "name": "Include",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "step_details.tool_calls[*].file_search.results[*].content"
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview",
+ "description": "api version"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a run step.": {
+ "$ref": "./examples/get_run_step.json"
+ }
+ }
+ }
+ },
+ "/vector_stores": {
+ "get": {
+ "operationId": "List_Vector_Stores",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Returns a list of vector stores.",
+ "parameters": [
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListVectorStoresOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc"
+ },
+ {
+ "value": "desc"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listVectorStoresResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all vector stores.": {
+ "$ref": "./examples/list_vector_stores.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Create_Vector_Store",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Create a vector store.",
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createVectorStoreRequest"
+ }
+ }
+ }
+ },
+ "parameters": [
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a vector store.": {
+ "$ref": "./examples/create_vector_store.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}": {
+ "get": {
+ "operationId": "Get_Vector_Store",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Retrieves a vector store.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the vector store to retrieve."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a vector store.": {
+ "$ref": "./examples/retrieve_vector_store.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Modify_Vector_Store",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Modifies a vector store.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the vector store to modify."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/updateVectorStoreRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Modify a vector store.": {
+ "$ref": "./examples/modify_vector_store.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Delete_Vector_Store",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Delete a vector store.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the vector store to delete."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/deleteVectorStoreResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a vector store.": {
+ "$ref": "./examples/delete_vector_store.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}/files": {
+ "get": {
+ "operationId": "List_Vector_Store_Files",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Returns a list of vector store files.",
+ "parameters": [
+ {
+ "name": "vector_store_id",
+ "in": "path",
+ "description": "The ID of the vector store that the files belong to.",
+ "required": true,
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListVectorStoreFilesOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc"
+ },
+ {
+ "value": "desc"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "filter",
+ "in": "query",
+ "description": "Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`.",
+ "schema": {
+ "type": "string",
+ "enum": [
+ "in_progress",
+ "completed",
+ "failed",
+ "cancelled"
+ ],
+ "x-ms-enum": {
+ "name": "ListVectorStoreFilesFilter",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "in_progress"
+ },
+ {
+ "value": "completed"
+ },
+ {
+ "value": "failed"
+ },
+ {
+ "value": "cancelled"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listVectorStoreFilesResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all vector store files.": {
+ "$ref": "./examples/list_vector_store_files.json"
+ }
+ }
+ },
+ "post": {
+ "operationId": "Create_Vector_Store_File",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Create a vector store file by attaching a [File](/docs/api-reference/files) to a [vector store](/docs/api-reference/vector-stores/object).",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "vs_abc123"
+ },
+ "description": "The ID of the vector store for which to create a File.\n"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createVectorStoreFileRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreFileObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a vector store file.": {
+ "$ref": "./examples/create_vector_store_file.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}/files/{file_id}": {
+ "get": {
+ "operationId": "Get_Vector_Store_File",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Retrieves a vector store file.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "vs_abc123"
+ },
+ "description": "The ID of the vector store that the file belongs to."
+ },
+ {
+ "in": "path",
+ "name": "file_id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "file-abc123"
+ },
+ "description": "The ID of the file being retrieved."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreFileObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a vector store file.": {
+ "$ref": "./examples/retrieve_vector_store_file.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Delete_Vector_Store_File",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Delete a vector store file. This will remove the file from the vector store but the file itself will not be deleted. To delete the file, use the [delete file](/docs/api-reference/files/delete) endpoint.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the vector store that the file belongs to."
+ },
+ {
+ "in": "path",
+ "name": "file_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the file to delete."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/deleteVectorStoreFileResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a vector store file.": {
+ "$ref": "./examples/delete_vector_store_file.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}/file_batches": {
+ "post": {
+ "operationId": "Create_Vector_Store_File_Batch",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Create a vector store file batch.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "vs_abc123"
+ },
+ "description": "The ID of the vector store for which to create a File Batch.\n"
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/createVectorStoreFileBatchRequest"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreFileBatchObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a vector store file batch.": {
+ "$ref": "./examples/create_vector_store_file_batch.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}/file_batches/{batch_id}": {
+ "get": {
+ "operationId": "Get_Vector_Store_File_Batch",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Retrieves a vector store file batch.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "vs_abc123"
+ },
+ "description": "The ID of the vector store that the file batch belongs to."
+ },
+ {
+ "in": "path",
+ "name": "batch_id",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "vs_b_abc123"
+ },
+ "description": "The ID of the file batch being retrieved."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreFileBatchObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a vector store file batch.": {
+ "$ref": "./examples/retrieve_vector_store_file_batch.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel": {
+ "post": {
+ "operationId": "Cancel_Vector_Store_File_Batch",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Cancel a vector store file batch. This attempts to cancel the processing of files in this batch as soon as possible.",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "vector_store_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the vector store that the file batch belongs to."
+ },
+ {
+ "in": "path",
+ "name": "batch_id",
+ "required": true,
+ "schema": {
+ "type": "string"
+ },
+ "description": "The ID of the file batch to cancel."
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/vectorStoreFileBatchObject"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Cancel a vector store file batch.": {
+ "$ref": "./examples/cancel_vector_store_file_batch.json"
+ }
+ }
+ }
+ },
+ "/vector_stores/{vector_store_id}/file_batches/{batch_id}/files": {
+ "get": {
+ "operationId": "List_Vector_Store_File_Batch_Files",
+ "tags": [
+ "Vector Stores"
+ ],
+ "summary": "Returns a list of vector store files in a batch.",
+ "parameters": [
+ {
+ "name": "vector_store_id",
+ "in": "path",
+ "description": "The ID of the vector store that the files belong to.",
+ "required": true,
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "batch_id",
+ "in": "path",
+ "description": "The ID of the file batch that the files belong to.",
+ "required": true,
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "limit",
+ "in": "query",
+ "description": "A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.\n",
+ "required": false,
+ "schema": {
+ "type": "integer",
+ "default": 20
+ }
+ },
+ {
+ "name": "order",
+ "in": "query",
+ "description": "Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.\n",
+ "schema": {
+ "type": "string",
+ "default": "desc",
+ "enum": [
+ "asc",
+ "desc"
+ ],
+ "x-ms-enum": {
+ "name": "ListVectorStoreFilesOrder",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "asc"
+ },
+ {
+ "value": "desc"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "after",
+ "in": "query",
+ "description": "A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "before",
+ "in": "query",
+ "description": "A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.\n",
+ "schema": {
+ "type": "string"
+ }
+ },
+ {
+ "name": "filter",
+ "in": "query",
+ "description": "Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`.",
+ "schema": {
+ "type": "string",
+ "enum": [
+ "in_progress",
+ "completed",
+ "failed",
+ "cancelled"
+ ],
+ "x-ms-enum": {
+ "name": "ListVectorStoreFilesFilter",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "in_progress"
+ },
+ {
+ "value": "completed"
+ },
+ {
+ "value": "failed"
+ },
+ {
+ "value": "cancelled"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "in": "query",
+ "name": "api-version",
+ "required": true,
+ "schema": {
+ "type": "string",
+ "example": "2024-12-01-preview"
+ },
+ "description": "api version"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/listVectorStoreFilesResponse"
+ }
+ }
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all vector store files in a batch.": {
+ "$ref": "./examples/list_vector_store_files.json"
+ }
+ }
+ }
+ }
+ },
+ "components": {
+ "schemas": {
+ "errorResponse": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/components/schemas/error"
+ }
+ }
+ },
+ "errorBase": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ }
+ }
+ },
+ "error": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/errorBase"
+ }
+ ],
+ "properties": {
+ "param": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "inner_error": {
+ "$ref": "#/components/schemas/innerError"
+ }
+ }
+ },
+ "innerError": {
+ "description": "Inner error with additional details.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "$ref": "#/components/schemas/innerErrorCode"
+ },
+ "content_filter_results": {
+ "$ref": "#/components/schemas/contentFilterPromptResults"
+ }
+ }
+ },
+ "innerErrorCode": {
+ "description": "Error codes for the inner error object.",
+ "enum": [
+ "ResponsibleAIPolicyViolation"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "InnerErrorCode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "ResponsibleAIPolicyViolation",
+ "description": "The prompt violated one of more content filter rules."
+ }
+ ]
+ }
+ },
+ "dalleErrorResponse": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/components/schemas/dalleError"
+ }
+ }
+ },
+ "dalleError": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/errorBase"
+ }
+ ],
+ "properties": {
+ "param": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "inner_error": {
+ "$ref": "#/components/schemas/dalleInnerError"
+ }
+ }
+ },
+ "dalleInnerError": {
+ "description": "Inner error with additional details.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "$ref": "#/components/schemas/innerErrorCode"
+ },
+ "content_filter_results": {
+ "$ref": "#/components/schemas/dalleFilterResults"
+ },
+ "revised_prompt": {
+ "type": "string",
+ "description": "The prompt that was used to generate the image, if there was any revision to the prompt."
+ }
+ }
+ },
+ "contentFilterCompletionTextSpan": {
+ "type": "object",
+ "description": "Describes a span within generated completion text. Offset 0 is the first UTF32 code point of the completion text.",
+ "properties": {
+ "completion_start_offset": {
+ "description": "Offset of the UTF32 code point which begins the span.",
+ "type": "integer"
+ },
+ "completion_end_offset": {
+ "description": "Offset of the first UTF32 code point which is excluded from the span. This field is always equal to completion_start_offset for empty spans. This field is always larger than completion_start_offset for non-empty spans.",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "completion_start_offset",
+ "completion_end_offset"
+ ]
+ },
+ "contentFilterResultBase": {
+ "type": "object",
+ "properties": {
+ "filtered": {
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "filtered"
+ ]
+ },
+ "contentFilterSeverityResult": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterResultBase"
+ },
+ {
+ "properties": {
+ "severity": {
+ "type": "string",
+ "enum": [
+ "safe",
+ "low",
+ "medium",
+ "high"
+ ],
+ "x-ms-enum": {
+ "name": "ContentFilterSeverity",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "safe",
+ "description": "General content or related content in generic or non-harmful contexts."
+ },
+ {
+ "value": "low",
+ "description": "Harmful content at a low intensity and risk level."
+ },
+ {
+ "value": "medium",
+ "description": "Harmful content at a medium intensity and risk level."
+ },
+ {
+ "value": "high",
+ "description": "Harmful content at a high intensity and risk level."
+ }
+ ]
+ }
+ }
+ }
+ }
+ ],
+ "required": [
+ "severity",
+ "filtered"
+ ]
+ },
+ "contentFilterDetectedResult": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterResultBase"
+ },
+ {
+ "properties": {
+ "detected": {
+ "type": "boolean"
+ }
+ }
+ }
+ ],
+ "required": [
+ "detected",
+ "filtered"
+ ]
+ },
+ "contentFilterDetectedWithCitationResult": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ },
+ {
+ "properties": {
+ "citation": {
+ "type": "object",
+ "properties": {
+ "URL": {
+ "type": "string"
+ },
+ "license": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ ],
+ "required": [
+ "detected",
+ "filtered"
+ ]
+ },
+ "contentFilterDetectedWithCompletionTextSpansResult": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ },
+ {
+ "properties": {
+ "details": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/contentFilterCompletionTextSpan"
+ }
+ }
+ }
+ }
+ ],
+ "required": [
+ "detected",
+ "filtered",
+ "details"
+ ]
+ },
+ "contentFilterIdResult": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterResultBase"
+ },
+ {
+ "properties": {
+ "id": {
+ "type": "string"
+ }
+ }
+ }
+ ],
+ "required": [
+ "id",
+ "filtered"
+ ]
+ },
+ "contentFilterResultsBase": {
+ "type": "object",
+ "description": "Information about the content filtering results.",
+ "properties": {
+ "sexual": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "violence": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "hate": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "self_harm": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "profanity": {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ },
+ "custom_blocklists": {
+ "$ref": "#/components/schemas/contentFilterDetailedResults"
+ },
+ "error": {
+ "$ref": "#/components/schemas/errorBase"
+ }
+ }
+ },
+ "contentFilterPromptResults": {
+ "type": "object",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterResultsBase"
+ },
+ {
+ "properties": {
+ "jailbreak": {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ },
+ "indirect_attack": {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ }
+ }
+ }
+ ]
+ },
+ "contentFilterChoiceResults": {
+ "type": "object",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about third party text and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterResultsBase"
+ },
+ {
+ "properties": {
+ "protected_material_text": {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ }
+ }
+ },
+ {
+ "properties": {
+ "protected_material_code": {
+ "$ref": "#/components/schemas/contentFilterDetectedWithCitationResult"
+ }
+ }
+ },
+ {
+ "properties": {
+ "ungrounded_material": {
+ "$ref": "#/components/schemas/contentFilterDetectedWithCompletionTextSpansResult"
+ }
+ }
+ }
+ ]
+ },
+ "contentFilterDetailedResults": {
+ "type": "object",
+ "description": "Content filtering results with a detail of content filter ids for the filtered segments.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/contentFilterResultBase"
+ },
+ {
+ "properties": {
+ "details": {
+ "items": {
+ "$ref": "#/components/schemas/contentFilterIdResult"
+ },
+ "type": "array"
+ }
+ }
+ }
+ ],
+ "required": [
+ "filtered",
+ "details"
+ ]
+ },
+ "promptFilterResult": {
+ "type": "object",
+ "description": "Content filtering results for a single prompt in the request.",
+ "properties": {
+ "prompt_index": {
+ "type": "integer"
+ },
+ "content_filter_results": {
+ "$ref": "#/components/schemas/contentFilterPromptResults"
+ }
+ }
+ },
+ "promptFilterResults": {
+ "type": "array",
+ "description": "Content filtering results for zero or more prompts in the request. In a streaming request, results for different prompts may arrive at different times or in different orders.",
+ "items": {
+ "$ref": "#/components/schemas/promptFilterResult"
+ }
+ },
+ "dalleContentFilterResults": {
+ "type": "object",
+ "description": "Information about the content filtering results.",
+ "properties": {
+ "sexual": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "violence": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "hate": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ },
+ "self_harm": {
+ "$ref": "#/components/schemas/contentFilterSeverityResult"
+ }
+ }
+ },
+ "dalleFilterResults": {
+ "type": "object",
+ "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/dalleContentFilterResults"
+ },
+ {
+ "properties": {
+ "profanity": {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ },
+ "jailbreak": {
+ "$ref": "#/components/schemas/contentFilterDetectedResult"
+ },
+ "custom_blocklists": {
+ "$ref": "#/components/schemas/contentFilterDetailedResults"
+ }
+ }
+ }
+ ]
+ },
+ "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). This is not compatible with o1 series models.",
+ "type": "integer",
+ "default": 4096
+ },
+ "max_completion_tokens": {
+ "description": "An upper bound for the number of tokens that can be generated for a completion, including visible output tokens and reasoning tokens. This is only supported in o1 series models. Will expand the support to other models in future API release.",
+ "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,
+ "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
+ },
+ "store": {
+ "description": "Whether or not to store the output of this chat completion request for use in our model distillation or evaluation products.",
+ "type": "boolean",
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Developer-defined tags and values used for filtering completions in the stored completions dashboard.",
+ "type": "object",
+ "nullable": true,
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "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
+ }
+ }
+ },
+ "createCompletionRequest": {
+ "type": "object",
+ "properties": {
+ "prompt": {
+ "description": "The prompt(s) to generate completions for, encoded as a string, array of strings, array of tokens, or array of token arrays.\n\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.\n",
+ "default": "<|endoftext|>",
+ "nullable": true,
+ "oneOf": [
+ {
+ "type": "string",
+ "default": "",
+ "example": "This is a test."
+ },
+ {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "default": "",
+ "example": "This is a test."
+ }
+ }
+ ]
+ },
+ "best_of": {
+ "type": "integer",
+ "default": 1,
+ "minimum": 0,
+ "maximum": 20,
+ "nullable": true,
+ "description": "Generates `best_of` completions server-side and returns the \"best\" (the one with the highest log probability per token). Results cannot be streamed.\n\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`.\n\n**Note:** Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for `max_tokens` and `stop`.\n"
+ },
+ "echo": {
+ "type": "boolean",
+ "default": false,
+ "nullable": true,
+ "description": "Echo back the prompt in addition to the completion\n"
+ },
+ "frequency_penalty": {
+ "type": "number",
+ "default": 0,
+ "minimum": -2,
+ "maximum": 2,
+ "nullable": true,
+ "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.\n"
+ },
+ "logit_bias": {
+ "type": "object",
+ "x-oaiTypeLabel": "map",
+ "default": null,
+ "nullable": true,
+ "additionalProperties": {
+ "type": "integer"
+ },
+ "description": "Modify the likelihood of specified tokens appearing in the completion.\n\nAccepts 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](https://platform.openai.com/tokenizer?view=bpe) 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.\n\nAs an example, you can pass `{\"50256\": -100}` to prevent the <|endoftext|> token from being generated.\n"
+ },
+ "logprobs": {
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 5,
+ "default": null,
+ "nullable": true,
+ "description": "Include the log probabilities on the `logprobs` most likely output 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.\n\nThe maximum value for `logprobs` is 5.\n"
+ },
+ "max_tokens": {
+ "type": "integer",
+ "minimum": 0,
+ "default": 16,
+ "example": 16,
+ "nullable": true,
+ "description": "The maximum number of [tokens](https://platform.openai.com/tokenizer) that can be generated in the completion.\n\nThe token count of your prompt plus `max_tokens` cannot exceed the model's context length. [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) for counting tokens.\n"
+ },
+ "n": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 128,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "description": "How many completions to generate for each prompt.\n\n**Note:** Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for `max_tokens` and `stop`.\n"
+ },
+ "presence_penalty": {
+ "type": "number",
+ "default": 0,
+ "minimum": -2,
+ "maximum": 2,
+ "nullable": true,
+ "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.\n"
+ },
+ "seed": {
+ "type": "integer",
+ "minimum": -9223372036854775808,
+ "maximum": 9223372036854775807,
+ "nullable": true,
+ "description": "If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same `seed` and parameters should return the same result.\n\nDeterminism is not guaranteed, and you should refer to the `system_fingerprint` response parameter to monitor changes in the backend.\n"
+ },
+ "stop": {
+ "description": "Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.\n",
+ "default": null,
+ "nullable": true,
+ "oneOf": [
+ {
+ "type": "string",
+ "default": "<|endoftext|>",
+ "example": "\n",
+ "nullable": true
+ },
+ {
+ "type": "array",
+ "minItems": 1,
+ "maxItems": 4,
+ "items": {
+ "type": "string",
+ "example": "[\"\\n\"]"
+ }
+ }
+ ]
+ },
+ "stream": {
+ "description": "Whether to stream back partial progress. If set, tokens will be sent as data-only [server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#Event_stream_format) as they become available, with the stream terminated by a `data: [DONE]` message. [Example Python code](https://cookbook.openai.com/examples/how_to_stream_completions).\n",
+ "type": "boolean",
+ "nullable": true,
+ "default": false
+ },
+ "suffix": {
+ "description": "The suffix that comes after a completion of inserted text.\n\nThis parameter is only supported for `gpt-3.5-turbo-instruct`.\n",
+ "default": null,
+ "nullable": true,
+ "type": "string",
+ "example": "test."
+ },
+ "temperature": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or `top_p` but not both.\n"
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or `temperature` but not both.\n"
+ },
+ "user": {
+ "type": "string",
+ "example": "user-1234",
+ "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse.\n"
+ }
+ },
+ "required": [
+ "prompt"
+ ]
+ },
+ "createCompletionResponse": {
+ "type": "object",
+ "description": "Represents a completion response from the API. Note: both the streamed and non-streamed response objects share the same shape (unlike the chat endpoint).\n",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "A unique identifier for the completion."
+ },
+ "choices": {
+ "type": "array",
+ "description": "The list of completion choices the model generated for the input prompt.",
+ "items": {
+ "type": "object",
+ "required": [
+ "finish_reason",
+ "index",
+ "logprobs",
+ "text"
+ ],
+ "properties": {
+ "finish_reason": {
+ "type": "string",
+ "description": "The reason the model stopped generating tokens. This will be `stop` if the model hit a natural stop point or a provided stop sequence,\n`length` if the maximum number of tokens specified in the request was reached,\nor `content_filter` if content was omitted due to a flag from our content filters.\n",
+ "enum": [
+ "stop",
+ "length",
+ "content_filter"
+ ]
+ },
+ "index": {
+ "type": "integer"
+ },
+ "logprobs": {
+ "type": "object",
+ "nullable": true,
+ "properties": {
+ "text_offset": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "token_logprobs": {
+ "type": "array",
+ "items": {
+ "type": "number"
+ }
+ },
+ "tokens": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "top_logprobs": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "number"
+ }
+ }
+ }
+ }
+ },
+ "text": {
+ "type": "string"
+ },
+ "content_filter_results": {
+ "$ref": "#/components/schemas/contentFilterChoiceResults"
+ }
+ }
+ }
+ },
+ "created": {
+ "type": "integer",
+ "description": "The Unix timestamp (in seconds) of when the completion was created."
+ },
+ "model": {
+ "type": "string",
+ "description": "The model used for completion."
+ },
+ "prompt_filter_results": {
+ "$ref": "#/components/schemas/promptFilterResults"
+ },
+ "system_fingerprint": {
+ "type": "string",
+ "description": "This fingerprint represents the backend configuration that the model runs with.\n\nCan be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism.\n"
+ },
+ "object": {
+ "type": "string",
+ "description": "The object type, which is always \"text_completion\"",
+ "enum": [
+ "text_completion"
+ ]
+ },
+ "usage": {
+ "$ref": "#/components/schemas/completionUsage"
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created",
+ "model",
+ "choices"
+ ]
+ },
+ "createChatCompletionRequest": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionsRequestCommon"
+ },
+ {
+ "properties": {
+ "messages": {
+ "description": "A list of messages comprising the conversation so far. [Example Python code](https://github.com/openai/openai-cookbook/blob/main/examples/How_to_format_inputs_to_ChatGPT_models.ipynb).",
+ "type": "array",
+ "minItems": 1,
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionRequestMessage"
+ }
+ },
+ "data_sources": {
+ "type": "array",
+ "description": " The configuration entries for Azure OpenAI chat extensions that use them.\n This additional specification is only compatible with Azure OpenAI.",
+ "items": {
+ "$ref": "#/components/schemas/azureChatExtensionConfiguration"
+ }
+ },
+ "reasoning_effort": {
+ "type": "string",
+ "description": "**o1 models only** \n\n Constrains effort on reasoning for \n[reasoning models](https://platform.openai.com/docs/guides/reasoning).\n\nCurrently supported values are `low`, `medium`, and `high`. Reducing reasoning effort can result in faster responses and fewer tokens used on reasoning in a response.",
+ "enum": [
+ "low",
+ "medium",
+ "high"
+ ],
+ "default": "medium"
+ },
+ "frequency_penalty": {
+ "type": "number",
+ "default": 0,
+ "minimum": -2,
+ "maximum": 2,
+ "nullable": true,
+ "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.\n"
+ },
+ "logit_bias": {
+ "type": "object",
+ "default": null,
+ "nullable": true,
+ "additionalProperties": {
+ "type": "integer"
+ },
+ "description": "Modify the likelihood of specified tokens appearing in the completion.\n\nAccepts 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.\n"
+ },
+ "logprobs": {
+ "description": "Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the `content` of `message`.",
+ "type": "boolean",
+ "default": false,
+ "nullable": true
+ },
+ "top_logprobs": {
+ "description": "An integer between 0 and 20 specifying the number of most likely tokens to return at each token position, each with an associated log probability. `logprobs` must be set to `true` if this parameter is used.",
+ "type": "integer",
+ "minimum": 0,
+ "maximum": 20,
+ "nullable": true
+ },
+ "max_tokens": {
+ "description": "The maximum number of [tokens](/tokenizer) that can be generated in the chat completion.\n\nThe total length of input tokens and generated tokens is limited by the model's context length. [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) for counting tokens.\n",
+ "type": "integer",
+ "nullable": true
+ },
+ "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. Note that you will be charged based on the number of generated tokens across all of the choices. Keep `n` as `1` to minimize costs."
+ },
+ "presence_penalty": {
+ "type": "number",
+ "default": 0,
+ "minimum": -2,
+ "maximum": 2,
+ "nullable": true,
+ "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.\n"
+ },
+ "parallel_tool_calls": {
+ "$ref": "#/components/schemas/ParallelToolCalls",
+ "nullable": true
+ },
+ "response_format": {
+ "description": "An object specifying the format that the model must output. Compatible with [GPT-4o](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-4-and-gpt-4-turbo-models), [GPT-4o mini](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-4-and-gpt-4-turbo-models), [GPT-4 Turbo](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-4-and-gpt-4-turbo-models) and all [GPT-3.5](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-35) Turbo models newer than `gpt-3.5-turbo-1106`.\n\nSetting to `{ \"type\": \"json_schema\", \"json_schema\": {...} }` enables Structured Outputs which guarantees the model will match your supplied JSON schema.\n\nSetting to `{ \"type\": \"json_object\" }` enables JSON mode, which guarantees the message the model generates is valid JSON.\n\n**Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly \"stuck\" request. Also note that the message content may be partially cut off if `finish_reason=\"length\"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.\n",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/ResponseFormatText"
+ },
+ {
+ "$ref": "#/components/schemas/ResponseFormatJsonObject"
+ },
+ {
+ "$ref": "#/components/schemas/ResponseFormatJsonSchema"
+ }
+ ],
+ "x-oaiExpandable": true
+ },
+ "seed": {
+ "type": "integer",
+ "minimum": -9223372036854775808,
+ "maximum": 9223372036854775807,
+ "nullable": true,
+ "description": "This feature is in Beta.\nIf specified, our system will make a best effort to sample deterministically, such that repeated requests with the same `seed` and parameters should return the same result.\nDeterminism is not guaranteed, and you should refer to the `system_fingerprint` response parameter to monitor changes in the backend.\n"
+ },
+ "stop": {
+ "description": "Up to 4 sequences where the API will stop generating further tokens.\n",
+ "default": null,
+ "oneOf": [
+ {
+ "type": "string",
+ "nullable": true
+ },
+ {
+ "type": "array",
+ "minItems": 1,
+ "maxItems": 4,
+ "items": {
+ "type": "string"
+ }
+ }
+ ]
+ },
+ "stream": {
+ "description": "If set, partial message deltas will be sent, like in ChatGPT. Tokens will be sent as data-only [server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#Event_stream_format) as they become available, with the stream terminated by a `data: [DONE]` message. [Example Python code](https://cookbook.openai.com/examples/how_to_stream_completions).\n",
+ "type": "boolean",
+ "nullable": true,
+ "default": false
+ },
+ "stream_options": {
+ "$ref": "#/components/schemas/chatCompletionStreamOptions",
+ "nullable": true
+ },
+ "temperature": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or `top_p` but not both.\n"
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or `temperature` but not both.\n"
+ },
+ "tools": {
+ "type": "array",
+ "description": "A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for. A max of 128 functions are supported.\n",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTool"
+ }
+ },
+ "tool_choice": {
+ "$ref": "#/components/schemas/chatCompletionToolChoiceOption"
+ },
+ "function_call": {
+ "deprecated": true,
+ "description": "Deprecated in favor of `tool_choice`.\n\nControls which (if any) function is called by the model.\n`none` means the model will not call a function and instead generates a message.\n`auto` means the model can pick between generating a message or calling a function.\nSpecifying a particular function via `{\"name\": \"my_function\"}` forces the model to call that function.\n\n`none` is the default when no functions are present. `auto` is the default if functions are present.\n",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function.\n",
+ "enum": [
+ "none",
+ "auto"
+ ]
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionFunctionCallOption"
+ }
+ ],
+ "x-oaiExpandable": true
+ },
+ "functions": {
+ "deprecated": true,
+ "description": "Deprecated in favor of `tools`.\n\nA list of functions the model may generate JSON inputs for.\n",
+ "type": "array",
+ "minItems": 1,
+ "maxItems": 128,
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionFunctions"
+ }
+ },
+ "user": {
+ "type": "string",
+ "example": "user-1234",
+ "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse.\n"
+ },
+ "user_security_context": {
+ "$ref": "#/components/schemas/userSecurityContext"
+ }
+ },
+ "required": [
+ "messages"
+ ]
+ }
+ ]
+ },
+ "userSecurityContext": {
+ "type": "object",
+ "description": "User security context contains several parameters that describe the AI application itself, and the end user that interacts with the AI application. These fields assist your security operations teams to investigate and mitigate security incidents by providing a comprehensive approach to protecting your AI applications. [Learn more](https://aka.ms/TP4AI/Documentation/EndUserContext) about protecting AI applications using Microsoft Defender for Cloud.",
+ "properties": {
+ "application_name": {
+ "type": "string",
+ "description": "The name of the application. Sensitive personal information should not be included in this field."
+ },
+ "end_user_id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "This identifier is the Microsoft Entra ID (formerly Azure Active Directory) user object ID used to authenticate end-users within the generative AI application. Sensitive personal information should not be included in this field."
+ },
+ "end_user_tenant_id": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Microsoft 365 tenant ID the end user belongs to. It's required when the generative AI application is multi tenant."
+ },
+ "source_ip": {
+ "type": "string",
+ "description": "Captures the original client's IP address, accepting both IPv4 and IPv6 formats."
+ }
+ }
+ },
+ "chatCompletionFunctions": {
+ "type": "object",
+ "deprecated": true,
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "A description of what the function does, used by the model to choose when and how to call the function."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64."
+ },
+ "parameters": {
+ "$ref": "#/components/schemas/FunctionParameters"
+ }
+ },
+ "required": [
+ "name"
+ ]
+ },
+ "chatCompletionFunctionCallOption": {
+ "type": "object",
+ "description": "Specifying a particular function via `{\"name\": \"my_function\"}` forces the model to call that function.\n",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ },
+ "chatCompletionFunctionParameters": {
+ "type": "object",
+ "description": "The parameters the functions accepts, described as a JSON Schema object. See the [guide/](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format.",
+ "additionalProperties": true
+ },
+ "chatCompletionRequestMessage": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/ChatCompletionRequestDeveloperMessage"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestSystemMessage"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestUserMessage"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestAssistantMessage"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestToolMessage"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestFunctionMessage"
+ }
+ ]
+ },
+ "ChatCompletionRequestDeveloperMessage": {
+ "type": "object",
+ "title": "Developer message",
+ "description": "Developer-provided instructions that the model should follow, regardless of messages sent by the user.\nWith o1 models and newer, `developer` messages replace the previous `system` messages.",
+ "properties": {
+ "content": {
+ "description": "The contents of the developer message.",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "The contents of the developer message.",
+ "title": "Text content"
+ },
+ {
+ "type": "array",
+ "description": "An array of content parts with a defined type. For developer messages, only type `text` is supported.",
+ "title": "Array of content parts",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionRequestDeveloperMessageContentPart"
+ },
+ "minItems": 1
+ }
+ ]
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "developer"
+ ],
+ "description": "The role of the messages author, in this case `developer`."
+ },
+ "name": {
+ "type": "string",
+ "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
+ }
+ },
+ "required": [
+ "content",
+ "role"
+ ]
+ },
+ "chatCompletionRequestSystemMessage": {
+ "type": "object",
+ "title": "System message",
+ "properties": {
+ "content": {
+ "description": "The contents of the system message.",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "The contents of the system message.",
+ "title": "Text content"
+ },
+ {
+ "type": "array",
+ "description": "An array of content parts with a defined type. For system messages, only type `text` is supported.",
+ "title": "Array of content parts",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionRequestSystemMessageContentPart"
+ },
+ "minItems": 1
+ }
+ ]
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "system"
+ ],
+ "description": "The role of the messages author, in this case `system`."
+ },
+ "name": {
+ "type": "string",
+ "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
+ }
+ },
+ "required": [
+ "content",
+ "role"
+ ]
+ },
+ "chatCompletionRequestUserMessage": {
+ "type": "object",
+ "title": "User message",
+ "properties": {
+ "content": {
+ "description": "The contents of the user message.\n",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "The text contents of the message.",
+ "title": "Text content"
+ },
+ {
+ "type": "array",
+ "description": "An array of content parts with a defined type, each can be of type `text` or `image_url` when passing in images. You can pass multiple images by adding multiple `image_url` content parts. Image input is only supported when using the `gpt-4o` model.",
+ "title": "Array of content parts",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionRequestUserMessageContentPart"
+ },
+ "minItems": 1
+ }
+ ],
+ "x-oaiExpandable": true
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "user"
+ ],
+ "description": "The role of the messages author, in this case `user`."
+ },
+ "name": {
+ "type": "string",
+ "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
+ }
+ },
+ "required": [
+ "content",
+ "role"
+ ]
+ },
+ "chatCompletionRequestAssistantMessage": {
+ "type": "object",
+ "title": "Assistant message",
+ "properties": {
+ "content": {
+ "nullable": true,
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "The contents of the assistant message.",
+ "title": "Text content"
+ },
+ {
+ "type": "array",
+ "description": "An array of content parts with a defined type. Can be one or more of type `text`, or exactly one of type `refusal`.",
+ "title": "Array of content parts",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionRequestAssistantMessageContentPart"
+ },
+ "minItems": 1
+ }
+ ],
+ "description": "The contents of the assistant message. Required unless `tool_calls` or `function_call` is specified.\n"
+ },
+ "refusal": {
+ "nullable": true,
+ "type": "string",
+ "description": "The refusal message by the assistant."
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "assistant"
+ ],
+ "description": "The role of the messages author, in this case `assistant`."
+ },
+ "name": {
+ "type": "string",
+ "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
+ },
+ "tool_calls": {
+ "$ref": "#/components/schemas/chatCompletionMessageToolCalls"
+ },
+ "function_call": {
+ "type": "object",
+ "deprecated": true,
+ "description": "Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model.",
+ "nullable": true,
+ "properties": {
+ "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."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "arguments",
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "role"
+ ]
+ },
+ "chatCompletionRequestToolMessage": {
+ "type": "object",
+ "title": "Tool message",
+ "properties": {
+ "role": {
+ "type": "string",
+ "enum": [
+ "tool"
+ ],
+ "description": "The role of the messages author, in this case `tool`."
+ },
+ "content": {
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "The contents of the tool message.",
+ "title": "Text content"
+ },
+ {
+ "type": "array",
+ "description": "An array of content parts with a defined type. For tool messages, only type `text` is supported.",
+ "title": "Array of content parts",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionRequestToolMessageContentPart"
+ },
+ "minItems": 1
+ }
+ ],
+ "description": "The contents of the tool message."
+ },
+ "tool_call_id": {
+ "type": "string",
+ "description": "Tool call that this message is responding to."
+ }
+ },
+ "required": [
+ "role",
+ "content",
+ "tool_call_id"
+ ]
+ },
+ "chatCompletionRequestFunctionMessage": {
+ "type": "object",
+ "title": "Function message",
+ "deprecated": true,
+ "properties": {
+ "role": {
+ "type": "string",
+ "enum": [
+ "function"
+ ],
+ "description": "The role of the messages author, in this case `function`."
+ },
+ "content": {
+ "nullable": true,
+ "type": "string",
+ "description": "The contents of the function message."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "role",
+ "content",
+ "name"
+ ]
+ },
+ "chatCompletionRequestDeveloperMessageContentPart": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ }
+ ]
+ },
+ "chatCompletionRequestSystemMessageContentPart": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ }
+ ]
+ },
+ "chatCompletionRequestUserMessageContentPart": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartImage"
+ }
+ ]
+ },
+ "chatCompletionRequestAssistantMessageContentPart": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartRefusal"
+ }
+ ]
+ },
+ "chatCompletionRequestToolMessageContentPart": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ }
+ ]
+ },
+ "chatCompletionRequestMessageContentPartText": {
+ "type": "object",
+ "title": "Text content part",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "text"
+ ],
+ "description": "The type of the content part."
+ },
+ "text": {
+ "type": "string",
+ "description": "The text content."
+ }
+ },
+ "required": [
+ "type",
+ "text"
+ ]
+ },
+ "chatCompletionRequestMessageContentPartImage": {
+ "type": "object",
+ "title": "Image content part",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "image_url"
+ ],
+ "description": "The type of the content part."
+ },
+ "image_url": {
+ "type": "object",
+ "properties": {
+ "url": {
+ "type": "string",
+ "description": "Either a URL of the image or the base64 encoded image data.",
+ "format": "uri"
+ },
+ "detail": {
+ "type": "string",
+ "description": "Specifies the detail level of the image. Learn more in the [Vision guide](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/gpt-with-vision?tabs=rest%2Csystem-assigned%2Cresource#detail-parameter-settings-in-image-processing-low-high-auto).",
+ "enum": [
+ "auto",
+ "low",
+ "high"
+ ],
+ "default": "auto"
+ }
+ },
+ "required": [
+ "url"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "image_url"
+ ]
+ },
+ "chatCompletionRequestMessageContentPartRefusal": {
+ "type": "object",
+ "title": "Refusal content part",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "refusal"
+ ],
+ "description": "The type of the content part."
+ },
+ "refusal": {
+ "type": "string",
+ "description": "The refusal message generated by the model."
+ }
+ },
+ "required": [
+ "type",
+ "refusal"
+ ]
+ },
+ "azureChatExtensionConfiguration": {
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/components/schemas/azureChatExtensionType"
+ }
+ },
+ "description": " A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat\n completions request that should use Azure OpenAI chat extensions to augment the response behavior.\n The use of this configuration is compatible only with Azure OpenAI.",
+ "discriminator": {
+ "propertyName": "type",
+ "mapping": {
+ "azure_search": "#/components/schemas/azureSearchChatExtensionConfiguration",
+ "azure_cosmos_db": "#/components/schemas/azureCosmosDBChatExtensionConfiguration",
+ "elasticsearch": "#/components/schemas/elasticsearchChatExtensionConfiguration",
+ "mongo_db": "#/components/schemas/mongoDBChatExtensionConfiguration",
+ "pinecone": "#/components/schemas/pineconeChatExtensionConfiguration"
+ }
+ }
+ },
+ "azureChatExtensionType": {
+ "type": "string",
+ "description": " A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat\n completions request that should use Azure OpenAI chat extensions to augment the response behavior.\n The use of this configuration is compatible only with Azure OpenAI.",
+ "enum": [
+ "azure_search",
+ "azure_cosmos_db",
+ "elasticsearch",
+ "mongo_db",
+ "pinecone"
+ ],
+ "x-ms-enum": {
+ "name": "AzureChatExtensionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "azureSearch",
+ "value": "azure_search",
+ "description": "Represents the use of Azure Search as an Azure OpenAI chat extension."
+ },
+ {
+ "name": "azureCosmosDB",
+ "value": "azure_cosmos_db",
+ "description": "Represents the use of Azure Cosmos DB as an Azure OpenAI chat extension."
+ },
+ {
+ "name": "elasticsearch",
+ "value": "elasticsearch",
+ "description": "Represents the use of Elasticsearch® index as an Azure OpenAI chat extension."
+ },
+ {
+ "name": "mongoDB",
+ "value": "mongo_db",
+ "description": "Represents the use of Mongo DB as an Azure OpenAI chat extension."
+ },
+ {
+ "name": "pinecone",
+ "value": "pinecone",
+ "description": "Represents the use of Pinecone index as an Azure OpenAI chat extension."
+ }
+ ]
+ }
+ },
+ "azureSearchChatExtensionConfiguration": {
+ "required": [
+ "parameters"
+ ],
+ "description": "A specific representation of configurable options for Azure Search when using it as an Azure OpenAI chat\nextension.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/azureChatExtensionConfiguration"
+ },
+ {
+ "properties": {
+ "parameters": {
+ "$ref": "#/components/schemas/azureSearchChatExtensionParameters"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "azure_search"
+ },
+ "azureSearchChatExtensionParameters": {
+ "required": [
+ "authentication",
+ "endpoint",
+ "index_name"
+ ],
+ "type": "object",
+ "properties": {
+ "authentication": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataAccessTokenAuthenticationOptions"
+ }
+ ]
+ },
+ "top_n_documents": {
+ "type": "integer",
+ "description": "The configured top number of documents to feature for the configured query.",
+ "format": "int32"
+ },
+ "max_search_queries": {
+ "type": "integer",
+ "description": "The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.",
+ "format": "int32"
+ },
+ "allow_partial_result": {
+ "type": "boolean",
+ "default": false,
+ "description": "If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails."
+ },
+ "in_scope": {
+ "type": "boolean",
+ "description": "Whether queries should be restricted to use of indexed data."
+ },
+ "strictness": {
+ "maximum": 5,
+ "minimum": 1,
+ "type": "integer",
+ "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.",
+ "format": "int32"
+ },
+ "endpoint": {
+ "type": "string",
+ "description": "The absolute endpoint path for the Azure Search resource to use.",
+ "format": "uri"
+ },
+ "index_name": {
+ "type": "string",
+ "description": "The name of the index to use as available in the referenced Azure Search resource."
+ },
+ "fields_mapping": {
+ "$ref": "#/components/schemas/azureSearchIndexFieldMappingOptions"
+ },
+ "query_type": {
+ "$ref": "#/components/schemas/azureSearchQueryType"
+ },
+ "semantic_configuration": {
+ "type": "string",
+ "description": "The additional semantic configuration for the query."
+ },
+ "filter": {
+ "type": "string",
+ "description": "Search filter."
+ },
+ "embedding_dependency": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataEndpointVectorizationSource"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataIntegratedVectorizationSource"
+ }
+ ]
+ },
+ "include_contexts": {
+ "type": "array",
+ "description": "The included properties of the output context. If not specified, the default value is `citations` and `intent`.",
+ "items": {
+ "$ref": "#/components/schemas/onYourDataContextProperty"
+ }
+ }
+ },
+ "description": "Parameters for Azure Search when used as an Azure OpenAI chat extension."
+ },
+ "azureSearchIndexFieldMappingOptions": {
+ "type": "object",
+ "properties": {
+ "title_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a title."
+ },
+ "url_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a URL."
+ },
+ "filepath_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a filepath."
+ },
+ "content_fields": {
+ "type": "array",
+ "description": "The names of index fields that should be treated as content.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "content_fields_separator": {
+ "type": "string",
+ "description": "The separator pattern that content fields should use."
+ },
+ "vector_fields": {
+ "type": "array",
+ "description": "The names of fields that represent vector data.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "image_vector_fields": {
+ "type": "array",
+ "description": "The names of fields that represent image vector data.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "description": "Optional settings to control how fields are processed when using a configured Azure Search resource."
+ },
+ "azureSearchQueryType": {
+ "type": "string",
+ "description": "The type of Azure Search retrieval query that should be executed when using it as an Azure OpenAI chat extension.",
+ "enum": [
+ "simple",
+ "semantic",
+ "vector",
+ "vector_simple_hybrid",
+ "vector_semantic_hybrid"
+ ],
+ "x-ms-enum": {
+ "name": "AzureSearchQueryType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "simple",
+ "value": "simple",
+ "description": "Represents the default, simple query parser."
+ },
+ {
+ "name": "semantic",
+ "value": "semantic",
+ "description": "Represents the semantic query parser for advanced semantic modeling."
+ },
+ {
+ "name": "vector",
+ "value": "vector",
+ "description": "Represents vector search over computed data."
+ },
+ {
+ "name": "vectorSimpleHybrid",
+ "value": "vector_simple_hybrid",
+ "description": "Represents a combination of the simple query strategy with vector data."
+ },
+ {
+ "name": "vectorSemanticHybrid",
+ "value": "vector_semantic_hybrid",
+ "description": "Represents a combination of semantic search and vector data querying."
+ }
+ ]
+ }
+ },
+ "azureCosmosDBChatExtensionConfiguration": {
+ "required": [
+ "parameters"
+ ],
+ "description": "A specific representation of configurable options for Azure Cosmos DB when using it as an Azure OpenAI chat\nextension.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/azureChatExtensionConfiguration"
+ },
+ {
+ "properties": {
+ "parameters": {
+ "$ref": "#/components/schemas/azureCosmosDBChatExtensionParameters"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "azure_cosmos_db"
+ },
+ "azureCosmosDBChatExtensionParameters": {
+ "required": [
+ "authentication",
+ "container_name",
+ "database_name",
+ "embedding_dependency",
+ "fields_mapping",
+ "index_name"
+ ],
+ "type": "object",
+ "properties": {
+ "authentication": {
+ "$ref": "#/components/schemas/onYourDataConnectionStringAuthenticationOptions"
+ },
+ "top_n_documents": {
+ "type": "integer",
+ "description": "The configured top number of documents to feature for the configured query.",
+ "format": "int32"
+ },
+ "max_search_queries": {
+ "type": "integer",
+ "description": "The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.",
+ "format": "int32"
+ },
+ "allow_partial_result": {
+ "type": "boolean",
+ "default": false,
+ "description": "If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails."
+ },
+ "in_scope": {
+ "type": "boolean",
+ "description": "Whether queries should be restricted to use of indexed data."
+ },
+ "strictness": {
+ "maximum": 5,
+ "minimum": 1,
+ "type": "integer",
+ "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.",
+ "format": "int32"
+ },
+ "database_name": {
+ "type": "string",
+ "description": "The MongoDB vCore database name to use with Azure Cosmos DB."
+ },
+ "container_name": {
+ "type": "string",
+ "description": "The name of the Azure Cosmos DB resource container."
+ },
+ "index_name": {
+ "type": "string",
+ "description": "The MongoDB vCore index name to use with Azure Cosmos DB."
+ },
+ "fields_mapping": {
+ "$ref": "#/components/schemas/azureCosmosDBFieldMappingOptions"
+ },
+ "embedding_dependency": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataEndpointVectorizationSource"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ }
+ ]
+ },
+ "include_contexts": {
+ "type": "array",
+ "description": "The included properties of the output context. If not specified, the default value is `citations` and `intent`.",
+ "items": {
+ "$ref": "#/components/schemas/onYourDataContextProperty"
+ }
+ }
+ },
+ "description": "Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Azure Cosmos DB for\nMongoDB vCore."
+ },
+ "azureCosmosDBFieldMappingOptions": {
+ "required": [
+ "content_fields",
+ "vector_fields"
+ ],
+ "type": "object",
+ "properties": {
+ "title_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a title."
+ },
+ "url_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a URL."
+ },
+ "filepath_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a filepath."
+ },
+ "content_fields": {
+ "type": "array",
+ "description": "The names of index fields that should be treated as content.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "content_fields_separator": {
+ "type": "string",
+ "description": "The separator pattern that content fields should use."
+ },
+ "vector_fields": {
+ "type": "array",
+ "description": "The names of fields that represent vector data.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "description": "Optional settings to control how fields are processed when using a configured Azure Cosmos DB resource."
+ },
+ "elasticsearchChatExtensionConfiguration": {
+ "required": [
+ "parameters"
+ ],
+ "description": "A specific representation of configurable options for Elasticsearch when using it as an Azure OpenAI chat\nextension.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/azureChatExtensionConfiguration"
+ },
+ {
+ "properties": {
+ "parameters": {
+ "$ref": "#/components/schemas/elasticsearchChatExtensionParameters"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "elasticsearch"
+ },
+ "elasticsearchChatExtensionParameters": {
+ "required": [
+ "authentication",
+ "endpoint",
+ "index_name"
+ ],
+ "type": "object",
+ "properties": {
+ "authentication": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataKeyAndKeyIdAuthenticationOptions"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataEncodedApiKeyAuthenticationOptions"
+ }
+ ]
+ },
+ "top_n_documents": {
+ "type": "integer",
+ "description": "The configured top number of documents to feature for the configured query.",
+ "format": "int32"
+ },
+ "max_search_queries": {
+ "type": "integer",
+ "description": "The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.",
+ "format": "int32"
+ },
+ "allow_partial_result": {
+ "type": "boolean",
+ "default": false,
+ "description": "If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails."
+ },
+ "in_scope": {
+ "type": "boolean",
+ "description": "Whether queries should be restricted to use of indexed data."
+ },
+ "strictness": {
+ "maximum": 5,
+ "minimum": 1,
+ "type": "integer",
+ "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.",
+ "format": "int32"
+ },
+ "endpoint": {
+ "type": "string",
+ "description": "The endpoint of Elasticsearch®.",
+ "format": "uri"
+ },
+ "index_name": {
+ "type": "string",
+ "description": "The index name of Elasticsearch®."
+ },
+ "fields_mapping": {
+ "$ref": "#/components/schemas/elasticsearchIndexFieldMappingOptions"
+ },
+ "query_type": {
+ "$ref": "#/components/schemas/elasticsearchQueryType"
+ },
+ "embedding_dependency": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataEndpointVectorizationSource"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataModelIdVectorizationSource"
+ }
+ ]
+ },
+ "include_contexts": {
+ "type": "array",
+ "description": "The included properties of the output context. If not specified, the default value is `citations` and `intent`.",
+ "items": {
+ "$ref": "#/components/schemas/onYourDataContextProperty"
+ }
+ }
+ },
+ "description": "Parameters to use when configuring Elasticsearch® as an Azure OpenAI chat extension. "
+ },
+ "elasticsearchIndexFieldMappingOptions": {
+ "type": "object",
+ "properties": {
+ "title_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a title."
+ },
+ "url_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a URL."
+ },
+ "filepath_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a filepath."
+ },
+ "content_fields": {
+ "type": "array",
+ "description": "The names of index fields that should be treated as content.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "content_fields_separator": {
+ "type": "string",
+ "description": "The separator pattern that content fields should use."
+ },
+ "vector_fields": {
+ "type": "array",
+ "description": "The names of fields that represent vector data.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "description": "Optional settings to control how fields are processed when using a configured Elasticsearch® resource."
+ },
+ "elasticsearchQueryType": {
+ "type": "string",
+ "description": "The type of Elasticsearch® retrieval query that should be executed when using it as an Azure OpenAI chat extension.",
+ "enum": [
+ "simple",
+ "vector"
+ ],
+ "x-ms-enum": {
+ "name": "ElasticsearchQueryType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "simple",
+ "value": "simple",
+ "description": "Represents the default, simple query parser."
+ },
+ {
+ "name": "vector",
+ "value": "vector",
+ "description": "Represents vector search over computed data."
+ }
+ ]
+ }
+ },
+ "mongoDBChatExtensionConfiguration": {
+ "required": [
+ "parameters"
+ ],
+ "description": "A specific representation of configurable options for Mongo DB when using it as an Azure OpenAI chat\nextension.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/azureChatExtensionConfiguration"
+ },
+ {
+ "properties": {
+ "parameters": {
+ "$ref": "#/components/schemas/mongoDBChatExtensionParameters"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "mongo_db"
+ },
+ "mongoDBChatExtensionParameters": {
+ "required": [
+ "authentication",
+ "app_name",
+ "collection_name",
+ "database_name",
+ "endpoint",
+ "embedding_dependency",
+ "fields_mapping",
+ "index_name"
+ ],
+ "type": "object",
+ "properties": {
+ "authentication": {
+ "$ref": "#/components/schemas/onYourDataUsernameAndPasswordAuthenticationOptions"
+ },
+ "top_n_documents": {
+ "type": "integer",
+ "description": "The configured top number of documents to feature for the configured query.",
+ "format": "int32"
+ },
+ "max_search_queries": {
+ "type": "integer",
+ "description": "The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.",
+ "format": "int32"
+ },
+ "allow_partial_result": {
+ "type": "boolean",
+ "default": false,
+ "description": "If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails."
+ },
+ "in_scope": {
+ "type": "boolean",
+ "description": "Whether queries should be restricted to use of indexed data."
+ },
+ "strictness": {
+ "maximum": 5,
+ "minimum": 1,
+ "type": "integer",
+ "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.",
+ "format": "int32"
+ },
+ "endpoint": {
+ "type": "string",
+ "description": "The name of the Mongo DB cluster endpoint."
+ },
+ "database_name": {
+ "type": "string",
+ "description": "The name of the Mongo DB database."
+ },
+ "collection_name": {
+ "type": "string",
+ "description": "The name of the Mongo DB Collection."
+ },
+ "app_name": {
+ "type": "string",
+ "description": "The name of the Mongo DB Application."
+ },
+ "index_name": {
+ "type": "string",
+ "description": "The The name of the Mongo DB index."
+ },
+ "fields_mapping": {
+ "$ref": "#/components/schemas/mongoDBFieldMappingOptions"
+ },
+ "embedding_dependency": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataEndpointVectorizationSource"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ }
+ ]
+ },
+ "include_contexts": {
+ "type": "array",
+ "description": "The included properties of the output context. If not specified, the default value is `citations` and `intent`.",
+ "items": {
+ "$ref": "#/components/schemas/onYourDataContextProperty"
+ }
+ }
+ },
+ "description": "Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Mongo DB."
+ },
+ "mongoDBFieldMappingOptions": {
+ "required": [
+ "content_fields",
+ "vector_fields"
+ ],
+ "type": "object",
+ "properties": {
+ "title_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a title."
+ },
+ "url_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a URL."
+ },
+ "filepath_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a filepath."
+ },
+ "content_fields": {
+ "type": "array",
+ "description": "The names of index fields that should be treated as content.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "content_fields_separator": {
+ "type": "string",
+ "description": "The separator pattern that content fields should use."
+ },
+ "vector_fields": {
+ "type": "array",
+ "description": "The names of fields that represent vector data.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "description": "Optional settings to control how fields are processed when using a configured Mongo DB resource."
+ },
+ "pineconeChatExtensionConfiguration": {
+ "required": [
+ "parameters"
+ ],
+ "description": "A specific representation of configurable options for Pinecone when using it as an Azure OpenAI chat\nextension.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/azureChatExtensionConfiguration"
+ },
+ {
+ "properties": {
+ "parameters": {
+ "$ref": "#/components/schemas/pineconeChatExtensionParameters"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "pinecone"
+ },
+ "pineconeChatExtensionParameters": {
+ "required": [
+ "authentication",
+ "embedding_dependency",
+ "environment",
+ "fields_mapping",
+ "index_name"
+ ],
+ "type": "object",
+ "properties": {
+ "authentication": {
+ "$ref": "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ },
+ "top_n_documents": {
+ "type": "integer",
+ "description": "The configured top number of documents to feature for the configured query.",
+ "format": "int32"
+ },
+ "max_search_queries": {
+ "type": "integer",
+ "description": "The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.",
+ "format": "int32"
+ },
+ "allow_partial_result": {
+ "type": "boolean",
+ "default": false,
+ "description": "If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails."
+ },
+ "in_scope": {
+ "type": "boolean",
+ "description": "Whether queries should be restricted to use of indexed data."
+ },
+ "strictness": {
+ "maximum": 5,
+ "minimum": 1,
+ "type": "integer",
+ "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.",
+ "format": "int32"
+ },
+ "environment": {
+ "type": "string",
+ "description": "The environment name of Pinecone."
+ },
+ "index_name": {
+ "type": "string",
+ "description": "The name of the Pinecone database index."
+ },
+ "fields_mapping": {
+ "$ref": "#/components/schemas/pineconeFieldMappingOptions"
+ },
+ "embedding_dependency": {
+ "$ref": "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ },
+ "include_contexts": {
+ "type": "array",
+ "description": "The included properties of the output context. If not specified, the default value is `citations` and `intent`.",
+ "items": {
+ "$ref": "#/components/schemas/onYourDataContextProperty"
+ }
+ }
+ },
+ "description": "Parameters for configuring Azure OpenAI Pinecone chat extensions."
+ },
+ "pineconeFieldMappingOptions": {
+ "required": [
+ "content_fields"
+ ],
+ "type": "object",
+ "properties": {
+ "title_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a title."
+ },
+ "url_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a URL."
+ },
+ "filepath_field": {
+ "type": "string",
+ "description": "The name of the index field to use as a filepath."
+ },
+ "content_fields": {
+ "type": "array",
+ "description": "The names of index fields that should be treated as content.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "content_fields_separator": {
+ "type": "string",
+ "description": "The separator pattern that content fields should use."
+ }
+ },
+ "description": "Optional settings to control how fields are processed when using a configured Pinecone resource."
+ },
+ "onYourDataAuthenticationOptions": {
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/components/schemas/onYourDataAuthenticationType"
+ }
+ },
+ "description": "The authentication options for Azure OpenAI On Your Data.",
+ "discriminator": {
+ "propertyName": "type",
+ "mapping": {
+ "api_key": "#/components/schemas/onYourDataApiKeyAuthenticationOptions",
+ "connection_string": "#/components/schemas/onYourDataConnectionStringAuthenticationOptions",
+ "key_and_key_id": "#/components/schemas/onYourDataKeyAndKeyIdAuthenticationOptions",
+ "encoded_api_key": "#/components/schemas/onYourDataEncodedApiKeyAuthenticationOptions",
+ "access_token": "#/components/schemas/onYourDataAccessTokenAuthenticationOptions",
+ "system_assigned_managed_identity": "#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions",
+ "user_assigned_managed_identity": "#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions",
+ "username_and_password": "#/components/schemas/onYourDataUsernameAndPasswordAuthenticationOptions"
+ }
+ }
+ },
+ "onYourDataContextProperty": {
+ "type": "string",
+ "description": "The context property.",
+ "enum": [
+ "citations",
+ "intent",
+ "all_retrieved_documents"
+ ],
+ "x-ms-enum": {
+ "name": "OnYourDataContextProperty",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "citations",
+ "value": "citations",
+ "description": "The `citations` property."
+ },
+ {
+ "name": "intent",
+ "value": "intent",
+ "description": "The `intent` property."
+ },
+ {
+ "name": "allRetrievedDocuments",
+ "value": "all_retrieved_documents",
+ "description": "The `all_retrieved_documents` property."
+ }
+ ]
+ }
+ },
+ "onYourDataAuthenticationType": {
+ "type": "string",
+ "description": "The authentication types supported with Azure OpenAI On Your Data.",
+ "enum": [
+ "api_key",
+ "connection_string",
+ "key_and_key_id",
+ "encoded_api_key",
+ "access_token",
+ "system_assigned_managed_identity",
+ "user_assigned_managed_identity",
+ "username_and_password"
+ ],
+ "x-ms-enum": {
+ "name": "OnYourDataAuthenticationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "apiKey",
+ "value": "api_key",
+ "description": "Authentication via API key."
+ },
+ {
+ "name": "connectionString",
+ "value": "connection_string",
+ "description": "Authentication via connection string."
+ },
+ {
+ "name": "keyAndKeyId",
+ "value": "key_and_key_id",
+ "description": "Authentication via key and key ID pair."
+ },
+ {
+ "name": "encodedApiKey",
+ "value": "encoded_api_key",
+ "description": "Authentication via encoded API key."
+ },
+ {
+ "name": "accessToken",
+ "value": "access_token",
+ "description": "Authentication via access token."
+ },
+ {
+ "name": "systemAssignedManagedIdentity",
+ "value": "system_assigned_managed_identity",
+ "description": "Authentication via system-assigned managed identity."
+ },
+ {
+ "name": "userAssignedManagedIdentity",
+ "value": "user_assigned_managed_identity",
+ "description": "Authentication via user-assigned managed identity."
+ },
+ {
+ "name": "usernameAndPassword",
+ "value": "username_and_password",
+ "description": "Authentication via username and password."
+ }
+ ]
+ }
+ },
+ "onYourDataApiKeyAuthenticationOptions": {
+ "required": [
+ "key"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using an API key.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The API key to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "api_key"
+ },
+ "onYourDataConnectionStringAuthenticationOptions": {
+ "required": [
+ "connection_string"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using a connection string.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "connection_string": {
+ "type": "string",
+ "description": "The connection string to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "connection_string"
+ },
+ "onYourDataKeyAndKeyIdAuthenticationOptions": {
+ "required": [
+ "key",
+ "key_id"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using an Elasticsearch key and key ID pair.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The Elasticsearch key to use for authentication."
+ },
+ "key_id": {
+ "type": "string",
+ "description": "The Elasticsearch key ID to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "key_and_key_id"
+ },
+ "onYourDataEncodedApiKeyAuthenticationOptions": {
+ "required": [
+ "encoded_api_key"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using an Elasticsearch encoded API key.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "encoded_api_key": {
+ "type": "string",
+ "description": "The Elasticsearch encoded API key to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "encoded_api_key"
+ },
+ "onYourDataAccessTokenAuthenticationOptions": {
+ "required": [
+ "access_token"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using access token.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "access_token": {
+ "type": "string",
+ "description": "The access token to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "access_token"
+ },
+ "onYourDataSystemAssignedManagedIdentityAuthenticationOptions": {
+ "description": "The authentication options for Azure OpenAI On Your Data when using a system-assigned managed identity.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ }
+ ],
+ "x-ms-discriminator-value": "system_assigned_managed_identity"
+ },
+ "onYourDataUserAssignedManagedIdentityAuthenticationOptions": {
+ "required": [
+ "managed_identity_resource_id"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using a user-assigned managed identity.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "managed_identity_resource_id": {
+ "type": "string",
+ "description": "The resource ID of the user-assigned managed identity to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "user_assigned_managed_identity"
+ },
+ "onYourDataUsernameAndPasswordAuthenticationOptions": {
+ "required": [
+ "username",
+ "password"
+ ],
+ "description": "The authentication options for Azure OpenAI On Your Data when using a username and a password.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataAuthenticationOptions"
+ },
+ {
+ "properties": {
+ "username": {
+ "type": "string",
+ "description": "The username to use for authentication."
+ },
+ "password": {
+ "type": "string",
+ "description": "The password. to use for authentication."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "username_and_password"
+ },
+ "onYourDataVectorizationSource": {
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/components/schemas/onYourDataVectorizationSourceType"
+ }
+ },
+ "description": "An abstract representation of a vectorization source for Azure OpenAI On Your Data with vector search.",
+ "discriminator": {
+ "propertyName": "type",
+ "mapping": {
+ "endpoint": "#/components/schemas/onYourDataEndpointVectorizationSource",
+ "deployment_name": "#/components/schemas/onYourDataDeploymentNameVectorizationSource",
+ "integrated": "#/components/schemas/onYourDataIntegratedVectorizationSource",
+ "model_id": "#/components/schemas/onYourDataModelIdVectorizationSource"
+ }
+ }
+ },
+ "onYourDataVectorizationSourceType": {
+ "type": "string",
+ "description": "Represents the available sources Azure OpenAI On Your Data can use to configure vectorization of data for use with\nvector search.",
+ "enum": [
+ "endpoint",
+ "deployment_name",
+ "integrated",
+ "model_id"
+ ],
+ "x-ms-enum": {
+ "name": "OnYourDataVectorizationSourceType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "endpoint",
+ "value": "endpoint",
+ "description": "Represents vectorization performed by public service calls to an Azure OpenAI embedding model."
+ },
+ {
+ "name": "deploymentName",
+ "value": "deployment_name",
+ "description": "Represents an Ada model deployment name to use. This model deployment must be in the same Azure OpenAI resource, but\nOn Your Data will use this model deployment via an internal call rather than a public one, which enables vector\nsearch even in private networks."
+ },
+ {
+ "name": "integrated",
+ "value": "integrated",
+ "description": "Represents the integrated vectorizer defined within the search resource."
+ },
+ {
+ "name": "modelId",
+ "value": "model_id",
+ "description": "Represents a specific embedding model ID as defined in the search service.\nCurrently only supported by Elasticsearch®."
+ }
+ ]
+ }
+ },
+ "onYourDataEndpointVectorizationSource": {
+ "required": [
+ "authentication",
+ "endpoint"
+ ],
+ "description": "The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based\non a public Azure OpenAI endpoint call for embeddings.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataVectorizationSource"
+ },
+ {
+ "properties": {
+ "endpoint": {
+ "type": "string",
+ "description": "Specifies the resource endpoint URL from which embeddings should be retrieved. It should be in the format of https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings. The api-version query parameter is not allowed.",
+ "format": "uri"
+ },
+ "authentication": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ },
+ {
+ "$ref": "#/components/schemas/onYourDataAccessTokenAuthenticationOptions"
+ }
+ ]
+ },
+ "dimensions": {
+ "type": "integer",
+ "description": "The number of dimensions the embeddings should have. Only supported in `text-embedding-3` and later models.",
+ "format": "int32"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "endpoint"
+ },
+ "onYourDataDeploymentNameVectorizationSource": {
+ "required": [
+ "deployment_name"
+ ],
+ "description": "The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based\non an internal embeddings model deployment name in the same Azure OpenAI resource.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataVectorizationSource"
+ },
+ {
+ "properties": {
+ "deployment_name": {
+ "type": "string",
+ "description": "Specifies the name of the model deployment to use for vectorization. This model deployment must be in the same Azure OpenAI resource, but On Your Data will use this model deployment via an internal call rather than a public one, which enables vector search even in private networks."
+ },
+ "dimensions": {
+ "type": "integer",
+ "description": "The number of dimensions the embeddings should have. Only supported in `text-embedding-3` and later models.",
+ "format": "int32"
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "deployment_name"
+ },
+ "onYourDataIntegratedVectorizationSource": {
+ "description": "Represents the integrated vectorizer defined within the search resource.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataVectorizationSource"
+ }
+ ],
+ "x-ms-discriminator-value": "integrated"
+ },
+ "onYourDataModelIdVectorizationSource": {
+ "required": [
+ "model_id"
+ ],
+ "description": "The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based\non a search service model ID. Currently only supported by Elasticsearch®.",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/onYourDataVectorizationSource"
+ },
+ {
+ "properties": {
+ "model_id": {
+ "type": "string",
+ "description": "Specifies the model ID to use for vectorization. This model ID must be defined in the search service."
+ }
+ }
+ }
+ ],
+ "x-ms-discriminator-value": "model_id"
+ },
+ "azureChatExtensionsMessageContext": {
+ "type": "object",
+ "properties": {
+ "citations": {
+ "type": "array",
+ "description": "The data source retrieval result, used to generate the assistant message in the response.",
+ "items": {
+ "$ref": "#/components/schemas/citation"
+ },
+ "x-ms-identifiers": []
+ },
+ "intent": {
+ "type": "string",
+ "description": "The detected intent from the chat history, used to pass to the next turn to carry over the context."
+ },
+ "all_retrieved_documents": {
+ "type": "array",
+ "description": "All the retrieved documents.",
+ "items": {
+ "$ref": "#/components/schemas/retrievedDocument"
+ }
+ }
+ },
+ "description": " A representation of the additional context information available when Azure OpenAI chat extensions are involved\n in the generation of a corresponding chat completions response. This context information is only populated when\n using an Azure OpenAI request configured to use a matching extension."
+ },
+ "citation": {
+ "required": [
+ "content"
+ ],
+ "type": "object",
+ "properties": {
+ "content": {
+ "type": "string",
+ "description": "The content of the citation."
+ },
+ "title": {
+ "type": "string",
+ "description": "The title of the citation."
+ },
+ "url": {
+ "type": "string",
+ "description": "The URL of the citation."
+ },
+ "filepath": {
+ "type": "string",
+ "description": "The file path of the citation."
+ },
+ "chunk_id": {
+ "type": "string",
+ "description": "The chunk ID of the citation."
+ },
+ "rerank_score": {
+ "type": "number",
+ "description": "The rerank score of the retrieved document.",
+ "format": "double"
+ }
+ },
+ "description": "citation information for a chat completions response message."
+ },
+ "retrievedDocument": {
+ "type": "object",
+ "description": "The retrieved document.",
+ "required": [
+ "search_queries",
+ "data_source_index",
+ "original_search_score"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/citation"
+ },
+ {
+ "properties": {
+ "search_queries": {
+ "type": "array",
+ "description": "The search queries used to retrieve the document.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "data_source_index": {
+ "type": "integer",
+ "description": "The index of the data source.",
+ "format": "int32"
+ },
+ "original_search_score": {
+ "type": "number",
+ "description": "The original search score of the retrieved document.",
+ "format": "double"
+ },
+ "filter_reason": {
+ "$ref": "#/components/schemas/filterReason",
+ "description": "Represents the rationale for filtering the document. If the document does not undergo filtering, this field will remain unset."
+ }
+ }
+ }
+ ]
+ },
+ "filterReason": {
+ "type": "string",
+ "description": "The filtering reason of the retrieved document.",
+ "enum": [
+ "score",
+ "rerank"
+ ],
+ "x-ms-enum": {
+ "name": "FilterReason",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "score",
+ "value": "score",
+ "description": "The document is filtered by original search score threshold defined by `strictness` configure."
+ },
+ {
+ "name": "rerank",
+ "value": "rerank",
+ "description": "The document is not filtered by original search score threshold, but is filtered by rerank score and `top_n_documents` configure."
+ }
+ ]
+ }
+ },
+ "chatCompletionMessageToolCall": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call."
+ },
+ "type": {
+ "$ref": "#/components/schemas/toolCallType"
+ },
+ "function": {
+ "type": "object",
+ "description": "The function that the model called.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ },
+ "arguments": {
+ "type": "string",
+ "description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function."
+ }
+ },
+ "required": [
+ "name",
+ "arguments"
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "type",
+ "function"
+ ]
+ },
+ "toolCallType": {
+ "type": "string",
+ "enum": [
+ "function"
+ ],
+ "description": "The type of the tool call, in this case `function`.",
+ "x-ms-enum": {
+ "name": "ToolCallType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "function",
+ "description": "The tool call type is function."
+ }
+ ]
+ }
+ },
+ "chatCompletionRequestMessageTool": {
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessage"
+ },
+ {
+ "type": "object",
+ "nullable": true,
+ "properties": {
+ "tool_call_id": {
+ "type": "string",
+ "description": "Tool call that this message is responding to."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message.",
+ "nullable": true
+ }
+ }
+ }
+ ],
+ "required": [
+ "tool_call_id",
+ "content"
+ ]
+ },
+ "chatCompletionRequestMessageFunction": {
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/chatCompletionRequestMessage"
+ },
+ {
+ "type": "object",
+ "description": "Deprecated. Message that represents a function.",
+ "nullable": true,
+ "properties": {
+ "role": {
+ "type": "string",
+ "enum": [
+ "function"
+ ],
+ "description": "The role of the messages author, in this case `function`."
+ },
+ "name": {
+ "type": "string",
+ "description": "The contents of the message."
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message.",
+ "nullable": true
+ }
+ }
+ }
+ ],
+ "required": [
+ "function_call_id",
+ "content"
+ ]
+ },
+ "createChatCompletionResponse": {
+ "type": "object",
+ "description": "Represents a chat completion response returned by model, based on the provided input.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "A unique identifier for the chat completion."
+ },
+ "prompt_filter_results": {
+ "$ref": "#/components/schemas/promptFilterResults"
+ },
+ "choices": {
+ "type": "array",
+ "description": "A list of chat completion choices. Can be more than one if `n` is greater than 1.",
+ "items": {
+ "type": "object",
+ "required": [
+ "finish_reason",
+ "index",
+ "message",
+ "logprobs"
+ ],
+ "properties": {
+ "finish_reason": {
+ "type": "string",
+ "description": "The reason the model stopped generating tokens. This will be `stop` if the model hit a natural stop point or a provided stop sequence,\n`length` if the maximum number of tokens specified in the request was reached,\n`content_filter` if content was omitted due to a flag from our content filters,\n`tool_calls` if the model called a tool, or `function_call` (deprecated) if the model called a function.\n",
+ "enum": [
+ "stop",
+ "length",
+ "tool_calls",
+ "content_filter",
+ "function_call"
+ ]
+ },
+ "index": {
+ "type": "integer",
+ "description": "The index of the choice in the list of choices."
+ },
+ "message": {
+ "$ref": "#/components/schemas/chatCompletionResponseMessage"
+ },
+ "content_filter_results": {
+ "$ref": "#/components/schemas/contentFilterChoiceResults"
+ },
+ "logprobs": {
+ "description": "Log probability information for the choice.",
+ "type": "object",
+ "nullable": true,
+ "properties": {
+ "content": {
+ "description": "A list of message content tokens with log probability information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTokenLogprob"
+ },
+ "nullable": true
+ },
+ "refusal": {
+ "description": "A list of message refusal tokens with log probability information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTokenLogprob"
+ },
+ "nullable": true
+ }
+ },
+ "required": [
+ "content",
+ "refusal"
+ ]
+ }
+ }
+ }
+ },
+ "created": {
+ "type": "integer",
+ "description": "The Unix timestamp (in seconds) of when the chat completion was created."
+ },
+ "model": {
+ "type": "string",
+ "description": "The model used for the chat completion."
+ },
+ "system_fingerprint": {
+ "type": "string",
+ "description": "This fingerprint represents the backend configuration that the model runs with.\n\nCan be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism.\n"
+ },
+ "object": {
+ "type": "string",
+ "description": "The object type, which is always `chat.completion`.",
+ "enum": [
+ "chat.completion"
+ ]
+ },
+ "usage": {
+ "$ref": "#/components/schemas/completionUsage"
+ }
+ },
+ "required": [
+ "choices",
+ "created",
+ "id",
+ "model",
+ "object"
+ ]
+ },
+ "createChatCompletionStreamResponse": {
+ "type": "object",
+ "description": "Represents a streamed chunk of a chat completion response returned by model, based on the provided input.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "A unique identifier for the chat completion. Each chunk has the same ID."
+ },
+ "choices": {
+ "type": "array",
+ "description": "A list of chat completion choices. Can contain more than one elements if `n` is greater than 1.\n",
+ "items": {
+ "type": "object",
+ "required": [
+ "delta",
+ "finish_reason",
+ "index"
+ ],
+ "properties": {
+ "delta": {
+ "$ref": "#/components/schemas/chatCompletionStreamResponseDelta"
+ },
+ "logprobs": {
+ "description": "Log probability information for the choice.",
+ "type": "object",
+ "nullable": true,
+ "properties": {
+ "content": {
+ "description": "A list of message content tokens with log probability information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTokenLogprob"
+ },
+ "nullable": true
+ },
+ "refusal": {
+ "description": "A list of message refusal tokens with log probability information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTokenLogprob"
+ },
+ "nullable": true
+ }
+ },
+ "required": [
+ "content",
+ "refusal"
+ ]
+ },
+ "finish_reason": {
+ "type": "string",
+ "description": "The reason the model stopped generating tokens. This will be `stop` if the model hit a natural stop point or a provided stop sequence,\n`length` if the maximum number of tokens specified in the request was reached,\n`content_filter` if content was omitted due to a flag from our content filters,\n`tool_calls` if the model called a tool, or `function_call` (deprecated) if the model called a function.\n",
+ "enum": [
+ "stop",
+ "length",
+ "tool_calls",
+ "content_filter",
+ "function_call"
+ ],
+ "nullable": true
+ },
+ "index": {
+ "type": "integer",
+ "description": "The index of the choice in the list of choices."
+ }
+ }
+ }
+ },
+ "created": {
+ "type": "integer",
+ "description": "The Unix timestamp (in seconds) of when the chat completion was created. Each chunk has the same timestamp."
+ },
+ "model": {
+ "type": "string",
+ "description": "The model to generate the completion."
+ },
+ "system_fingerprint": {
+ "type": "string",
+ "description": "This fingerprint represents the backend configuration that the model runs with.\nCan be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism.\n"
+ },
+ "object": {
+ "type": "string",
+ "description": "The object type, which is always `chat.completion.chunk`.",
+ "enum": [
+ "chat.completion.chunk"
+ ],
+ "required": [
+ "prompt_tokens",
+ "completion_tokens",
+ "total_tokens"
+ ]
+ }
+ },
+ "required": [
+ "choices",
+ "created",
+ "id",
+ "model",
+ "object"
+ ]
+ },
+ "chatCompletionStreamResponseDelta": {
+ "type": "object",
+ "description": "A chat completion delta generated by streamed model responses.",
+ "properties": {
+ "content": {
+ "type": "string",
+ "description": "The contents of the chunk message.",
+ "nullable": true
+ },
+ "function_call": {
+ "deprecated": true,
+ "type": "object",
+ "description": "Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model.",
+ "properties": {
+ "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."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ }
+ },
+ "tool_calls": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionMessageToolCallChunk"
+ }
+ },
+ "role": {
+ "type": "string",
+ "enum": [
+ "system",
+ "user",
+ "assistant",
+ "tool"
+ ],
+ "description": "The role of the author of this message."
+ },
+ "refusal": {
+ "type": "string",
+ "description": "The refusal message generated by the model.",
+ "nullable": true
+ }
+ }
+ },
+ "chatCompletionMessageToolCallChunk": {
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer"
+ },
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call."
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "function"
+ ],
+ "description": "The type of the tool. Currently, only `function` is supported."
+ },
+ "function": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ },
+ "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": [
+ "index"
+ ]
+ },
+ "chatCompletionStreamOptions": {
+ "description": "Options for streaming response. Only set this when you set `stream: true`.\n",
+ "type": "object",
+ "nullable": true,
+ "default": null,
+ "properties": {
+ "include_usage": {
+ "type": "boolean",
+ "description": "If set, an additional chunk will be streamed before the `data: [DONE]` message. The `usage` field on this chunk shows the token usage statistics for the entire request, and the `choices` field will always be an empty array. All other chunks will also include a `usage` field, but with a null value.\n"
+ }
+ }
+ },
+ "chatCompletionChoiceLogProbs": {
+ "description": "Log probability information for the choice.",
+ "type": "object",
+ "nullable": true,
+ "properties": {
+ "content": {
+ "description": "A list of message content tokens with log probability information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTokenLogprob"
+ },
+ "nullable": true
+ },
+ "refusal": {
+ "description": "A list of message refusal tokens with log probability information.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionTokenLogprob"
+ },
+ "nullable": true
+ }
+ },
+ "required": [
+ "content"
+ ]
+ },
+ "chatCompletionTokenLogprob": {
+ "type": "object",
+ "properties": {
+ "token": {
+ "description": "The token.",
+ "type": "string"
+ },
+ "logprob": {
+ "description": "The log probability of this token.",
+ "type": "number"
+ },
+ "bytes": {
+ "description": "A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token.",
+ "type": "array",
+ "items": {
+ "type": "integer"
+ },
+ "nullable": true
+ },
+ "top_logprobs": {
+ "description": "List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested `top_logprobs` returned.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "token": {
+ "description": "The token.",
+ "type": "string"
+ },
+ "logprob": {
+ "description": "The log probability of this token.",
+ "type": "number"
+ },
+ "bytes": {
+ "description": "A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token.",
+ "type": "array",
+ "items": {
+ "type": "integer"
+ },
+ "nullable": true
+ }
+ },
+ "required": [
+ "token",
+ "logprob",
+ "bytes"
+ ]
+ }
+ }
+ },
+ "required": [
+ "token",
+ "logprob",
+ "bytes",
+ "top_logprobs"
+ ]
+ },
+ "chatCompletionResponseMessage": {
+ "type": "object",
+ "description": "A chat completion message generated by the model.",
+ "properties": {
+ "role": {
+ "$ref": "#/components/schemas/chatCompletionResponseMessageRole"
+ },
+ "refusal": {
+ "type": "string",
+ "description": "The refusal message generated by the model.",
+ "nullable": true
+ },
+ "content": {
+ "type": "string",
+ "description": "The contents of the message.",
+ "nullable": true
+ },
+ "tool_calls": {
+ "type": "array",
+ "description": "The tool calls generated by the model, such as function calls.",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionMessageToolCall"
+ }
+ },
+ "function_call": {
+ "$ref": "#/components/schemas/chatCompletionFunctionCall"
+ },
+ "context": {
+ "$ref": "#/components/schemas/azureChatExtensionsMessageContext"
+ }
+ },
+ "required": [
+ "role",
+ "content",
+ "refusal"
+ ]
+ },
+ "chatCompletionResponseMessageRole": {
+ "type": "string",
+ "enum": [
+ "assistant"
+ ],
+ "description": "The role of the author of the response message."
+ },
+ "chatCompletionToolChoiceOption": {
+ "description": "Controls which (if any) tool is called by the model. `none` means the model will not call any tool and instead generates a message. `auto` means the model can pick between generating a message or calling one or more tools. `required` means the model must call one or more tools. Specifying a particular tool via `{\"type\": \"function\", \"function\": {\"name\": \"my_function\"}}` forces the model to call that tool. `none` is the default when no tools are present. `auto` is the default if tools are present.",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function.",
+ "enum": [
+ "none",
+ "auto",
+ "required"
+ ]
+ },
+ {
+ "$ref": "#/components/schemas/chatCompletionNamedToolChoice"
+ }
+ ]
+ },
+ "chatCompletionNamedToolChoice": {
+ "type": "object",
+ "description": "Specifies a tool the model should use. Use to force the model to call a specific function.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "function"
+ ],
+ "description": "The type of the tool. Currently, only `function` is supported."
+ },
+ "function": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "function"
+ ]
+ },
+ "ParallelToolCalls": {
+ "type": "boolean",
+ "description": "Whether to enable parallel function calling during tool use.",
+ "default": true
+ },
+ "chatCompletionMessageToolCalls": {
+ "type": "array",
+ "description": "The tool calls generated by the model, such as function calls.",
+ "items": {
+ "$ref": "#/components/schemas/chatCompletionMessageToolCall"
+ }
+ },
+ "chatCompletionFunctionCall": {
+ "type": "object",
+ "description": "Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ },
+ "arguments": {
+ "type": "string",
+ "description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function."
+ }
+ },
+ "required": [
+ "name",
+ "arguments"
+ ]
+ },
+ "completionUsage": {
+ "type": "object",
+ "description": "Usage statistics for the completion request.",
+ "properties": {
+ "prompt_tokens": {
+ "type": "integer",
+ "description": "Number of tokens in the prompt."
+ },
+ "completion_tokens": {
+ "type": "integer",
+ "description": "Number of tokens in the generated completion."
+ },
+ "total_tokens": {
+ "type": "integer",
+ "description": "Total number of tokens used in the request (prompt + completion)."
+ },
+ "prompt_tokens_details": {
+ "type": "object",
+ "description": "Details of the prompt tokens.",
+ "properties": {
+ "cached_tokens": {
+ "type": "integer",
+ "description": "The number of cached prompt tokens."
+ }
+ }
+ },
+ "completion_tokens_details": {
+ "type": "object",
+ "description": "Breakdown of tokens used in a completion.",
+ "properties": {
+ "reasoning_tokens": {
+ "type": "integer",
+ "description": "Tokens generated by the model for reasoning."
+ }
+ }
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "completion_tokens",
+ "total_tokens"
+ ]
+ },
+ "chatCompletionTool": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "function"
+ ],
+ "description": "The type of the tool. Currently, only `function` is supported."
+ },
+ "function": {
+ "$ref": "#/components/schemas/FunctionObject"
+ }
+ },
+ "required": [
+ "type",
+ "function"
+ ]
+ },
+ "FunctionParameters": {
+ "type": "object",
+ "description": "The parameters the functions accepts, described as a JSON Schema object. See the guide](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format. \n\nOmitting `parameters` defines a function with an empty parameter list.",
+ "additionalProperties": true
+ },
+ "FunctionObject": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "A description of what the function does, used by the model to choose when and how to call the function."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64."
+ },
+ "parameters": {
+ "$ref": "#/components/schemas/FunctionParameters"
+ },
+ "strict": {
+ "type": "boolean",
+ "nullable": true,
+ "default": false,
+ "description": "Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](docs/guides/function-calling)."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ },
+ "ResponseFormatText": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of response format being defined: `text`",
+ "enum": [
+ "text"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "ResponseFormatJsonObject": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of response format being defined: `json_object`",
+ "enum": [
+ "json_object"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "ResponseFormatJsonSchemaSchema": {
+ "type": "object",
+ "description": "The schema for the response format, described as a JSON Schema object.",
+ "additionalProperties": true
+ },
+ "ResponseFormatJsonSchema": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of response format being defined: `json_schema`",
+ "enum": [
+ "json_schema"
+ ]
+ },
+ "json_schema": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "A description of what the response format is for, used by the model to determine how to respond in the format."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64."
+ },
+ "schema": {
+ "$ref": "#/components/schemas/ResponseFormatJsonSchemaSchema"
+ },
+ "strict": {
+ "type": "boolean",
+ "nullable": true,
+ "default": false,
+ "description": "Whether to enable strict schema adherence when generating the output. If set to true, the model will always follow the exact schema defined in the `schema` field. Only a subset of JSON Schema is supported when `strict` is `true`."
+ }
+ },
+ "required": [
+ "schema",
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "json_schema"
+ ]
+ },
+ "chatCompletionChoiceCommon": {
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer"
+ },
+ "finish_reason": {
+ "type": "string"
+ }
+ }
+ },
+ "createTranslationRequest": {
+ "type": "object",
+ "description": "Translation request.",
+ "properties": {
+ "file": {
+ "type": "string",
+ "description": "The audio file to translate.",
+ "format": "binary"
+ },
+ "prompt": {
+ "type": "string",
+ "description": "An optional text to guide the model's style or continue a previous audio segment. The prompt should be in English."
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/audioResponseFormat"
+ },
+ "temperature": {
+ "type": "number",
+ "default": 0,
+ "description": "The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit."
+ }
+ },
+ "required": [
+ "file"
+ ]
+ },
+ "audioResponse": {
+ "description": "Translation or transcription response when response_format was json",
+ "type": "object",
+ "properties": {
+ "text": {
+ "type": "string",
+ "description": "Translated or transcribed text."
+ }
+ },
+ "required": [
+ "text"
+ ]
+ },
+ "audioVerboseResponse": {
+ "description": "Translation or transcription response when response_format was verbose_json",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/audioResponse"
+ },
+ {
+ "properties": {
+ "task": {
+ "type": "string",
+ "description": "Type of audio task.",
+ "enum": [
+ "transcribe",
+ "translate"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true
+ }
+ },
+ "language": {
+ "type": "string",
+ "description": "Language."
+ },
+ "duration": {
+ "type": "number",
+ "description": "Duration."
+ },
+ "segments": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/audioSegment"
+ }
+ },
+ "words": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/audioWord"
+ }
+ }
+ }
+ }
+ ],
+ "required": [
+ "text"
+ ]
+ },
+ "audioResponseFormat": {
+ "title": "AudioResponseFormat",
+ "description": "Defines the format of the output.",
+ "enum": [
+ "json",
+ "text",
+ "srt",
+ "verbose_json",
+ "vtt"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true
+ }
+ },
+ "createTranscriptionRequest": {
+ "type": "object",
+ "description": "Transcription request.",
+ "properties": {
+ "file": {
+ "type": "string",
+ "description": "The audio file object to transcribe.",
+ "format": "binary"
+ },
+ "prompt": {
+ "type": "string",
+ "description": "An optional text to guide the model's style or continue a previous audio segment. The prompt should match the audio language."
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/audioResponseFormat"
+ },
+ "temperature": {
+ "type": "number",
+ "default": 0,
+ "description": "The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit."
+ },
+ "language": {
+ "type": "string",
+ "description": "The language of the input audio. Supplying the input language in ISO-639-1 format will improve accuracy and latency."
+ },
+ "timestamp_granularities[]": {
+ "type": "array",
+ "description": "The timestamp granularities to populate for this transcription. `response_format` must be set `verbose_json` to use timestamp granularities. Either or both of these options are supported: `word`, or `segment`. Note: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.",
+ "items": {
+ "type": "string",
+ "enum": [
+ "word",
+ "segment"
+ ]
+ },
+ "default": [
+ "segment"
+ ]
+ }
+ },
+ "required": [
+ "file"
+ ]
+ },
+ "audioSegment": {
+ "type": "object",
+ "description": "Transcription or translation segment.",
+ "properties": {
+ "id": {
+ "type": "integer",
+ "description": "Segment identifier."
+ },
+ "seek": {
+ "type": "number",
+ "description": "Offset of the segment."
+ },
+ "start": {
+ "type": "number",
+ "description": "Segment start offset."
+ },
+ "end": {
+ "type": "number",
+ "description": "Segment end offset."
+ },
+ "text": {
+ "type": "string",
+ "description": "Segment text."
+ },
+ "tokens": {
+ "type": "array",
+ "items": {
+ "type": "number",
+ "nullable": false
+ },
+ "description": "Tokens of the text."
+ },
+ "temperature": {
+ "type": "number",
+ "description": "Temperature."
+ },
+ "avg_logprob": {
+ "type": "number",
+ "description": "Average log probability."
+ },
+ "compression_ratio": {
+ "type": "number",
+ "description": "Compression ratio."
+ },
+ "no_speech_prob": {
+ "type": "number",
+ "description": "Probability of 'no speech'."
+ }
+ }
+ },
+ "audioWord": {
+ "type": "object",
+ "description": "Transcription or translation word.",
+ "properties": {
+ "word": {
+ "type": "string",
+ "description": "Word"
+ },
+ "start": {
+ "type": "number",
+ "description": "Word start offset."
+ },
+ "end": {
+ "type": "number",
+ "description": "Word end offset."
+ }
+ }
+ },
+ "createSpeechRequest": {
+ "type": "object",
+ "description": "Speech request.",
+ "properties": {
+ "input": {
+ "type": "string",
+ "description": "The text to synthesize audio for. The maximum length is 4096 characters.",
+ "maxLength": 4096
+ },
+ "voice": {
+ "type": "string",
+ "description": "The voice to use for speech synthesis.",
+ "enum": [
+ "alloy",
+ "echo",
+ "fable",
+ "onyx",
+ "nova",
+ "shimmer"
+ ]
+ },
+ "response_format": {
+ "type": "string",
+ "description": "The format to synthesize the audio in.",
+ "enum": [
+ "mp3",
+ "opus",
+ "aac",
+ "flac",
+ "wav",
+ "pcm"
+ ]
+ },
+ "speed": {
+ "description": "The speed of the synthesize audio. Select a value from `0.25` to `4.0`. `1.0` is the default.",
+ "type": "number",
+ "default": 1.0,
+ "minimum": 0.25,
+ "maximum": 4.0
+ }
+ },
+ "required": [
+ "input",
+ "voice"
+ ]
+ },
+ "imageQuality": {
+ "description": "The quality of the image that will be generated.",
+ "type": "string",
+ "enum": [
+ "standard",
+ "hd"
+ ],
+ "default": "standard",
+ "x-ms-enum": {
+ "name": "Quality",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "standard",
+ "description": "Standard quality creates images with standard quality.",
+ "name": "Standard"
+ },
+ {
+ "value": "hd",
+ "description": "HD quality creates images with finer details and greater consistency across the image.",
+ "name": "HD"
+ }
+ ]
+ }
+ },
+ "imagesResponseFormat": {
+ "description": "The format in which the generated images are returned.",
+ "type": "string",
+ "enum": [
+ "url",
+ "b64_json"
+ ],
+ "default": "url",
+ "x-ms-enum": {
+ "name": "ImagesResponseFormat",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "url",
+ "description": "The URL that provides temporary access to download the generated images.",
+ "name": "Url"
+ },
+ {
+ "value": "b64_json",
+ "description": "The generated images are returned as base64 encoded string.",
+ "name": "Base64Json"
+ }
+ ]
+ }
+ },
+ "imageSize": {
+ "description": "The size of the generated images.",
+ "type": "string",
+ "enum": [
+ "256x256",
+ "512x512",
+ "1792x1024",
+ "1024x1792",
+ "1024x1024"
+ ],
+ "default": "1024x1024",
+ "x-ms-enum": {
+ "name": "Size",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "256x256",
+ "description": "The desired size of the generated image is 256x256 pixels. Only supported for dall-e-2.",
+ "name": "Size256x256"
+ },
+ {
+ "value": "512x512",
+ "description": "The desired size of the generated image is 512x512 pixels. Only supported for dall-e-2.",
+ "name": "Size512x512"
+ },
+ {
+ "value": "1792x1024",
+ "description": "The desired size of the generated image is 1792x1024 pixels. Only supported for dall-e-3.",
+ "name": "Size1792x1024"
+ },
+ {
+ "value": "1024x1792",
+ "description": "The desired size of the generated image is 1024x1792 pixels. Only supported for dall-e-3.",
+ "name": "Size1024x1792"
+ },
+ {
+ "value": "1024x1024",
+ "description": "The desired size of the generated image is 1024x1024 pixels.",
+ "name": "Size1024x1024"
+ }
+ ]
+ }
+ },
+ "imageStyle": {
+ "description": "The style of the generated images.",
+ "type": "string",
+ "enum": [
+ "vivid",
+ "natural"
+ ],
+ "default": "vivid",
+ "x-ms-enum": {
+ "name": "Style",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "vivid",
+ "description": "Vivid creates images that are hyper-realistic and dramatic.",
+ "name": "Vivid"
+ },
+ {
+ "value": "natural",
+ "description": "Natural creates images that are more natural and less hyper-realistic.",
+ "name": "Natural"
+ }
+ ]
+ }
+ },
+ "imageGenerationsRequest": {
+ "type": "object",
+ "properties": {
+ "prompt": {
+ "description": "A text description of the desired image(s). The maximum length is 4000 characters.",
+ "type": "string",
+ "format": "string",
+ "example": "a corgi in a field",
+ "minLength": 1
+ },
+ "n": {
+ "description": "The number of images to generate.",
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 1,
+ "default": 1
+ },
+ "size": {
+ "$ref": "#/components/schemas/imageSize"
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/imagesResponseFormat"
+ },
+ "user": {
+ "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse.",
+ "type": "string",
+ "format": "string",
+ "example": "user123456"
+ },
+ "quality": {
+ "$ref": "#/components/schemas/imageQuality"
+ },
+ "style": {
+ "$ref": "#/components/schemas/imageStyle"
+ }
+ },
+ "required": [
+ "prompt"
+ ]
+ },
+ "generateImagesResponse": {
+ "type": "object",
+ "properties": {
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "description": "The unix timestamp when the operation was created.",
+ "example": "1676540381"
+ },
+ "data": {
+ "type": "array",
+ "description": "The result data of the operation, if successful",
+ "items": {
+ "$ref": "#/components/schemas/imageResult"
+ }
+ }
+ },
+ "required": [
+ "created",
+ "data"
+ ]
+ },
+ "imageResult": {
+ "type": "object",
+ "description": "The image url or encoded image if successful, and an error otherwise.",
+ "properties": {
+ "url": {
+ "type": "string",
+ "description": "The image url.",
+ "example": "https://www.contoso.com"
+ },
+ "b64_json": {
+ "type": "string",
+ "description": "The base64 encoded image"
+ },
+ "content_filter_results": {
+ "$ref": "#/components/schemas/dalleContentFilterResults"
+ },
+ "revised_prompt": {
+ "type": "string",
+ "description": "The prompt that was used to generate the image, if there was any revision to the prompt."
+ },
+ "prompt_filter_results": {
+ "$ref": "#/components/schemas/dalleFilterResults"
+ }
+ }
+ },
+ "line": {
+ "type": "object",
+ "description": "A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.",
+ "properties": {
+ "text": {
+ "type": "string"
+ },
+ "spans": {
+ "type": "array",
+ "description": "An array of spans that represent detected objects and its bounding box information.",
+ "items": {
+ "$ref": "#/components/schemas/span"
+ }
+ }
+ },
+ "required": [
+ "text",
+ "spans"
+ ]
+ },
+ "span": {
+ "type": "object",
+ "description": "A span object that represents a detected object and its bounding box information.",
+ "properties": {
+ "text": {
+ "type": "string",
+ "description": "The text content of the span that represents the detected object."
+ },
+ "offset": {
+ "type": "integer",
+ "description": "The character offset within the text where the span begins. This offset is defined as the position of the first character of the span, counting from the start of the text as Unicode codepoints."
+ },
+ "length": {
+ "type": "integer",
+ "description": "The length of the span in characters, measured in Unicode codepoints."
+ },
+ "polygon": {
+ "type": "array",
+ "description": "An array of objects representing points in the polygon that encloses the detected object.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "x": {
+ "type": "number",
+ "description": "The x-coordinate of the point."
+ },
+ "y": {
+ "type": "number",
+ "description": "The y-coordinate of the point."
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "text",
+ "offset",
+ "length",
+ "polygon"
+ ]
+ },
+ "runCompletionUsage": {
+ "type": "object",
+ "description": "Usage statistics related to the run. This value will be `null` if the run is not in a terminal state (i.e. `in_progress`, `queued`, etc.).",
+ "properties": {
+ "completion_tokens": {
+ "type": "integer",
+ "description": "Number of completion tokens used over the course of the run."
+ },
+ "prompt_tokens": {
+ "type": "integer",
+ "description": "Number of prompt tokens used over the course of the run."
+ },
+ "total_tokens": {
+ "type": "integer",
+ "description": "Total number of tokens used (prompt + completion)."
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "completion_tokens",
+ "total_tokens"
+ ],
+ "nullable": true
+ },
+ "runStepCompletionUsage": {
+ "type": "object",
+ "description": "Usage statistics related to the run step. This value will be `null` while the run step's status is `in_progress`.",
+ "properties": {
+ "completion_tokens": {
+ "type": "integer",
+ "description": "Number of completion tokens used over the course of the run step."
+ },
+ "prompt_tokens": {
+ "type": "integer",
+ "description": "Number of prompt tokens used over the course of the run step."
+ },
+ "total_tokens": {
+ "type": "integer",
+ "description": "Total number of tokens used (prompt + completion)."
+ }
+ },
+ "required": [
+ "prompt_tokens",
+ "completion_tokens",
+ "total_tokens"
+ ],
+ "nullable": true
+ },
+ "assistantsApiResponseFormatOption": {
+ "description": "Specifies the format that the model must output. Compatible with GPT-4o, GPT-4 Turbo, and all GPT-3.5 Turbo models since `gpt-3.5-turbo-1106`.\n\nSetting to `{ \"type\": \"json_schema\", \"json_schema\": {...} }` enables Structured Outputs which ensures the model will match your supplied JSON schema. Learn more in the Structured Outputs guide.\n\nSetting to `{ \"type\": \"json_object\" }` enables JSON mode, which ensures the message the model generates is valid JSON.\n\n**Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly \"stuck\" request. Also note that the message content may be partially cut off if `finish_reason=\"length\"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "`auto` is the default value\n",
+ "enum": [
+ "auto"
+ ],
+ "x-ms-enum": {
+ "name": "AssistantsApiResponseFormatOption",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "auto"
+ }
+ ]
+ }
+ },
+ {
+ "$ref": "#/components/schemas/ResponseFormatText"
+ },
+ {
+ "$ref": "#/components/schemas/ResponseFormatJsonObject"
+ },
+ {
+ "$ref": "#/components/schemas/ResponseFormatJsonSchema"
+ }
+ ]
+ },
+ "assistantsApiResponseFormat": {
+ "type": "object",
+ "description": "An object describing the expected output of the model. If `json_object` only `function` type `tools` are allowed to be passed to the Run. If `text` the model can return text or any value needed.\n",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "text",
+ "json_object"
+ ],
+ "x-ms-enum": {
+ "name": "AssistantsApiResponseFormat",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "text"
+ },
+ {
+ "value": "json_object"
+ }
+ ]
+ },
+ "example": "json_object",
+ "default": "text",
+ "description": "Must be one of `text` or `json_object`."
+ }
+ }
+ },
+ "assistantObject": {
+ "type": "object",
+ "title": "Assistant",
+ "description": "Represents an `assistant` that can call the model and use tools.",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `assistant`.",
+ "type": "string",
+ "enum": [
+ "assistant"
+ ],
+ "x-ms-enum": {
+ "name": "AssistantObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "assistant",
+ "description": "The object type, which is always assistant"
+ }
+ ]
+ }
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the assistant was created.",
+ "type": "integer"
+ },
+ "name": {
+ "description": "The name of the assistant. The maximum length is 256 characters.\n",
+ "type": "string",
+ "maxLength": 256,
+ "nullable": true
+ },
+ "description": {
+ "description": "The description of the assistant. The maximum length is 512 characters.\n",
+ "type": "string",
+ "maxLength": 512,
+ "nullable": true
+ },
+ "model": {
+ "description": "ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.\n",
+ "type": "string"
+ },
+ "instructions": {
+ "description": "The system instructions that the assistant uses. The maximum length is 256,000 characters.\n",
+ "type": "string",
+ "maxLength": 256000,
+ "nullable": true
+ },
+ "tools": {
+ "description": "A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `file_search`, or `function`.\n",
+ "default": [],
+ "type": "array",
+ "maxItems": 128,
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearch"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFunction"
+ }
+ ]
+ }
+ },
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs made available to the `code_interpreter`` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "The ID of the vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ },
+ "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.\n",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or temperature but not both.\n"
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/assistantsApiResponseFormatOption",
+ "nullable": true
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created_at",
+ "name",
+ "description",
+ "model",
+ "instructions",
+ "tools",
+ "metadata"
+ ]
+ },
+ "createAssistantRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "model": {
+ "description": "ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.\n",
+ "anyOf": [
+ {
+ "type": "string"
+ }
+ ]
+ },
+ "name": {
+ "description": "The name of the assistant. The maximum length is 256 characters.\n",
+ "type": "string",
+ "nullable": true,
+ "maxLength": 256
+ },
+ "description": {
+ "description": "The description of the assistant. The maximum length is 512 characters.\n",
+ "type": "string",
+ "nullable": true,
+ "maxLength": 512
+ },
+ "instructions": {
+ "description": "The system instructions that the assistant uses. The maximum length is 256,000 characters.\n",
+ "type": "string",
+ "nullable": true,
+ "maxLength": 256000
+ },
+ "tools": {
+ "description": "A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `retrieval`, or `function`.\n",
+ "default": [],
+ "type": "array",
+ "maxItems": 128,
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearch"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFunction"
+ }
+ ]
+ }
+ },
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "The vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ },
+ "vector_stores": {
+ "type": "array",
+ "description": "A helper to create a vector store with file_ids and attach it to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.\n",
+ "maxItems": 10000,
+ "items": {
+ "type": "string"
+ }
+ },
+ "chunking_strategy": {
+ "type": "object",
+ "description": "The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.",
+ "oneOf": [
+ {
+ "type": "object",
+ "title": "Auto Chunking Strategy",
+ "description": "The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `auto`.",
+ "enum": [
+ "auto"
+ ],
+ "x-ms-enum": {
+ "name": "AutoChunkingStrategyType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "auto"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ {
+ "type": "object",
+ "title": "Static Chunking Strategy",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `static`.",
+ "enum": [
+ "static"
+ ],
+ "x-ms-enum": {
+ "name": "StaticChunkingStrategyType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "static"
+ }
+ ]
+ }
+ },
+ "static": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "max_chunk_size_tokens": {
+ "type": "integer",
+ "minimum": 100,
+ "maximum": 4096,
+ "description": "The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`."
+ },
+ "chunk_overlap_tokens": {
+ "type": "integer",
+ "description": "The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n"
+ }
+ },
+ "required": [
+ "max_chunk_size_tokens",
+ "chunk_overlap_tokens"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "static"
+ ]
+ }
+ ]
+ },
+ "metadata": {
+ "type": "object",
+ "description": "Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "x-oaiTypeLabel": "map"
+ }
+ }
+ }
+ }
+ },
+ "oneOf": [
+ {
+ "required": [
+ "vector_store_ids"
+ ]
+ },
+ {
+ "required": [
+ "vector_stores"
+ ]
+ }
+ ]
+ }
+ },
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ },
+ "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.\n",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or temperature but not both.\n"
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/assistantsApiResponseFormatOption",
+ "nullable": true
+ }
+ },
+ "required": [
+ "model"
+ ]
+ },
+ "modifyAssistantRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "model": {
+ "description": "ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.\n",
+ "anyOf": [
+ {
+ "type": "string"
+ }
+ ]
+ },
+ "name": {
+ "description": "The name of the assistant. The maximum length is 256 characters.\n",
+ "type": "string",
+ "nullable": true,
+ "maxLength": 256
+ },
+ "description": {
+ "description": "The description of the assistant. The maximum length is 512 characters.\n",
+ "type": "string",
+ "nullable": true,
+ "maxLength": 512
+ },
+ "instructions": {
+ "description": "The system instructions that the assistant uses. The maximum length is 32768 characters.\n",
+ "type": "string",
+ "nullable": true,
+ "maxLength": 32768
+ },
+ "tools": {
+ "description": "A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `retrieval`, or `function`.\n",
+ "default": [],
+ "type": "array",
+ "maxItems": 128,
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearch"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFunction"
+ }
+ ]
+ }
+ },
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "Overrides the list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "Overrides the vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ },
+ "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.\n",
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or temperature but not both.\n"
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/assistantsApiResponseFormatOption",
+ "nullable": true
+ }
+ }
+ },
+ "deleteAssistantResponse": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "deleted": {
+ "type": "boolean"
+ },
+ "object": {
+ "type": "string",
+ "enum": [
+ "assistant.deleted"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteAssistantResponseState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "assistant.deleted"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "deleted"
+ ]
+ },
+ "listAssistantsResponse": {
+ "type": "object",
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/assistantObject"
+ }
+ },
+ "first_id": {
+ "type": "string"
+ },
+ "last_id": {
+ "type": "string"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "assistantToolsCode": {
+ "type": "object",
+ "title": "Code interpreter tool",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of tool being defined: `code_interpreter`",
+ "enum": [
+ "code_interpreter"
+ ],
+ "x-ms-enum": {
+ "name": "assistantToolsCodeType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "code_interpreter"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "assistantToolsFileSearch": {
+ "type": "object",
+ "title": "FileSearch tool",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of tool being defined: `file_search`",
+ "enum": [
+ "file_search"
+ ],
+ "x-ms-enum": {
+ "name": "assistantToolsFileSearchType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_search"
+ }
+ ]
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "description": "Overrides for the file search tool.",
+ "properties": {
+ "max_num_results": {
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 50,
+ "description": "The maximum number of results the file search tool should output. The default is 20 for gpt-4* models and 5 for gpt-3.5-turbo. This number should be between 1 and 50 inclusive.\n\nNote that the file search tool may output fewer than `max_num_results` results. \n"
+ }
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "assistantToolsFileSearchTypeOnly": {
+ "type": "object",
+ "title": "FileSearch tool",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of tool being defined: `file_search`",
+ "enum": [
+ "file_search"
+ ],
+ "x-ms-enum": {
+ "name": "assistantToolsFileSearchType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_search"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "assistantToolsFunction": {
+ "type": "object",
+ "title": "Function tool",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of tool being defined: `function`",
+ "enum": [
+ "function"
+ ],
+ "x-ms-enum": {
+ "name": "assistantToolsFunction",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "function"
+ }
+ ]
+ }
+ },
+ "function": {
+ "type": "object",
+ "description": "The function definition.",
+ "properties": {
+ "description": {
+ "type": "string",
+ "description": "A description of what the function does, used by the model to choose when and how to call the function."
+ },
+ "name": {
+ "type": "string",
+ "description": "The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64."
+ },
+ "parameters": {
+ "$ref": "#/components/schemas/chatCompletionFunctionParameters"
+ }
+ },
+ "required": [
+ "name",
+ "parameters",
+ "description"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "function"
+ ]
+ },
+ "truncationObject": {
+ "type": "object",
+ "title": "Thread Truncation Controls",
+ "description": "Controls for how a thread will be truncated prior to the run. Use this to control the initial context window of the run.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The truncation strategy to use for the thread. The default is `auto`. If set to `last_messages`, the thread will be truncated to the n most recent messages in the thread. When set to `auto`, messages in the middle of the thread will be dropped to fit the context length of the model, `max_prompt_tokens`.",
+ "enum": [
+ "auto",
+ "last_messages"
+ ],
+ "x-ms-enum": {
+ "name": "TruncationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "auto"
+ },
+ {
+ "value": "last_messages"
+ }
+ ]
+ }
+ },
+ "last_messages": {
+ "type": "integer",
+ "description": "The number of most recent messages from the thread when constructing the context for the run.",
+ "minimum": 1,
+ "nullable": true
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "assistantsApiToolChoiceOption": {
+ "description": "Controls which (if any) tool is called by the model.\n`none` means the model will not call any tools and instead generates a message.\n`auto` is the default value and means the model can pick between generating a message or calling a tool.\nSpecifying a particular tool like `{\"type\": \"file_search\"}` or `{\"type\": \"function\", \"function\": {\"name\": \"my_function\"}}` forces the model to call that tool.\n",
+ "oneOf": [
+ {
+ "type": "string",
+ "description": "`none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function.\n",
+ "enum": [
+ "none",
+ "auto"
+ ],
+ "x-ms-enum": {
+ "name": "AssistantsApiToolChoiceOption",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "none"
+ },
+ {
+ "value": "auto"
+ }
+ ]
+ }
+ },
+ {
+ "$ref": "#/components/schemas/assistantsNamedToolChoice"
+ }
+ ]
+ },
+ "assistantsNamedToolChoice": {
+ "type": "object",
+ "description": "Specifies a tool the model should use. Use to force the model to call a specific tool.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": [
+ "function",
+ "code_interpreter",
+ "file_search"
+ ],
+ "description": "The type of the tool. If type is `function`, the function name must be set",
+ "x-ms-enum": {
+ "name": "AssistantsNamedToolChoiceType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "function"
+ },
+ {
+ "value": "code_interpreter"
+ },
+ {
+ "value": "file_search"
+ }
+ ]
+ }
+ },
+ "function": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function to call."
+ }
+ },
+ "required": [
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "runObject": {
+ "type": "object",
+ "title": "A run on a thread",
+ "description": "Represents an execution run on a [thread](/docs/api-reference/threads).",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `thread.run`.",
+ "type": "string",
+ "enum": [
+ "thread.run"
+ ],
+ "x-ms-enum": {
+ "name": "runObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run",
+ "description": "The run object type which is always thread.run"
+ }
+ ]
+ }
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the run was created.",
+ "type": "integer"
+ },
+ "thread_id": {
+ "description": "The ID of the [thread](/docs/api-reference/threads) that was executed on as a part of this run.",
+ "type": "string"
+ },
+ "assistant_id": {
+ "description": "The ID of the assistant used for execution of this run.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the run, which can be either `queued`, `in_progress`, `requires_action`, `cancelling`, `cancelled`, `failed`, `completed`, or `expired`.",
+ "type": "string",
+ "enum": [
+ "queued",
+ "in_progress",
+ "requires_action",
+ "cancelling",
+ "cancelled",
+ "failed",
+ "completed",
+ "expired"
+ ],
+ "x-ms-enum": {
+ "name": "RunObjectStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "queued",
+ "description": "The queued state"
+ },
+ {
+ "value": "in_progress",
+ "description": "The in_progress state"
+ },
+ {
+ "value": "requires_action",
+ "description": "The required_action state"
+ },
+ {
+ "value": "cancelling",
+ "description": "The cancelling state"
+ },
+ {
+ "value": "cancelled",
+ "description": "The cancelled state"
+ },
+ {
+ "value": "failed",
+ "description": "The failed state"
+ },
+ {
+ "value": "completed",
+ "description": "The completed state"
+ },
+ {
+ "value": "expired",
+ "description": "The expired state"
+ }
+ ]
+ }
+ },
+ "required_action": {
+ "type": "object",
+ "description": "Details on the action required to continue the run. Will be `null` if no action is required.",
+ "nullable": true,
+ "properties": {
+ "type": {
+ "description": "For now, this is always `submit_tool_outputs`.",
+ "type": "string",
+ "enum": [
+ "submit_tool_outputs"
+ ]
+ },
+ "submit_tool_outputs": {
+ "type": "object",
+ "description": "Details on the tool outputs needed for this run to continue.",
+ "properties": {
+ "tool_calls": {
+ "type": "array",
+ "description": "A list of the relevant tool calls.",
+ "items": {
+ "$ref": "#/components/schemas/runToolCallObject"
+ }
+ }
+ },
+ "required": [
+ "tool_calls"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "submit_tool_outputs"
+ ]
+ },
+ "last_error": {
+ "type": "object",
+ "description": "The last error associated with this run. Will be `null` if there are no errors.",
+ "nullable": true,
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of `server_error` or `rate_limit_exceeded`.",
+ "enum": [
+ "server_error",
+ "rate_limit_exceeded"
+ ],
+ "x-ms-enum": {
+ "name": "LastErrorCode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "server_error",
+ "description": "The server failed to respond to request due to server error"
+ },
+ {
+ "value": "rate_limit_exceeded",
+ "description": "The server failed to respond to request due to rate limit exceeded"
+ }
+ ]
+ }
+ },
+ "message": {
+ "type": "string",
+ "description": "A human-readable description of the error."
+ }
+ },
+ "required": [
+ "code",
+ "message"
+ ]
+ },
+ "expires_at": {
+ "description": "The Unix timestamp (in seconds) for when the run will expire.",
+ "type": "integer"
+ },
+ "started_at": {
+ "description": "The Unix timestamp (in seconds) for when the run was started.",
+ "type": "integer",
+ "nullable": true
+ },
+ "cancelled_at": {
+ "description": "The Unix timestamp (in seconds) for when the run was cancelled.",
+ "type": "integer",
+ "nullable": true
+ },
+ "failed_at": {
+ "description": "The Unix timestamp (in seconds) for when the run failed.",
+ "type": "integer",
+ "nullable": true
+ },
+ "completed_at": {
+ "description": "The Unix timestamp (in seconds) for when the run was completed.",
+ "type": "integer",
+ "nullable": true
+ },
+ "incomplete_details": {
+ "description": "Details on why the run is incomplete. Will be `null` if the run is not incomplete.",
+ "type": "object",
+ "nullable": true,
+ "properties": {
+ "reason": {
+ "description": "The reason why the run is incomplete. This will point to which specific token limit was reached over the course of the run.",
+ "type": "string",
+ "enum": [
+ "max_completion_tokens",
+ "max_prompt_tokens"
+ ],
+ "x-ms-enum": {
+ "name": "IncompleteDetailsReason",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "max_completion_tokens"
+ },
+ {
+ "value": "max_prompt_tokens"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "model": {
+ "description": "The model that the assistant used for this run.",
+ "type": "string"
+ },
+ "instructions": {
+ "description": "The instructions that the assistant used for this run.",
+ "type": "string"
+ },
+ "tools": {
+ "description": "The list of tools that the assistant used for this run.",
+ "default": [],
+ "type": "array",
+ "maxItems": 20,
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearch"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFunction"
+ }
+ ]
+ }
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ },
+ "usage": {
+ "$ref": "#/components/schemas/runCompletionUsage"
+ },
+ "temperature": {
+ "description": "The sampling temperature used for this run. If not set, defaults to 1.",
+ "type": "number",
+ "nullable": true
+ },
+ "top_p": {
+ "description": "The nucleus sampling value used for this run. If not set, defaults to 1.",
+ "type": "number",
+ "nullable": true
+ },
+ "max_prompt_tokens": {
+ "type": "integer",
+ "nullable": true,
+ "description": "The maximum number of prompt tokens specified to have been used over the course of the run.\n",
+ "minimum": 256
+ },
+ "max_completion_tokens": {
+ "type": "integer",
+ "nullable": true,
+ "description": "The maximum number of completion tokens specified to have been used over the course of the run.\n",
+ "minimum": 256
+ },
+ "truncation_strategy": {
+ "$ref": "#/components/schemas/truncationObject",
+ "nullable": true
+ },
+ "tool_choice": {
+ "$ref": "#/components/schemas/assistantsApiToolChoiceOption",
+ "nullable": true
+ },
+ "parallel_tool_calls": {
+ "$ref": "#/components/schemas/ParallelToolCalls",
+ "nullable": true
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/assistantsApiResponseFormatOption",
+ "nullable": true
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created_at",
+ "thread_id",
+ "assistant_id",
+ "status",
+ "required_action",
+ "last_error",
+ "expires_at",
+ "started_at",
+ "cancelled_at",
+ "failed_at",
+ "completed_at",
+ "model",
+ "instructions",
+ "tools",
+ "metadata",
+ "usage",
+ "incomplete_details",
+ "max_prompt_tokens",
+ "max_completion_tokens",
+ "truncation_strategy",
+ "tool_choice",
+ "response_format"
+ ]
+ },
+ "createRunRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "assistant_id": {
+ "description": "The ID of the assistant to use to execute this run.",
+ "type": "string"
+ },
+ "model": {
+ "description": "The ID of the Model to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used.",
+ "type": "string",
+ "nullable": true
+ },
+ "instructions": {
+ "description": "Override the default system message of the assistant. This is useful for modifying the behavior on a per-run basis.",
+ "type": "string",
+ "nullable": true
+ },
+ "additional_instructions": {
+ "description": "Appends additional instructions at the end of the instructions for the run. This is useful for modifying the behavior on a per-run basis without overriding other instructions.",
+ "type": "string",
+ "nullable": true
+ },
+ "additional_messages": {
+ "description": "Adds additional messages to the thread before creating the run.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/createMessageRequest"
+ },
+ "nullable": true
+ },
+ "tools": {
+ "description": "Override the tools the assistant can use for this run. This is useful for modifying the behavior on a per-run basis.",
+ "nullable": true,
+ "type": "array",
+ "maxItems": 20,
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearch"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFunction"
+ }
+ ]
+ }
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ },
+ "temperature": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n"
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or temperature but not both.\n"
+ },
+ "stream": {
+ "type": "boolean",
+ "nullable": true,
+ "description": "If `true`, returns a stream of events that happen during the Run as server-sent events, terminating when the Run enters a terminal state with a `data: [DONE]` message.\n"
+ },
+ "max_prompt_tokens": {
+ "type": "integer",
+ "nullable": true,
+ "description": "The maximum number of prompt tokens that may be used over the course of the run. The run will make a best effort to use only the number of prompt tokens specified, across multiple turns of the run. If the run exceeds the number of prompt tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.\n",
+ "minimum": 256
+ },
+ "max_completion_tokens": {
+ "type": "integer",
+ "nullable": true,
+ "description": "The maximum number of completion tokens that may be used over the course of the run. The run will make a best effort to use only the number of completion tokens specified, across multiple turns of the run. If the run exceeds the number of completion tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.\n",
+ "minimum": 256
+ },
+ "truncation_strategy": {
+ "$ref": "#/components/schemas/truncationObject",
+ "nullable": true
+ },
+ "tool_choice": {
+ "$ref": "#/components/schemas/assistantsApiToolChoiceOption",
+ "nullable": true
+ },
+ "parallel_tool_calls": {
+ "$ref": "#/components/schemas/ParallelToolCalls"
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/assistantsApiResponseFormatOption",
+ "nullable": true
+ }
+ },
+ "required": [
+ "thread_id",
+ "assistant_id"
+ ]
+ },
+ "listRunsResponse": {
+ "type": "object",
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "first_id": {
+ "type": "string"
+ },
+ "last_id": {
+ "type": "string"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "modifyRunRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "submitToolOutputsRunRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "tool_outputs": {
+ "description": "A list of tools for which the outputs are being submitted.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "tool_call_id": {
+ "type": "string",
+ "description": "The ID of the tool call in the `required_action` object within the run object the output is being submitted for."
+ },
+ "output": {
+ "type": "string",
+ "description": "The output of the tool call to be submitted to continue the run."
+ }
+ }
+ }
+ },
+ "stream": {
+ "type": "boolean",
+ "nullable": true,
+ "description": "If `true`, returns a stream of events that happen during the Run as server-sent events, terminating when the Run enters a terminal state with a `data: [DONE]` message.\n"
+ }
+ },
+ "required": [
+ "tool_outputs"
+ ]
+ },
+ "runToolCallObject": {
+ "type": "object",
+ "description": "Tool call objects",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call. This ID must be referenced when you submit the tool outputs in using the [Submit tool outputs to run](/docs/api-reference/runs/submitToolOutputs) endpoint."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call the output is required for. For now, this is always `function`.",
+ "enum": [
+ "function"
+ ],
+ "x-ms-enum": {
+ "name": "RunToolCallObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "function"
+ }
+ ]
+ }
+ },
+ "function": {
+ "type": "object",
+ "description": "The function definition.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "arguments": {
+ "type": "string",
+ "description": "The arguments that the model expects you to pass to the function."
+ }
+ },
+ "required": [
+ "name",
+ "arguments"
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "type",
+ "function"
+ ]
+ },
+ "createThreadAndRunRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "assistant_id": {
+ "description": "The ID of the assistant to use to execute this run.",
+ "type": "string"
+ },
+ "thread": {
+ "$ref": "#/components/schemas/createThreadRequest",
+ "description": "If no thread is provided, an empty thread will be created."
+ },
+ "model": {
+ "description": "The ID of the [Model](/docs/api-reference/models) to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used.",
+ "type": "string",
+ "nullable": true
+ },
+ "instructions": {
+ "description": "Override the default system message of the assistant. This is useful for modifying the behavior on a per-run basis.",
+ "type": "string",
+ "nullable": true
+ },
+ "tools": {
+ "description": "Override the tools the assistant can use for this run. This is useful for modifying the behavior on a per-run basis.",
+ "nullable": true,
+ "type": "array",
+ "maxItems": 20,
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearch"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFunction"
+ }
+ ]
+ }
+ },
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "The ID of the vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ },
+ "temperature": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 2,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n"
+ },
+ "top_p": {
+ "type": "number",
+ "minimum": 0,
+ "maximum": 1,
+ "default": 1,
+ "example": 1,
+ "nullable": true,
+ "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.\n\nWe generally recommend altering this or temperature but not both.\n"
+ },
+ "stream": {
+ "type": "boolean",
+ "nullable": true,
+ "description": "If `true`, returns a stream of events that happen during the Run as server-sent events, terminating when the Run enters a terminal state with a `data: [DONE]` message.\n"
+ },
+ "stream_options": {
+ "$ref": "#/components/schemas/chatCompletionStreamOptions",
+ "nullable": true
+ },
+ "max_prompt_tokens": {
+ "type": "integer",
+ "nullable": true,
+ "description": "The maximum number of prompt tokens that may be used over the course of the run. The run will make a best effort to use only the number of prompt tokens specified, across multiple turns of the run. If the run exceeds the number of prompt tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.\n",
+ "minimum": 256
+ },
+ "max_completion_tokens": {
+ "type": "integer",
+ "nullable": true,
+ "description": "The maximum number of completion tokens that may be used over the course of the run. The run will make a best effort to use only the number of completion tokens specified, across multiple turns of the run. If the run exceeds the number of completion tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.\n",
+ "minimum": 256
+ },
+ "truncation_strategy": {
+ "$ref": "#/components/schemas/truncationObject",
+ "nullable": true
+ },
+ "tool_choice": {
+ "$ref": "#/components/schemas/assistantsApiToolChoiceOption",
+ "nullable": true
+ },
+ "parallel_tool_calls": {
+ "$ref": "#/components/schemas/ParallelToolCalls"
+ },
+ "response_format": {
+ "$ref": "#/components/schemas/assistantsApiResponseFormatOption",
+ "nullable": true
+ }
+ },
+ "required": [
+ "thread_id",
+ "assistant_id"
+ ]
+ },
+ "threadObject": {
+ "type": "object",
+ "title": "Thread",
+ "description": "Represents a thread that contains [messages](/docs/api-reference/messages).",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `thread`.",
+ "type": "string",
+ "enum": [
+ "thread"
+ ],
+ "x-ms-enum": {
+ "name": "ThreadObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread",
+ "description": "The type of thread object which is always `thread`"
+ }
+ ]
+ }
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the thread was created.",
+ "type": "integer"
+ },
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "The vector store attached to this thread. There can be a maximum of 1 vector store attached to the thread.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created_at",
+ "tool_resources",
+ "metadata"
+ ]
+ },
+ "createThreadRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "messages": {
+ "description": "A list of [messages](/docs/api-reference/messages) to start the thread with.",
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/createMessageRequest"
+ }
+ },
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "The vector store attached to this thread. There can be a maximum of 1 vector store attached to the thread.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ },
+ "vector_stores": {
+ "type": "array",
+ "description": "A helper to create a vector store with file_ids and attach it to this thread. There can be a maximum of 1 vector store attached to the thread.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of file IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.\n",
+ "maxItems": 10000,
+ "items": {
+ "type": "string"
+ }
+ },
+ "chunking_strategy": {
+ "type": "object",
+ "description": "The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.",
+ "oneOf": [
+ {
+ "type": "object",
+ "title": "Auto Chunking Strategy",
+ "description": "The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `auto`.",
+ "enum": [
+ "auto"
+ ],
+ "x-ms-enum": {
+ "name": "AutoChunkingStrategyType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "auto"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ {
+ "type": "object",
+ "title": "Static Chunking Strategy",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `static`.",
+ "enum": [
+ "static"
+ ],
+ "x-ms-enum": {
+ "name": "StaticChunkingStrategyType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "static"
+ }
+ ]
+ }
+ },
+ "static": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "max_chunk_size_tokens": {
+ "type": "integer",
+ "minimum": 100,
+ "maximum": 4096,
+ "description": "The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`."
+ },
+ "chunk_overlap_tokens": {
+ "type": "integer",
+ "description": "The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n"
+ }
+ },
+ "required": [
+ "max_chunk_size_tokens",
+ "chunk_overlap_tokens"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "static"
+ ]
+ }
+ ]
+ },
+ "metadata": {
+ "type": "object",
+ "description": "Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n"
+ }
+ }
+ }
+ }
+ },
+ "oneOf": [
+ {
+ "required": [
+ "vector_store_ids"
+ ]
+ },
+ {
+ "required": [
+ "vector_stores"
+ ]
+ }
+ ]
+ }
+ },
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "modifyThreadRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "tool_resources": {
+ "type": "object",
+ "description": "A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.\n",
+ "properties": {
+ "code_interpreter": {
+ "type": "object",
+ "properties": {
+ "file_ids": {
+ "type": "array",
+ "description": "A list of File IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.\n",
+ "default": [],
+ "maxItems": 20,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "properties": {
+ "vector_store_ids": {
+ "type": "array",
+ "description": "The vector store attached to this thread. There can be a maximum of 1 vector store attached to the thread.\n",
+ "maxItems": 1,
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "deleteThreadResponse": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "deleted": {
+ "type": "boolean"
+ },
+ "object": {
+ "type": "string",
+ "enum": [
+ "thread.deleted"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteThreadResponseObjectState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.deleted",
+ "description": "The delete thread response object state which is `thread.deleted`"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "deleted"
+ ]
+ },
+ "listThreadsResponse": {
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/threadObject"
+ }
+ },
+ "first_id": {
+ "type": "string"
+ },
+ "last_id": {
+ "type": "string"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "messageObject": {
+ "type": "object",
+ "title": "The message object",
+ "description": "Represents a message within a [thread](/docs/api-reference/threads).",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `thread.message`.",
+ "type": "string",
+ "enum": [
+ "thread.message"
+ ],
+ "x-ms-enum": {
+ "name": "MessageObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message",
+ "description": "The message object type which is `thread.message`"
+ }
+ ]
+ }
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the message was created.",
+ "type": "integer"
+ },
+ "thread_id": {
+ "description": "The [thread](/docs/api-reference/threads) ID that this message belongs to.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the message, which can be either `in_progress`, `incomplete`, or `completed`.",
+ "type": "string",
+ "enum": [
+ "in_progress",
+ "incomplete",
+ "completed"
+ ],
+ "x-ms-enum": {
+ "name": "MessageObjectStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "in_progress"
+ },
+ {
+ "value": "incomplete"
+ },
+ {
+ "value": "completed"
+ }
+ ]
+ }
+ },
+ "incomplete_details": {
+ "description": "On an incomplete message, details about why the message is incomplete.",
+ "type": "object",
+ "properties": {
+ "reason": {
+ "type": "string",
+ "description": "The reason the message is incomplete.",
+ "enum": [
+ "content_filter",
+ "max_tokens",
+ "run_cancelled",
+ "run_expired",
+ "run_failed"
+ ],
+ "x-ms-enum": {
+ "name": "MessageObjectIncompleteReason",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "content_filter"
+ },
+ {
+ "value": "max_tokens"
+ },
+ {
+ "value": "run_cancelled"
+ },
+ {
+ "value": "run_expired"
+ },
+ {
+ "value": "run_failed"
+ }
+ ]
+ }
+ }
+ },
+ "nullable": true,
+ "required": [
+ "reason"
+ ]
+ },
+ "completed_at": {
+ "description": "The Unix timestamp (in seconds) for when the message was completed.",
+ "type": "integer",
+ "nullable": true
+ },
+ "incomplete_at": {
+ "description": "The Unix timestamp (in seconds) for when the message was marked as incomplete.",
+ "type": "integer",
+ "nullable": true
+ },
+ "role": {
+ "description": "The entity that produced the message. One of `user` or `assistant`.",
+ "type": "string",
+ "enum": [
+ "user",
+ "assistant"
+ ],
+ "x-ms-enum": {
+ "name": "MessageObjectRole",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "user"
+ },
+ {
+ "value": "assistant"
+ }
+ ]
+ }
+ },
+ "content": {
+ "description": "The content of the message in array of text and/or images.",
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/messageContentImageFileObject"
+ },
+ {
+ "$ref": "#/components/schemas/messageContentTextObject"
+ }
+ ]
+ }
+ },
+ "assistant_id": {
+ "description": "If applicable, the ID of the assistant that authored this message.",
+ "type": "string",
+ "nullable": true
+ },
+ "run_id": {
+ "description": "If applicable, the ID of the [run](/docs/api-reference/runs) associated with the authoring of this message.",
+ "type": "string",
+ "nullable": true
+ },
+ "attachments": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "type": "string",
+ "description": "The ID of the file to attach to the message."
+ },
+ "tools": {
+ "description": "The tools to add this file to.",
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearchTypeOnly"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "description": "A list of files attached to the message, and the tools they were added to.",
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created_at",
+ "thread_id",
+ "status",
+ "incomplete_details",
+ "completed_at",
+ "incomplete_at",
+ "role",
+ "content",
+ "assistant_id",
+ "run_id",
+ "attachments",
+ "metadata"
+ ]
+ },
+ "messageDeltaObject": {
+ "type": "object",
+ "title": "Message delta object",
+ "description": "Represents a message delta i.e. any changed fields on a message during streaming.\n",
+ "properties": {
+ "id": {
+ "description": "The identifier of the message, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `thread.message.delta`.",
+ "type": "string",
+ "enum": [
+ "thread.message.delta"
+ ],
+ "x-ms-enum": {
+ "name": "MessageDeltaObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.delta"
+ }
+ ]
+ }
+ },
+ "delta": {
+ "description": "The delta containing the fields that have changed on the Message.",
+ "type": "object",
+ "properties": {
+ "role": {
+ "description": "The entity that produced the message. One of `user` or `assistant`.",
+ "type": "string",
+ "enum": [
+ "user",
+ "assistant"
+ ],
+ "x-ms-enum": {
+ "name": "MessageDeltaObjectDeltaRole",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "user"
+ },
+ {
+ "value": "assistant"
+ }
+ ]
+ }
+ },
+ "content": {
+ "description": "The content of the message in array of text and/or images.",
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/messageDeltaContentImageFileObject"
+ },
+ {
+ "$ref": "#/components/schemas/messageDeltaContentTextObject"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "delta"
+ ]
+ },
+ "createMessageRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "required": [
+ "role",
+ "content"
+ ],
+ "properties": {
+ "role": {
+ "type": "string",
+ "enum": [
+ "user",
+ "assistant"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMessageRequestRole",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "user"
+ },
+ {
+ "value": "assistant"
+ }
+ ]
+ },
+ "description": "The role of the entity that is creating the message. Allowed values include:\n- `user`: Indicates the message is sent by an actual user and should be used in most cases to represent user-generated messages.\n- `assistant`: Indicates the message is generated by the assistant. Use this value to insert messages from the assistant into the conversation.\n"
+ },
+ "content": {
+ "type": "string",
+ "minLength": 1,
+ "maxLength": 256000,
+ "description": "The content of the message."
+ },
+ "attachments": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "type": "string",
+ "description": "The ID of the file to attach to the message."
+ },
+ "tools": {
+ "description": "The tools to add this file to.",
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/assistantToolsCode"
+ },
+ {
+ "$ref": "#/components/schemas/assistantToolsFileSearchTypeOnly"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "description": "A list of files attached to the message, and the tools they should be added to.",
+ "required": [
+ "file_id",
+ "tools"
+ ],
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "modifyMessageRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "deleteMessageResponse": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "deleted": {
+ "type": "boolean"
+ },
+ "object": {
+ "type": "string",
+ "enum": [
+ "thread.message.deleted"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteMessageResponseObject",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.deleted",
+ "description": "The delete message response object state"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "deleted"
+ ]
+ },
+ "listMessagesResponse": {
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ },
+ "first_id": {
+ "type": "string"
+ },
+ "last_id": {
+ "type": "string"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "messageContentImageFileObject": {
+ "title": "Image file",
+ "type": "object",
+ "description": "References an image File in the content of a message.",
+ "properties": {
+ "type": {
+ "description": "Always `image_file`.",
+ "type": "string",
+ "enum": [
+ "image_file"
+ ],
+ "x-ms-enum": {
+ "name": "MessageContentImageFileObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "image_file",
+ "description": "The message content image file type"
+ }
+ ]
+ }
+ },
+ "image_file": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The File ID of the image in the message content.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "file_id"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "image_file"
+ ]
+ },
+ "messageContentTextObject": {
+ "title": "Text",
+ "type": "object",
+ "description": "The text content that is part of a message.",
+ "properties": {
+ "type": {
+ "description": "Always `text`.",
+ "type": "string",
+ "enum": [
+ "text"
+ ],
+ "x-ms-enum": {
+ "name": "messageContentTextObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "text",
+ "description": "The message content text Object type"
+ }
+ ]
+ }
+ },
+ "text": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The data that makes up the text.",
+ "type": "string"
+ },
+ "annotations": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/messageContentTextAnnotationsFileCitationObject"
+ },
+ {
+ "$ref": "#/components/schemas/messageContentTextAnnotationsFilePathObject"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "value",
+ "annotations"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "text"
+ ]
+ },
+ "messageContentTextAnnotationsFileCitationObject": {
+ "title": "File citation",
+ "type": "object",
+ "description": "A citation within the message that points to a specific quote from a specific File associated with the assistant or the message. Generated when the assistant uses the \"retrieval\" tool to search files.",
+ "properties": {
+ "type": {
+ "description": "Always `file_citation`.",
+ "type": "string",
+ "enum": [
+ "file_citation"
+ ],
+ "x-ms-enum": {
+ "name": "FileCitationObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_citation",
+ "description": "The file citation object type"
+ }
+ ]
+ }
+ },
+ "text": {
+ "description": "The text in the message content that needs to be replaced.",
+ "type": "string"
+ },
+ "file_citation": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The ID of the specific File the citation is from.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "file_id"
+ ]
+ },
+ "start_index": {
+ "type": "integer",
+ "minimum": 0
+ },
+ "end_index": {
+ "type": "integer",
+ "minimum": 0
+ }
+ },
+ "required": [
+ "type",
+ "text",
+ "file_citation",
+ "start_index",
+ "end_index"
+ ]
+ },
+ "messageContentTextAnnotationsFilePathObject": {
+ "title": "File path",
+ "type": "object",
+ "description": "A URL for the file that's generated when the assistant used the `code_interpreter` tool to generate a file.",
+ "properties": {
+ "type": {
+ "description": "Always `file_path`.",
+ "type": "string",
+ "enum": [
+ "file_path"
+ ],
+ "x-ms-enum": {
+ "name": "FilePathObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_path",
+ "description": "The file path object type"
+ }
+ ]
+ }
+ },
+ "text": {
+ "description": "The text in the message content that needs to be replaced.",
+ "type": "string"
+ },
+ "file_path": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The ID of the file that was generated.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "file_id"
+ ]
+ },
+ "start_index": {
+ "type": "integer",
+ "minimum": 0
+ },
+ "end_index": {
+ "type": "integer",
+ "minimum": 0
+ }
+ },
+ "required": [
+ "type",
+ "text",
+ "file_path",
+ "start_index",
+ "end_index"
+ ]
+ },
+ "messageDeltaContentImageFileObject": {
+ "title": "Image file",
+ "type": "object",
+ "description": "References an image File in the content of a message.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the content part in the message."
+ },
+ "type": {
+ "description": "Always `image_file`.",
+ "type": "string",
+ "enum": [
+ "image_file"
+ ],
+ "x-ms-enum": {
+ "name": "MessageDeltaContentImageFileObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "image_file"
+ }
+ ]
+ }
+ },
+ "image_file": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The File ID of the image in the message content.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "messageDeltaContentTextObject": {
+ "title": "Text",
+ "type": "object",
+ "description": "The text content that is part of a message.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the content part in the message."
+ },
+ "type": {
+ "description": "Always `text`.",
+ "type": "string",
+ "enum": [
+ "text"
+ ],
+ "x-ms-enum": {
+ "name": "MessageDeltaContentTextObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "text"
+ }
+ ]
+ }
+ },
+ "text": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The data that makes up the text.",
+ "type": "string"
+ },
+ "annotations": {
+ "type": "array",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/messageDeltaContentTextAnnotationsFileCitationObject"
+ },
+ {
+ "$ref": "#/components/schemas/messageDeltaContentTextAnnotationsFilePathObject"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "messageDeltaContentTextAnnotationsFileCitationObject": {
+ "title": "File citation",
+ "type": "object",
+ "description": "A citation within the message that points to a specific quote from a specific File associated with the assistant or the message. Generated when the assistant uses the \"file_search\" tool to search files.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the annotation in the text content part."
+ },
+ "type": {
+ "description": "Always `file_citation`.",
+ "type": "string",
+ "enum": [
+ "file_citation"
+ ],
+ "x-ms-enum": {
+ "name": "MessageDeltaContentTextAnnotationsFileCitationObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_citation"
+ }
+ ]
+ }
+ },
+ "text": {
+ "description": "The text in the message content that needs to be replaced.",
+ "type": "string"
+ },
+ "file_citation": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The ID of the specific File the citation is from.",
+ "type": "string"
+ },
+ "quote": {
+ "description": "The specific quote in the file.",
+ "type": "string"
+ }
+ }
+ },
+ "start_index": {
+ "type": "integer",
+ "minimum": 0
+ },
+ "end_index": {
+ "type": "integer",
+ "minimum": 0
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "messageDeltaContentTextAnnotationsFilePathObject": {
+ "title": "File path",
+ "type": "object",
+ "description": "A URL for the file that's generated when the assistant used the `code_interpreter` tool to generate a file.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the annotation in the text content part."
+ },
+ "type": {
+ "description": "Always `file_path`.",
+ "type": "string",
+ "enum": [
+ "file_path"
+ ],
+ "x-ms-enum": {
+ "name": "MessageDeltaContentTextAnnotationsFilePathObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_path"
+ }
+ ]
+ }
+ },
+ "text": {
+ "description": "The text in the message content that needs to be replaced.",
+ "type": "string"
+ },
+ "file_path": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The ID of the file that was generated.",
+ "type": "string"
+ }
+ }
+ },
+ "start_index": {
+ "type": "integer",
+ "minimum": 0
+ },
+ "end_index": {
+ "type": "integer",
+ "minimum": 0
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "runStepObject": {
+ "type": "object",
+ "title": "Run steps",
+ "description": "Represents a step in execution of a run.\n",
+ "properties": {
+ "id": {
+ "description": "The identifier of the run step, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `assistant.run.step``.",
+ "type": "string",
+ "enum": [
+ "assistant.run.step"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "assistant.run.step",
+ "description": "The object type, which is always `assistant.run.step`"
+ }
+ ]
+ }
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the run step was created.",
+ "type": "integer"
+ },
+ "assistant_id": {
+ "description": "The ID of the [assistant](/docs/api-reference/assistants) associated with the run step.",
+ "type": "string"
+ },
+ "thread_id": {
+ "description": "The ID of the [thread](/docs/api-reference/threads) that was run.",
+ "type": "string"
+ },
+ "run_id": {
+ "description": "The ID of the [run](/docs/api-reference/runs) that this run step is a part of.",
+ "type": "string"
+ },
+ "type": {
+ "description": "The type of run step, which can be either `message_creation` or `tool_calls`.",
+ "type": "string",
+ "enum": [
+ "message_creation",
+ "tool_calls"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "message_creation",
+ "description": "The message_creation run step"
+ },
+ {
+ "value": "tool_calls",
+ "description": "The tool_calls run step"
+ }
+ ]
+ }
+ },
+ "status": {
+ "description": "The status of the run, which can be either `in_progress`, `cancelled`, `failed`, `completed`, or `expired`.",
+ "type": "string",
+ "enum": [
+ "in_progress",
+ "cancelled",
+ "failed",
+ "completed",
+ "expired"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepObjectStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "in_progress",
+ "description": "The in_progress run status"
+ },
+ {
+ "value": "cancelled",
+ "description": "The cancelled run status"
+ },
+ {
+ "value": "failed",
+ "description": "The cancelled run status"
+ },
+ {
+ "value": "completed",
+ "description": "The cancelled run status"
+ },
+ {
+ "value": "expired",
+ "description": "The cancelled run status"
+ }
+ ]
+ }
+ },
+ "step_details": {
+ "type": "object",
+ "description": "The details of the run step.",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/runStepDetailsMessageCreationObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsObject"
+ }
+ ]
+ },
+ "last_error": {
+ "type": "object",
+ "description": "The last error associated with this run step. Will be `null` if there are no errors.",
+ "nullable": true,
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of `server_error` or `rate_limit_exceeded`.",
+ "enum": [
+ "server_error",
+ "rate_limit_exceeded"
+ ],
+ "x-ms-enum": {
+ "name": "LastErrorCode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "server_error",
+ "description": "The server_error"
+ },
+ {
+ "value": "rate_limit_exceeded",
+ "description": "The rate_limit_exceeded status"
+ }
+ ]
+ }
+ },
+ "message": {
+ "type": "string",
+ "description": "A human-readable description of the error."
+ }
+ },
+ "required": [
+ "code",
+ "message"
+ ]
+ },
+ "expired_at": {
+ "description": "The Unix timestamp (in seconds) for when the run step expired. A step is considered expired if the parent run is expired.",
+ "type": "integer",
+ "nullable": true
+ },
+ "cancelled_at": {
+ "description": "The Unix timestamp (in seconds) for when the run step was cancelled.",
+ "type": "integer",
+ "nullable": true
+ },
+ "failed_at": {
+ "description": "The Unix timestamp (in seconds) for when the run step failed.",
+ "type": "integer",
+ "nullable": true
+ },
+ "completed_at": {
+ "description": "The Unix timestamp (in seconds) for when the run step completed.",
+ "type": "integer",
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created_at",
+ "assistant_id",
+ "thread_id",
+ "run_id",
+ "type",
+ "status",
+ "step_details",
+ "last_error",
+ "expired_at",
+ "cancelled_at",
+ "failed_at",
+ "completed_at",
+ "metadata"
+ ]
+ },
+ "runStepDeltaObject": {
+ "type": "object",
+ "title": "Run step delta object",
+ "description": "Represents a run step delta i.e. any changed fields on a run step during streaming.\n",
+ "properties": {
+ "id": {
+ "description": "The identifier of the run step, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `thread.run.step.delta`.",
+ "type": "string",
+ "enum": [
+ "thread.run.step.delta"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.delta"
+ }
+ ]
+ }
+ },
+ "delta": {
+ "description": "The delta containing the fields that have changed on the run step.",
+ "type": "object",
+ "properties": {
+ "step_details": {
+ "type": "object",
+ "description": "The details of the run step.",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsMessageCreationObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsToolCallsObject"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "delta"
+ ]
+ },
+ "listRunStepsResponse": {
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "first_id": {
+ "type": "string"
+ },
+ "last_id": {
+ "type": "string"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "runStepDetailsMessageCreationObject": {
+ "title": "Message creation",
+ "type": "object",
+ "description": "Details of the message creation by the run step.",
+ "properties": {
+ "type": {
+ "description": "Always `message_creation``.",
+ "type": "string",
+ "enum": [
+ "message_creation"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsMessageCreationObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "message_creation"
+ }
+ ]
+ }
+ },
+ "message_creation": {
+ "type": "object",
+ "properties": {
+ "message_id": {
+ "type": "string",
+ "description": "The ID of the message that was created by this run step."
+ }
+ },
+ "required": [
+ "message_id"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "message_creation"
+ ]
+ },
+ "runStepDeltaStepDetailsMessageCreationObject": {
+ "title": "Message creation",
+ "type": "object",
+ "description": "Details of the message creation by the run step.",
+ "properties": {
+ "type": {
+ "description": "Always `message_creation`.",
+ "type": "string",
+ "enum": [
+ "message_creation"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaStepDetailsMessageCreationObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "message_creation"
+ }
+ ]
+ }
+ },
+ "message_creation": {
+ "type": "object",
+ "properties": {
+ "message_id": {
+ "type": "string",
+ "description": "The ID of the message that was created by this run step."
+ }
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "runStepDetailsToolCallsObject": {
+ "title": "Tool calls",
+ "type": "object",
+ "description": "Details of the tool call.",
+ "properties": {
+ "type": {
+ "description": "Always `tool_calls`.",
+ "type": "string",
+ "enum": [
+ "tool_calls"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "tool_calls"
+ }
+ ]
+ }
+ },
+ "tool_calls": {
+ "type": "array",
+ "description": "An array of tool calls the run step was involved in. These can be associated with one of three types of tools: `code_interpreter`, `retrieval` or `function`.\n",
+ "items": {
+ "type": "object",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsCodeObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsFileSearchObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsFunctionObject"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type",
+ "tool_calls"
+ ]
+ },
+ "runStepDeltaStepDetailsToolCallsObject": {
+ "title": "Tool calls",
+ "type": "object",
+ "description": "Details of the tool call.",
+ "properties": {
+ "type": {
+ "description": "Always `tool_calls`.",
+ "type": "string",
+ "enum": [
+ "tool_calls"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaStepDetailsToolCallsObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "tool_calls"
+ }
+ ]
+ }
+ },
+ "tool_calls": {
+ "type": "array",
+ "description": "An array of tool calls the run step was involved in. These can be associated with one of three types of tools: `code_interpreter`, `file_search` or `function`.\n",
+ "items": {
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsToolCallsCodeObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsToolCallsFileSearchObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsToolCallsFunctionObject"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "runStepDetailsToolCallsCodeObject": {
+ "title": "Code interpreter tool call",
+ "type": "object",
+ "description": "Details of the Code Interpreter tool call the run step was involved in.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call. This is always going to be `code_interpreter` for this type of tool call.",
+ "enum": [
+ "code_interpreter"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsCodeObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "code_interpreter"
+ }
+ ]
+ }
+ },
+ "code_interpreter": {
+ "type": "object",
+ "description": "The Code Interpreter tool call definition.",
+ "required": [
+ "input",
+ "outputs"
+ ],
+ "properties": {
+ "input": {
+ "type": "string",
+ "description": "The input to the Code Interpreter tool call."
+ },
+ "outputs": {
+ "type": "array",
+ "description": "The outputs from the Code Interpreter tool call. Code Interpreter can output one or more items, including text (`logs`) or images (`image`). Each of these are represented by a different object type.",
+ "items": {
+ "type": "object",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsCodeOutputLogsObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsCodeOutputImageObject"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "type",
+ "code_interpreter"
+ ]
+ },
+ "runStepDeltaStepDetailsToolCallsCodeObject": {
+ "title": "Code interpreter tool call",
+ "type": "object",
+ "description": "Details of the Code Interpreter tool call the run step was involved in.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the tool call in the tool calls array."
+ },
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call. This is always going to be `code_interpreter` for this type of tool call.",
+ "enum": [
+ "code_interpreter"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaStepDetailsToolCallsCodeObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "code_interpreter"
+ }
+ ]
+ }
+ },
+ "code_interpreter": {
+ "type": "object",
+ "description": "The Code Interpreter tool call definition.",
+ "properties": {
+ "input": {
+ "type": "string",
+ "description": "The input to the Code Interpreter tool call."
+ },
+ "outputs": {
+ "type": "array",
+ "description": "The outputs from the Code Interpreter tool call. Code Interpreter can output one or more items, including text (`logs`) or images (`image`). Each of these are represented by a different object type.",
+ "items": {
+ "type": "object",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsToolCallsCodeOutputLogsObject"
+ },
+ {
+ "$ref": "#/components/schemas/runStepDeltaStepDetailsToolCallsCodeOutputImageObject"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "runStepDetailsToolCallsCodeOutputLogsObject": {
+ "title": "Code interpreter log output",
+ "type": "object",
+ "description": "Text output from the Code Interpreter tool call as part of a run step.",
+ "properties": {
+ "type": {
+ "description": "Always `logs`.",
+ "type": "string",
+ "enum": [
+ "logs"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsCodeOutputLogsObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "logs"
+ }
+ ]
+ }
+ },
+ "logs": {
+ "type": "string",
+ "description": "The text output from the Code Interpreter tool call."
+ }
+ },
+ "required": [
+ "type",
+ "logs"
+ ]
+ },
+ "runStepDeltaStepDetailsToolCallsCodeOutputLogsObject": {
+ "title": "Code interpreter log output",
+ "type": "object",
+ "description": "Text output from the Code Interpreter tool call as part of a run step.",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the output in the outputs array."
+ },
+ "type": {
+ "description": "Always `logs`.",
+ "type": "string",
+ "enum": [
+ "logs"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaStepDetailsToolCallsCodeOutputLogsObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "logs"
+ }
+ ]
+ }
+ },
+ "logs": {
+ "type": "string",
+ "description": "The text output from the Code Interpreter tool call."
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "runStepDetailsToolCallsCodeOutputImageObject": {
+ "title": "Code interpreter image output",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Always `image`.",
+ "type": "string",
+ "enum": [
+ "image"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsCodeOutputImageObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "image"
+ }
+ ]
+ }
+ },
+ "image": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The File ID of the image.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "file_id"
+ ]
+ }
+ },
+ "required": [
+ "type",
+ "image"
+ ]
+ },
+ "runStepDeltaStepDetailsToolCallsCodeOutputImageObject": {
+ "title": "Code interpreter image output",
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the output in the outputs array."
+ },
+ "type": {
+ "description": "Always `image`.",
+ "type": "string",
+ "enum": [
+ "image"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaStepDetailsToolCallsCodeOutputImageObject",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "image"
+ }
+ ]
+ }
+ },
+ "image": {
+ "type": "object",
+ "properties": {
+ "file_id": {
+ "description": "The file ID of the image.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "runStepDetailsToolCallsFileSearchObject": {
+ "title": "File search tool call",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call object."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call. This is always going to be `file_search` for this type of tool call.",
+ "enum": [
+ "file_search"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsFileSearchObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_search"
+ }
+ ]
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "description": "For now, this is always going to be an empty object.",
+ "properties": {
+ "results": {
+ "type": "array",
+ "description": "The results of the file search.",
+ "items": {
+ "$ref": "#/components/schemas/runStepDetailsToolCallsFileSearchResultObject"
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "id",
+ "type",
+ "file_search"
+ ]
+ },
+ "runStepDetailsToolCallsFileSearchResultObject": {
+ "title": "File search tool call result",
+ "type": "object",
+ "description": "A result instance of the file search.",
+ "x-oaiTypeLabel": "map",
+ "properties": {
+ "file_id": {
+ "type": "string",
+ "description": "The ID of the file that result was found in."
+ },
+ "file_name": {
+ "type": "string",
+ "description": "The name of the file that result was found in."
+ },
+ "score": {
+ "type": "number",
+ "description": "The score of the result. All values must be a floating point number between 0 and 1.",
+ "minimum": 0,
+ "maximum": 1
+ },
+ "content": {
+ "type": "array",
+ "description": "The content of the result that was found. The content is only included if requested via the include query parameter.",
+ "items": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of the content.",
+ "enum": [
+ "text"
+ ]
+ },
+ "text": {
+ "type": "string",
+ "description": "The text content of the file."
+ }
+ }
+ }
+ }
+ },
+ "required": [
+ "file_id",
+ "file_name",
+ "score"
+ ]
+ },
+ "runStepDeltaStepDetailsToolCallsFileSearchObject": {
+ "title": "File search tool call",
+ "type": "object",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the tool call in the tool calls array."
+ },
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call object."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call. This is always going to be `retrieval` for this type of tool call.",
+ "enum": [
+ "file_search"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDeltaStepDetailsToolCallsFileSearchObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "file_search"
+ }
+ ]
+ }
+ },
+ "file_search": {
+ "type": "object",
+ "description": "For now, this is always going to be an empty object."
+ }
+ },
+ "required": [
+ "index",
+ "type",
+ "file_search"
+ ]
+ },
+ "runStepDetailsToolCallsFunctionObject": {
+ "type": "object",
+ "title": "Function tool call",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call object."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call. This is always going to be `function` for this type of tool call.",
+ "enum": [
+ "function"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsFunctionObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "function"
+ }
+ ]
+ }
+ },
+ "function": {
+ "type": "object",
+ "description": "The definition of the function that was called.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "arguments": {
+ "type": "string",
+ "description": "The arguments passed to the function."
+ },
+ "output": {
+ "type": "string",
+ "description": "The output of the function. This will be `null` if the outputs have not been [submitted](/docs/api-reference/runs/submitToolOutputs) yet.",
+ "nullable": true
+ }
+ },
+ "required": [
+ "name",
+ "arguments",
+ "output"
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "type",
+ "function"
+ ]
+ },
+ "runStepDeltaStepDetailsToolCallsFunctionObject": {
+ "type": "object",
+ "title": "Function tool call",
+ "properties": {
+ "index": {
+ "type": "integer",
+ "description": "The index of the tool call in the tool calls array."
+ },
+ "id": {
+ "type": "string",
+ "description": "The ID of the tool call object."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of tool call. This is always going to be `function` for this type of tool call.",
+ "enum": [
+ "function"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepDetailsToolCallsFunctionObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "function"
+ }
+ ]
+ }
+ },
+ "function": {
+ "type": "object",
+ "description": "The definition of the function that was called.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The name of the function."
+ },
+ "arguments": {
+ "type": "string",
+ "description": "The arguments passed to the function."
+ },
+ "output": {
+ "type": "string",
+ "description": "The output of the function. This will be `null` if the outputs have not been submitted yet.",
+ "nullable": true
+ }
+ }
+ }
+ },
+ "required": [
+ "index",
+ "type"
+ ]
+ },
+ "vectorStoreExpirationAfter": {
+ "type": "object",
+ "title": "Vector store expiration policy",
+ "description": "The expiration policy for a vector store.",
+ "properties": {
+ "anchor": {
+ "description": "Anchor timestamp after which the expiration policy applies. Supported anchors: `last_active_at`.",
+ "type": "string",
+ "enum": [
+ "last_active_at"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreExpirationAfterAnchor",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "last_active_at",
+ "description": "The anchor timestamp after which the expiration policy applies."
+ }
+ ]
+ }
+ },
+ "days": {
+ "description": "The number of days after the anchor time that the vector store will expire.",
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 365
+ }
+ },
+ "required": [
+ "anchor",
+ "days"
+ ]
+ },
+ "vectorStoreObject": {
+ "type": "object",
+ "title": "Vector store",
+ "description": "A vector store is a collection of processed files can be used by the `file_search` tool.",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `vector_store`.",
+ "type": "string",
+ "enum": [
+ "vector_store"
+ ]
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the vector store was created.",
+ "type": "integer"
+ },
+ "name": {
+ "description": "The name of the vector store.",
+ "type": "string"
+ },
+ "usage_bytes": {
+ "description": "The total number of bytes used by the files in the vector store.",
+ "type": "integer"
+ },
+ "file_counts": {
+ "type": "object",
+ "properties": {
+ "in_progress": {
+ "description": "The number of files that are currently being processed.",
+ "type": "integer"
+ },
+ "completed": {
+ "description": "The number of files that have been successfully processed.",
+ "type": "integer"
+ },
+ "failed": {
+ "description": "The number of files that have failed to process.",
+ "type": "integer"
+ },
+ "cancelled": {
+ "description": "The number of files that were cancelled.",
+ "type": "integer"
+ },
+ "total": {
+ "description": "The total number of files.",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "in_progress",
+ "completed",
+ "failed",
+ "cancelled",
+ "total"
+ ]
+ },
+ "status": {
+ "description": "The status of the vector store, which can be either `expired`, `in_progress`, or `completed`. A status of `completed` indicates that the vector store is ready for use.",
+ "type": "string",
+ "enum": [
+ "expired",
+ "in_progress",
+ "completed"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreObjectStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "expired"
+ },
+ {
+ "value": "in_progress"
+ },
+ {
+ "value": "completed"
+ }
+ ]
+ }
+ },
+ "expires_after": {
+ "$ref": "#/components/schemas/vectorStoreExpirationAfter"
+ },
+ "expires_at": {
+ "description": "The Unix timestamp (in seconds) for when the vector store will expire.",
+ "type": "integer",
+ "nullable": true
+ },
+ "last_active_at": {
+ "description": "The Unix timestamp (in seconds) for when the vector store was last active.",
+ "type": "integer",
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "usage_bytes",
+ "created_at",
+ "status",
+ "last_active_at",
+ "name",
+ "bytes",
+ "file_counts",
+ "metadata"
+ ]
+ },
+ "createVectorStoreRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "file_ids": {
+ "description": "A list of file IDs that the vector store should use. Useful for tools like `file_search` that can access files.",
+ "type": "array",
+ "maxItems": 500,
+ "items": {
+ "type": "string"
+ }
+ },
+ "name": {
+ "description": "The name of the vector store.",
+ "type": "string"
+ },
+ "expires_after": {
+ "$ref": "#/components/schemas/vectorStoreExpirationAfter"
+ },
+ "chunking_strategy": {
+ "type": "object",
+ "description": "The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy. Only applicable if `file_ids` is non-empty.",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/autoChunkingStrategyRequestParam"
+ },
+ {
+ "$ref": "#/components/schemas/staticChunkingStrategyRequestParam"
+ }
+ ]
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "updateVectorStoreRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "name": {
+ "description": "The name of the vector store.",
+ "type": "string",
+ "nullable": true
+ },
+ "expires_after": {
+ "$ref": "#/components/schemas/vectorStoreExpirationAfter",
+ "nullable": true
+ },
+ "metadata": {
+ "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n",
+ "type": "object",
+ "nullable": true
+ }
+ }
+ },
+ "listVectorStoresResponse": {
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/vectorStoreObject"
+ }
+ },
+ "first_id": {
+ "type": "string",
+ "example": "vs_abc123"
+ },
+ "last_id": {
+ "type": "string",
+ "example": "vs_abc456"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "deleteVectorStoreResponse": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "deleted": {
+ "type": "boolean"
+ },
+ "object": {
+ "type": "string",
+ "enum": [
+ "vector_store.deleted"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteVectorStoreResponseObject",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "vector_store.deleted",
+ "description": "The delete vector store response object state"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "deleted"
+ ]
+ },
+ "vectorStoreFileObject": {
+ "type": "object",
+ "title": "Vector store files",
+ "description": "A list of files attached to a vector store.",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `vector_store.file`.",
+ "type": "string",
+ "enum": [
+ "vector_store.file"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreFileObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "vector_store.file"
+ }
+ ]
+ }
+ },
+ "usage_bytes": {
+ "description": "The total vector store usage in bytes. Note that this may be different from the original file size.",
+ "type": "integer"
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the vector store file was created.",
+ "type": "integer"
+ },
+ "vector_store_id": {
+ "description": "The ID of the vector store that the file is attached to.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the vector store file, which can be either `in_progress`, `completed`, `cancelled`, or `failed`. The status `completed` indicates that the vector store file is ready for use.",
+ "type": "string",
+ "enum": [
+ "in_progress",
+ "completed",
+ "cancelled",
+ "failed"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreFileObjectStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "in_progress"
+ },
+ {
+ "value": "completed"
+ },
+ {
+ "value": "cancelled"
+ },
+ {
+ "value": "failed"
+ }
+ ]
+ }
+ },
+ "last_error": {
+ "type": "object",
+ "description": "The last error associated with this vector store file. Will be `null` if there are no errors.",
+ "nullable": true,
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "One of `server_error` or `invalid_file` or `unsupported_file`.",
+ "enum": [
+ "server_error",
+ "unsupported_file",
+ "invalid_file"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreFileObjectLastErrorCode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "server_error"
+ },
+ {
+ "value": "unsupported_file"
+ },
+ {
+ "value": "invalid_file"
+ }
+ ]
+ }
+ },
+ "message": {
+ "type": "string",
+ "description": "A human-readable description of the error."
+ }
+ },
+ "required": [
+ "code",
+ "message"
+ ]
+ },
+ "chunking_strategy": {
+ "type": "object",
+ "description": "The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy. Only applicable if `file_ids` is non-empty.",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/autoChunkingStrategyRequestParam"
+ },
+ {
+ "$ref": "#/components/schemas/staticChunkingStrategyRequestParam"
+ }
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "usage_bytes",
+ "created_at",
+ "vector_store_id",
+ "status",
+ "last_error"
+ ]
+ },
+ "otherChunkingStrategyResponseParam": {
+ "type": "object",
+ "title": "Other Chunking Strategy",
+ "description": "This is returned when the chunking strategy is unknown. Typically, this is because the file was indexed before the `chunking_strategy` concept was introduced in the API.",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `other`.",
+ "enum": [
+ "other"
+ ],
+ "x-ms-enum": {
+ "name": "OtherChunkingStrategyResponseParamType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "other"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "staticChunkingStrategyResponseParam": {
+ "type": "object",
+ "title": "Static Chunking Strategy",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `static`.",
+ "enum": [
+ "static"
+ ],
+ "x-ms-enum": {
+ "name": "StaticChunkingStrategyResponseParamType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "static"
+ }
+ ]
+ }
+ },
+ "static": {
+ "$ref": "#/components/schemas/staticChunkingStrategy"
+ }
+ },
+ "required": [
+ "type",
+ "static"
+ ]
+ },
+ "staticChunkingStrategy": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "max_chunk_size_tokens": {
+ "type": "integer",
+ "minimum": 100,
+ "maximum": 4096,
+ "description": "The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`."
+ },
+ "chunk_overlap_tokens": {
+ "type": "integer",
+ "description": "The number of tokens that overlap between chunks. The default value is `400`.\n\nNote that the overlap must not exceed half of `max_chunk_size_tokens`.\n"
+ }
+ },
+ "required": [
+ "max_chunk_size_tokens",
+ "chunk_overlap_tokens"
+ ]
+ },
+ "autoChunkingStrategyRequestParam": {
+ "type": "object",
+ "title": "Auto Chunking Strategy",
+ "description": "The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `auto`.",
+ "enum": [
+ "auto"
+ ]
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "staticChunkingStrategyRequestParam": {
+ "type": "object",
+ "title": "Static Chunking Strategy",
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "Always `static`.",
+ "enum": [
+ "static"
+ ]
+ },
+ "static": {
+ "$ref": "#/components/schemas/staticChunkingStrategy"
+ }
+ },
+ "required": [
+ "type",
+ "static"
+ ]
+ },
+ "chunkingStrategyRequestParam": {
+ "type": "object",
+ "description": "The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/autoChunkingStrategyRequestParam"
+ },
+ {
+ "$ref": "#/components/schemas/staticChunkingStrategyRequestParam"
+ }
+ ]
+ },
+ "createVectorStoreFileRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "file_id": {
+ "description": "A File ID that the vector store should use. Useful for tools like `file_search` that can access files.",
+ "type": "string"
+ },
+ "chunking_strategy": {
+ "$ref": "#/components/schemas/chunkingStrategyRequestParam"
+ }
+ },
+ "required": [
+ "file_id"
+ ]
+ },
+ "listVectorStoreFilesResponse": {
+ "properties": {
+ "object": {
+ "type": "string",
+ "example": "list"
+ },
+ "data": {
+ "type": "array",
+ "items": {
+ "$ref": "#/components/schemas/vectorStoreFileObject"
+ }
+ },
+ "first_id": {
+ "type": "string",
+ "example": "file-abc123"
+ },
+ "last_id": {
+ "type": "string",
+ "example": "file-abc456"
+ },
+ "has_more": {
+ "type": "boolean",
+ "example": false
+ }
+ },
+ "required": [
+ "object",
+ "data",
+ "first_id",
+ "last_id",
+ "has_more"
+ ]
+ },
+ "deleteVectorStoreFileResponse": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "deleted": {
+ "type": "boolean"
+ },
+ "object": {
+ "type": "string",
+ "enum": [
+ "vector_store.file.deleted"
+ ],
+ "x-ms-enum": {
+ "name": "DeleteVectorStoreFileResponseObject",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "vector_store.file.deleted"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "deleted"
+ ]
+ },
+ "vectorStoreFileBatchObject": {
+ "type": "object",
+ "title": "Vector store file batch",
+ "description": "A batch of files attached to a vector store.",
+ "properties": {
+ "id": {
+ "description": "The identifier, which can be referenced in API endpoints.",
+ "type": "string"
+ },
+ "object": {
+ "description": "The object type, which is always `vector_store.file_batch`.",
+ "type": "string",
+ "enum": [
+ "vector_store.files_batch"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreFileBatchObjectType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "vector_store.files_batch"
+ }
+ ]
+ }
+ },
+ "created_at": {
+ "description": "The Unix timestamp (in seconds) for when the vector store files batch was created.",
+ "type": "integer"
+ },
+ "vector_store_id": {
+ "description": "The ID of the vector store that the File is attached to.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the vector store files batch, which can be either `in_progress`, `completed`, `cancelled` or `failed`.",
+ "type": "string",
+ "enum": [
+ "in_progress",
+ "completed",
+ "cancelled",
+ "failed"
+ ],
+ "x-ms-enum": {
+ "name": "VectorStoreFileBatchObjectStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "in_progress"
+ },
+ {
+ "value": "completed"
+ },
+ {
+ "value": "cancelled"
+ },
+ {
+ "value": "failed"
+ }
+ ]
+ }
+ },
+ "file_counts": {
+ "type": "object",
+ "properties": {
+ "in_progress": {
+ "description": "The number of files that are currently being processed.",
+ "type": "integer"
+ },
+ "completed": {
+ "description": "The number of files that have been processed.",
+ "type": "integer"
+ },
+ "failed": {
+ "description": "The number of files that have failed to process.",
+ "type": "integer"
+ },
+ "cancelled": {
+ "description": "The number of files that where cancelled.",
+ "type": "integer"
+ },
+ "total": {
+ "description": "The total number of files.",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "in_progress",
+ "completed",
+ "cancelled",
+ "failed",
+ "total"
+ ]
+ }
+ },
+ "required": [
+ "id",
+ "object",
+ "created_at",
+ "vector_store_id",
+ "status",
+ "file_counts"
+ ]
+ },
+ "createVectorStoreFileBatchRequest": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "file_ids": {
+ "description": "A list of File IDs that the vector store should use. Useful for tools like `file_search` that can access files.",
+ "type": "array",
+ "minItems": 1,
+ "maxItems": 500,
+ "items": {
+ "type": "string"
+ }
+ },
+ "chunking_strategy": {
+ "$ref": "#/components/schemas/chunkingStrategyRequestParam"
+ }
+ },
+ "required": [
+ "file_ids"
+ ]
+ },
+ "assistantStreamEvent": {
+ "description": "Represents an event emitted when streaming a Run.\n\nEach event in a server-sent events stream has an `event` and `data` property:\n\n```\nevent: thread.created\ndata: {\"id\": \"thread_123\", \"object\": \"thread\", ...}\n```\n\nWe emit events whenever a new object is created, transitions to a new state, or is being\nstreamed in parts (deltas). For example, we emit `thread.run.created` when a new run\nis created, `thread.run.completed` when a run completes, and so on. When an Assistant chooses\nto create a message during a run, we emit a `thread.message.created event`, a\n`thread.message.in_progress` event, many `thread.message.delta` events, and finally a\n`thread.message.completed` event.\n\nWe may add additional events over time, so we recommend handling unknown events gracefully\nin your code.",
+ "oneOf": [
+ {
+ "$ref": "#/components/schemas/threadStreamEvent"
+ },
+ {
+ "$ref": "#/components/schemas/runStreamEvent"
+ },
+ {
+ "$ref": "#/components/schemas/runStepStreamEvent"
+ },
+ {
+ "$ref": "#/components/schemas/messageStreamEvent"
+ },
+ {
+ "$ref": "#/components/schemas/errorEvent"
+ },
+ {
+ "$ref": "#/components/schemas/doneEvent"
+ }
+ ]
+ },
+ "threadStreamEvent": {
+ "oneOf": [
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.created"
+ ],
+ "x-ms-enum": {
+ "name": "ThreadStreamEventEnum",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.created",
+ "description": "The thread created event"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/threadObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a new thread is created."
+ }
+ ]
+ },
+ "runStreamEvent": {
+ "oneOf": [
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.created"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventCreated",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.created"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a new run is created."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.queued"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventQueued",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.queued"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run moves to a `queued` status."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.in_progress"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventInProgress",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.in_progress"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run moves to an `in_progress` status."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.requires_action"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventRequiresAction",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.requires_action"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run moves to a `requires_action` status."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.completed"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventCompleted",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.completed"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run is completed."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.failed"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventFailed",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.failed"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run fails."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.cancelling"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventCancelling",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.cancelling"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run moves to a `cancelling` status."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.cancelled"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventCancelled",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.cancelled"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run is cancelled."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.expired"
+ ],
+ "x-ms-enum": {
+ "name": "RunStreamEventExpired",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.expired"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run expires."
+ }
+ ]
+ },
+ "runStepStreamEvent": {
+ "oneOf": [
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.created"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventCreated",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.created"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run step is created."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.in_progress"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventInProgress",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.in_progress"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run step moves to an `in_progress` state."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.delta"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventDelta",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.delta"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepDeltaObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when parts of a run step are being streamed."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.completed"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventCompleted",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.completed"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run step is completed."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.failed"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventFailed",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.failed"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run step fails."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.cancelled"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventCancelled",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.cancelled"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run step is cancelled."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.run.step.expired"
+ ],
+ "x-ms-enum": {
+ "name": "RunStepStreamEventExpired",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.run.step.expired"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/runStepObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a run step expires."
+ }
+ ]
+ },
+ "messageStreamEvent": {
+ "oneOf": [
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.message.created"
+ ],
+ "x-ms-enum": {
+ "name": "MessageStreamEventCreated",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.created"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a message is created."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.message.in_progress"
+ ],
+ "x-ms-enum": {
+ "name": "MessageStreamEventInProgress",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.in_progress"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a message moves to an `in_progress` state."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.message.delta"
+ ],
+ "x-ms-enum": {
+ "name": "MessageStreamEventDelta",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.delta"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/messageDeltaObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when parts of a message are being streamed."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.message.completed"
+ ],
+ "x-ms-enum": {
+ "name": "MessageStreamEventCompleted",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.completed"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a message is completed."
+ },
+ {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "thread.message.incomplete"
+ ],
+ "x-ms-enum": {
+ "name": "MessageStreamEventIncomplete",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "thread.message.incomplete"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/messageObject"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a message ends before it is completed."
+ }
+ ]
+ },
+ "errorEvent": {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "error"
+ ],
+ "x-ms-enum": {
+ "name": "ErrorEventEnum",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "error"
+ }
+ ]
+ }
+ },
+ "data": {
+ "$ref": "#/components/schemas/error"
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when an error occurs. This can happen due to an internal server error or a timeout."
+ },
+ "doneEvent": {
+ "type": "object",
+ "properties": {
+ "event": {
+ "type": "string",
+ "enum": [
+ "done"
+ ],
+ "x-ms-enum": {
+ "name": "DoneEventEnum",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "done"
+ }
+ ]
+ }
+ },
+ "data": {
+ "type": "string",
+ "enum": [
+ "[DONE]"
+ ],
+ "x-ms-enum": {
+ "name": "DoneEventDataEnum",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "[DONE]"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "event",
+ "data"
+ ],
+ "description": "Occurs when a stream ends."
+ }
+ },
+ "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/2024-12-01-preview/inference.yaml b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.yaml
new file mode 100644
index 000000000000..e401567f87ea
--- /dev/null
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-12-01-preview/inference.yaml
@@ -0,0 +1,8586 @@
+openapi: 3.0.0
+info:
+ title: Azure OpenAI Service API
+ description: Azure OpenAI APIs for completions and search
+ version: 2024-12-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: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createCompletionRequest"
+ example:
+ prompt: |-
+ Negate the following sentence.The price for bubblegum increased on thursday.
+
+ Negated Sentence:
+ max_tokens: 50
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createCompletionResponse"
+ example:
+ model: davinci
+ object: text_completion
+ id: cmpl-4509KAos68kxOqpE2uYGw81j6m7uo
+ created: 1637097562
+ choices:
+ - index: 0
+ text: The price for bubblegum decreased on thursday.
+ logprobs: null
+ finish_reason: stop
+ headers:
+ apim-request-id:
+ description: Request ID for troubleshooting purposes
+ schema:
+ type: string
+ default:
+ description: Service unavailable
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/errorResponse"
+ headers:
+ apim-request-id:
+ description: Request ID for troubleshooting purposes
+ schema:
+ type: string
+ /deployments/{deployment-id}/embeddings:
+ post:
+ summary: Get a vector representation of a given input that can be easily consumed by machine learning models and algorithms.
+ operationId: embeddings_create
+ parameters:
+ - in: path
+ name: deployment-id
+ required: true
+ schema:
+ type: string
+ example: ada-search-index-v1
+ description: The deployment id of the model which was deployed.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ type: object
+ additionalProperties: true
+ properties:
+ input:
+ description: |-
+ Input text to embed, encoded as a string or array of tokens. To embed multiple inputs in a single request, pass an array of strings or array of token arrays. The input must not exceed the max input tokens for the model (8192 tokens for `text-embedding-ada-002`), cannot be an empty string, and any array must be 2048 dimensions or less.
+ oneOf:
+ - type: string
+ default: ""
+ example: This is a test.
+ nullable: true
+ - type: array
+ minItems: 1
+ maxItems: 2048
+ items:
+ type: string
+ minLength: 1
+ example: This is a test.
+ nullable: false
+ user:
+ description: A unique identifier representing your end-user, which can help monitoring and detecting abuse.
+ type: string
+ nullable: false
+ input_type:
+ description: input type of embedding search to use
+ type: string
+ example: query
+ encoding_format:
+ description: The format to return the embeddings in. Can be either `float` or `base64`. Defaults to `float`.
+ type: string
+ example: base64
+ nullable: true
+ dimensions:
+ description: The number of dimensions the resulting output embeddings should have. Only supported in `text-embedding-3` and later models.
+ type: integer
+ example: 1
+ nullable: true
+ required:
+ - input
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ object:
+ type: string
+ model:
+ type: string
+ data:
+ type: array
+ items:
+ type: object
+ properties:
+ index:
+ type: integer
+ object:
+ type: string
+ embedding:
+ type: array
+ items:
+ type: number
+ required:
+ - index
+ - object
+ - embedding
+ usage:
+ type: object
+ properties:
+ prompt_tokens:
+ type: integer
+ total_tokens:
+ type: integer
+ required:
+ - prompt_tokens
+ - total_tokens
+ required:
+ - object
+ - model
+ - data
+ - usage
+ x-ms-examples:
+ Create a embeddings.:
+ $ref: ./examples/embeddings.yaml
+ /deployments/{deployment-id}/chat/completions:
+ post:
+ summary: Creates a completion for the chat message
+ operationId: ChatCompletions_Create
+ parameters:
+ - in: path
+ name: deployment-id
+ required: true
+ schema:
+ type: string
+ description: Deployment id of the model which was deployed.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createChatCompletionRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: "#/components/schemas/createChatCompletionResponse"
+ - $ref: "#/components/schemas/createChatCompletionStreamResponse"
+ headers:
+ apim-request-id:
+ description: Request ID for troubleshooting purposes
+ schema:
+ type: string
+ default:
+ description: Service unavailable
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/errorResponse"
+ headers:
+ apim-request-id:
+ description: Request ID for troubleshooting purposes
+ schema:
+ type: string
+ x-ms-examples:
+ Create a chat completion.:
+ $ref: ./examples/chat_completions.yaml
+ Creates a completion based on Azure Search data and system-assigned managed identity.:
+ $ref: ./examples/chat_completions_azure_search_minimum.yaml
+ Creates a completion based on Azure Search image vector data.:
+ $ref: ./examples/chat_completions_azure_search_image_vector.yaml
+ Creates a completion based on Azure Search vector data, previous assistant message and user-assigned managed identity.:
+ $ref: ./examples/chat_completions_azure_search_advanced.yaml
+ Creates a completion for the provided Azure Cosmos DB.:
+ $ref: ./examples/chat_completions_cosmos_db.yaml
+ Creates a completion for the provided Mongo DB.:
+ $ref: ./examples/chat_completions_mongo_db.yaml
+ Creates a completion for the provided Elasticsearch.:
+ $ref: ./examples/chat_completions_elasticsearch.yaml
+ Creates a completion for the provided Pinecone resource.:
+ $ref: ./examples/chat_completions_pinecone.yaml
+ /deployments/{deployment-id}/audio/transcriptions:
+ post:
+ summary: Transcribes audio into the input language.
+ operationId: Transcriptions_Create
+ parameters:
+ - in: path
+ name: deployment-id
+ required: true
+ schema:
+ type: string
+ example: whisper
+ description: Deployment id of the whisper model.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ multipart/form-data:
+ schema:
+ $ref: "#/components/schemas/createTranscriptionRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: "#/components/schemas/audioResponse"
+ - $ref: "#/components/schemas/audioVerboseResponse"
+ text/plain:
+ schema:
+ type: string
+ description: Transcribed text in the output format (when response_format was one of text, vtt or srt).
+ x-ms-examples:
+ Create an audio transcription with json response format.:
+ $ref: ./examples/audio_transcription_object.yaml
+ Create an audio transcription with text response format.:
+ $ref: ./examples/audio_transcription_text.yaml
+ /deployments/{deployment-id}/audio/translations:
+ post:
+ summary: Transcribes and translates input audio into English text.
+ operationId: Translations_Create
+ parameters:
+ - in: path
+ name: deployment-id
+ required: true
+ schema:
+ type: string
+ example: whisper
+ description: Deployment id of the whisper model which was deployed.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ multipart/form-data:
+ schema:
+ $ref: "#/components/schemas/createTranslationRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ oneOf:
+ - $ref: "#/components/schemas/audioResponse"
+ - $ref: "#/components/schemas/audioVerboseResponse"
+ text/plain:
+ schema:
+ type: string
+ description: Transcribed text in the output format (when response_format was one of text, vtt or srt).
+ x-ms-examples:
+ Create an audio translation with json response format.:
+ $ref: ./examples/audio_translation_object.yaml
+ Create an audio translation with text response format.:
+ $ref: ./examples/audio_translation_text.yaml
+ /deployments/{deployment-id}/audio/speech:
+ post:
+ summary: Generates audio from the input text.
+ operationId: Speech_Create
+ parameters:
+ - in: path
+ name: deployment-id
+ required: true
+ schema:
+ type: string
+ example: tts-1
+ description: Deployment id of the tts model which was deployed.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ multipart/form-data:
+ schema:
+ $ref: "#/components/schemas/createSpeechRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/octet-stream:
+ schema:
+ type: string
+ format: binary
+ x-ms-examples:
+ Create an audio from text with response format mp3.:
+ $ref: ./examples/audio_speech.yaml
+ /deployments/{deployment-id}/images/generations:
+ post:
+ summary: Generates a batch of images from a text caption on a given DALLE model deployment
+ operationId: ImageGenerations_Create
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/imageGenerationsRequest"
+ parameters:
+ - in: path
+ name: deployment-id
+ required: true
+ schema:
+ type: string
+ example: dalle-deployment
+ description: Deployment id of the dalle model which was deployed.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: Ok
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/generateImagesResponse"
+ default:
+ description: An error occurred.
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/dalleErrorResponse"
+ x-ms-examples:
+ Create an image.:
+ $ref: ./examples/image_generation.yaml
+ /assistants:
+ get:
+ operationId: List_Assistants
+ tags:
+ - Assistants
+ summary: Returns a list of assistants.
+ parameters:
+ - name: limit
+ in: query
+ description: &pagination_limit_param_description |
+ A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20.
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: &pagination_order_param_description |
+ Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.
+ schema:
+ type: string
+ default: desc
+ enum:
+ - asc
+ - desc
+ x-ms-enum:
+ name: ListAssistantsOrder
+ modelAsString: true
+ values:
+ - value: asc
+ description: Order results in ascending order
+ - value: desc
+ description: Order results in descending order
+ - name: after
+ in: query
+ description: &pagination_after_param_description |
+ A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: &pagination_before_param_description |
+ A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.
+ schema:
+ type: string
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listAssistantsResponse"
+ x-ms-examples:
+ Create an image.:
+ $ref: ./examples/list_assistants.yaml
+ post:
+ operationId: Create_Assistant
+ tags:
+ - Assistants
+ summary: Create an assistant with a model and instructions.
+ parameters:
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createAssistantRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/assistantObject"
+ x-ms-examples:
+ Create an assistant.:
+ $ref: ./examples/create_assistant.yaml
+
+ /assistants/{assistant_id}:
+ get:
+ operationId: Get_Assistant
+ tags:
+ - Assistants
+ summary: Retrieves an assistant.
+ parameters:
+ - in: path
+ name: assistant_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the assistant to retrieve.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/assistantObject"
+ x-ms-examples:
+ Create an assistant.:
+ $ref: ./examples/retrieve_assistant.yaml
+ post:
+ operationId: Modify_Assistant
+ tags:
+ - Assistant
+ summary: Modifies an assistant.
+ parameters:
+ - in: path
+ name: assistant_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the assistant to modify.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/modifyAssistantRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/assistantObject"
+ x-ms-examples:
+ Create an assistant.:
+ $ref: ./examples/modify_assistant.yaml
+ delete:
+ operationId: Delete_Assistant
+ tags:
+ - Assistants
+ summary: Delete an assistant.
+ parameters:
+ - in: path
+ name: assistant_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the assistant to delete.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/deleteAssistantResponse"
+ x-ms-examples:
+ Create an assistant.:
+ $ref: ./examples/delete_assistant.yaml
+ /threads:
+ post:
+ operationId: Create_Thread
+ tags:
+ - Assistants
+ summary: Create a thread.
+ parameters:
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createThreadRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/threadObject"
+ x-ms-examples:
+ Create a thread.:
+ $ref: ./examples/create_thread.yaml
+ /threads/{thread_id}:
+ get:
+ operationId: Get_Thread
+ tags:
+ - Assistants
+ summary: Retrieves a thread.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to retrieve.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/threadObject"
+ x-ms-examples:
+ Create a thread.:
+ $ref: ./examples/retrieve_thread.yaml
+ post:
+ operationId: Modify_Thread
+ tags:
+ - Assistants
+ summary: Modifies a thread.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to modify. Only the `metadata` can be modified.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/modifyThreadRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/threadObject"
+ x-ms-examples:
+ Modify a thread.:
+ $ref: ./examples/modify_thread.yaml
+ delete:
+ operationId: Delete_Thread
+ tags:
+ - Assistants
+ summary: Delete a thread.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to delete.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/deleteThreadResponse"
+ x-ms-examples:
+ Delete a thread.:
+ $ref: ./examples/delete_thread.yaml
+ /threads/{thread_id}/messages:
+ get:
+ operationId: List_Messages
+ tags:
+ - Assistants
+ summary: Returns a list of messages for a given thread.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the [thread](/docs/api-reference/threads) the messages belong to.
+ - name: limit
+ in: query
+ description: *pagination_limit_param_description
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: |
+ Sort order by the `created_at` timestamp of the objects. `asc` for ascending order and `desc` for descending order.
+ schema:
+ type: string
+ default: desc
+ enum:
+ - asc
+ - desc
+ x-ms-enum:
+ name: ListMessagesOrder
+ modelAsString: true
+ values:
+ - value: asc
+ description: Order results in ascending order
+ - value: desc
+ description: Order results in descending order
+ - name: after
+ in: query
+ description: |
+ A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include after=obj_foo in order to fetch the next page of the list.
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: |
+ A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include before=obj_foo in order to fetch the previous page of the list.
+ schema:
+ type: string
+ - name: run_id
+ in: query
+ description: |
+ Filter messages by the run ID that generated them.
+ schema:
+ type: string
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listMessagesResponse"
+ x-ms-examples:
+ List messages.:
+ $ref: ./examples/list_messages.yaml
+ post:
+ operationId: Create_Message
+ tags:
+ - Assistants
+ summary: Create a message.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the [thread](/docs/api-reference/threads) to create a message for.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createMessageRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/messageObject"
+ x-ms-examples:
+ Create a message.:
+ $ref: ./examples/create_message.yaml
+ /threads/{thread_id}/messages/{message_id}:
+ get:
+ operationId: Get_Message
+ tags:
+ - Assistants
+ summary: Retrieve a message.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the [thread](/docs/api-reference/threads) to which this message belongs.
+ - in: path
+ name: message_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the message to retrieve.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/messageObject"
+ x-ms-examples:
+ Retrieve a message.:
+ $ref: ./examples/get_message.yaml
+ post:
+ operationId: Modify_Message
+ tags:
+ - Assistants
+ summary: Modifies a message.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to which this message belongs.
+ - in: path
+ name: message_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the message to modify.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/modifyMessageRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/messageObject"
+ x-ms-examples:
+ Modify a message.:
+ $ref: ./examples/modify_message.yaml
+ /threads/runs:
+ post:
+ operationId: Create_Thread_And_Run
+ tags:
+ - Assistants
+ summary: Create a thread and run it in one request.
+ parameters:
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createThreadAndRunRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runObject"
+ x-ms-examples:
+ Create a thread and run it.:
+ $ref: ./examples/create_thread_and_run.yaml
+ /threads/{thread_id}/runs:
+ get:
+ operationId: List_Runs
+ tags:
+ - Assistants
+ summary: Returns a list of runs belonging to a thread.
+ parameters:
+ - name: thread_id
+ in: path
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread the run belongs to.
+ - name: limit
+ in: query
+ description: *pagination_limit_param_description
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: *pagination_order_param_description
+ schema:
+ type: string
+ default: desc
+ enum:
+ - asc
+ - desc
+ x-ms-enum:
+ name: ListRunsOrder
+ modelAsString: true
+ values:
+ - value: asc
+ description: Order results in ascending order
+ - value: desc
+ description: Order results in descending order
+ - name: after
+ in: query
+ description: *pagination_after_param_description
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: *pagination_before_param_description
+ schema:
+ type: string
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listRunsResponse"
+ x-ms-examples:
+ List runs.:
+ $ref: ./examples/list_runs.yaml
+ post:
+ operationId: Create_Run
+ tags:
+ - Assistants
+ summary: Create a run.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to run.
+ - name: include[]
+ in: query
+ description: >
+ A list of additional fields to include in the response. Currently
+ the only supported value is
+ `step_details.tool_calls[*].file_search.results[*].content` to fetch
+ the file search result content.
+
+ schema:
+ type: array
+ items:
+ type: string
+ enum:
+ - step_details.tool_calls[*].file_search.results[*].content
+ x-ms-enum:
+ name: Include
+ modelAsString: true
+ values:
+ - value: step_details.tool_calls[*].file_search.results[*].content
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createRunRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runObject"
+ x-ms-examples:
+ Create a run.:
+ $ref: ./examples/create_run.yaml
+ /threads/{thread_id}/runs/{run_id}:
+ get:
+ operationId: Get_Run
+ tags:
+ - Assistants
+ summary: Retrieves a run.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the [thread](/docs/api-reference/threads) that was run.
+ - in: path
+ name: run_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the run to retrieve.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runObject"
+ x-ms-examples:
+ Retrieve a run.:
+ $ref: ./examples/get_run.yaml
+ post:
+ operationId: Modify_Run
+ tags:
+ - Assistants
+ summary: Modifies a run.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the [thread](/docs/api-reference/threads) that was run.
+ - in: path
+ name: run_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the run to modify.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/modifyRunRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runObject"
+ x-ms-examples:
+ Modify a run.:
+ $ref: ./examples/modify_run.yaml
+ /threads/{thread_id}/runs/{run_id}/submit_tool_outputs:
+ post:
+ operationId: Submit_Tool_Outputs_To_Run
+ tags:
+ - Assistants
+ summary: |
+ When a run has the `status: "requires_action"` and `required_action.type` is `submit_tool_outputs`, this endpoint can be used to submit the outputs from the tool calls once they're all completed. All outputs must be submitted in a single request.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the [thread](/docs/api-reference/threads) to which this run belongs.
+ - in: path
+ name: run_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the run that requires the tool output submission.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/submitToolOutputsRunRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runObject"
+ x-ms-examples:
+ Submit tool outputs to a run.:
+ $ref: ./examples/submit_tool_outputs_to_run.yaml
+ /threads/{thread_id}/runs/{run_id}/cancel:
+ post:
+ operationId: Cancel_Run
+ tags:
+ - Assistants
+ summary: Cancels a run that is `in_progress`.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to which this run belongs.
+ - in: path
+ name: run_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the run to cancel.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runObject"
+ x-ms-examples:
+ Cancel a run.:
+ $ref: ./examples/cancel_run.yaml
+ /threads/{thread_id}/runs/{run_id}/steps:
+ get:
+ operationId: List_Run_Steps
+ tags:
+ - Assistants
+ summary: Returns a list of run steps belonging to a run.
+ parameters:
+ - name: thread_id
+ in: path
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread the run and run steps belong to.
+ - name: run_id
+ in: path
+ required: true
+ schema:
+ type: string
+ description: The ID of the run the run steps belong to.
+ - name: limit
+ in: query
+ description: *pagination_limit_param_description
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: *pagination_order_param_description
+ schema:
+ type: string
+ default: desc
+ enum:
+ - asc
+ - desc
+ x-ms-enum:
+ name: ListRunStepsOrder
+ modelAsString: true
+ values:
+ - value: asc
+ description: Order results in ascending order
+ - value: desc
+ description: Order results in descending order
+ - name: after
+ in: query
+ description: *pagination_after_param_description
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: *pagination_before_param_description
+ schema:
+ type: string
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ - name: include[]
+ in: query
+ description: >
+ A list of additional fields to include in the response. Currently
+ the only supported value is
+ `step_details.tool_calls[*].file_search.results[*].content` to fetch
+ the file search result content.
+
+ schema:
+ type: array
+ items:
+ type: string
+ enum:
+ - step_details.tool_calls[*].file_search.results[*].content
+ x-ms-enum:
+ name: Include
+ modelAsString: true
+ values:
+ - value: step_details.tool_calls[*].file_search.results[*].content
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listRunStepsResponse"
+ x-ms-examples:
+ List run steps.:
+ $ref: ./examples/list_run_steps.yaml
+ /threads/{thread_id}/runs/{run_id}/steps/{step_id}:
+ get:
+ operationId: Get_Run_Step
+ tags:
+ - Assistants
+ summary: Retrieves a run step.
+ parameters:
+ - in: path
+ name: thread_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the thread to which the run and run step belongs.
+ - in: path
+ name: run_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the run to which the run step belongs.
+ - in: path
+ name: step_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the run step to retrieve.
+ - name: include[]
+ in: query
+ description: >
+ A list of additional fields to include in the response. Currently
+ the only supported value is
+ `step_details.tool_calls[*].file_search.results[*].content` to fetch
+ the file search result content.
+
+ schema:
+ type: array
+ items:
+ type: string
+ enum:
+ - step_details.tool_calls[*].file_search.results[*].content
+ x-ms-enum:
+ name: Include
+ modelAsString: true
+ values:
+ - value: step_details.tool_calls[*].file_search.results[*].content
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/runStepObject"
+ x-ms-examples:
+ Retrieve a run step.:
+ $ref: ./examples/get_run_step.yaml
+ /vector_stores:
+ get:
+ operationId: List_Vector_Stores
+ tags:
+ - Vector Stores
+ summary: Returns a list of vector stores.
+ parameters:
+ - name: limit
+ in: query
+ description: *pagination_limit_param_description
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: *pagination_order_param_description
+ schema:
+ type: string
+ default: desc
+ enum: ["asc", "desc"]
+ x-ms-enum:
+ name: ListVectorStoresOrder
+ modelAsString: true
+ values:
+ - value: asc
+ - value: desc
+ - name: after
+ in: query
+ description: *pagination_after_param_description
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: *pagination_before_param_description
+ schema:
+ type: string
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listVectorStoresResponse"
+ x-ms-examples:
+ List vector stores.:
+ $ref: ./examples/list_vector_stores.yaml
+ post:
+ operationId: Create_Vector_Store
+ tags:
+ - Vector Stores
+ summary: Create a vector store.
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createVectorStoreRequest"
+ parameters:
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreObject"
+ x-ms-examples:
+ Create a vector store.:
+ $ref: ./examples/create_vector_store.yaml
+
+ /vector_stores/{vector_store_id}:
+ get:
+ operationId: Get_Vector_Store
+ tags:
+ - Vector Stores
+ summary: Retrieves a vector store.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the vector store to retrieve.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreObject"
+ x-ms-examples:
+ Retrieve a vector store.:
+ $ref: ./examples/retrieve_vector_store.yaml
+ post:
+ operationId: Modify_Vector_Store
+ tags:
+ - Vector Stores
+ summary: Modifies a vector store.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the vector store to modify.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/updateVectorStoreRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreObject"
+ x-ms-examples:
+ Modify a vector store.:
+ $ref: ./examples/modify_vector_store.yaml
+
+ delete:
+ operationId: Delete_Vector_Store
+ tags:
+ - Vector Stores
+ summary: Delete a vector store.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the vector store to delete.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/deleteVectorStoreResponse"
+ x-ms-examples:
+ Delete a vector store.:
+ $ref: ./examples/delete_vector_store.yaml
+
+ /vector_stores/{vector_store_id}/files:
+ get:
+ operationId: List_Vector_Store_Files
+ tags:
+ - Vector Stores
+ summary: Returns a list of vector store files.
+ parameters:
+ - name: vector_store_id
+ in: path
+ description: The ID of the vector store that the files belong to.
+ required: true
+ schema:
+ type: string
+ - name: limit
+ in: query
+ description: *pagination_limit_param_description
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: *pagination_order_param_description
+ schema:
+ type: string
+ default: desc
+ enum: ["asc", "desc"]
+ x-ms-enum:
+ name: ListVectorStoreFilesOrder
+ modelAsString: true
+ values:
+ - value: asc
+ - value: desc
+ - name: after
+ in: query
+ description: *pagination_after_param_description
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: *pagination_before_param_description
+ schema:
+ type: string
+ - name: filter
+ in: query
+ description: "Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`."
+ schema:
+ type: string
+ enum: ["in_progress", "completed", "failed", "cancelled"]
+ x-ms-enum:
+ name: ListVectorStoreFilesFilter
+ modelAsString: true
+ values:
+ - value: in_progress
+ - value: completed
+ - value: failed
+ - value: cancelled
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listVectorStoreFilesResponse"
+ x-ms-examples:
+ List vector store files.:
+ $ref: ./examples/list_vector_store_files.yaml
+ post:
+ operationId: Create_Vector_Store_File
+ tags:
+ - Vector Stores
+ summary: Create a vector store file by attaching a [File](/docs/api-reference/files) to a [vector store](/docs/api-reference/vector-stores/object).
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ example: vs_abc123
+ description: |
+ The ID of the vector store for which to create a File.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createVectorStoreFileRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreFileObject"
+ x-ms-examples:
+ Create a vector store file.:
+ $ref: ./examples/create_vector_store_file.yaml
+
+ /vector_stores/{vector_store_id}/files/{file_id}:
+ get:
+ operationId: Get_Vector_Store_File
+ tags:
+ - Vector Stores
+ summary: Retrieves a vector store file.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ example: vs_abc123
+ description: The ID of the vector store that the file belongs to.
+ - in: path
+ name: file_id
+ required: true
+ schema:
+ type: string
+ example: file-abc123
+ description: The ID of the file being retrieved.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreFileObject"
+ x-ms-examples:
+ Retrieve a vector store file.:
+ $ref: ./examples/retrieve_vector_store_file.yaml
+ delete:
+ operationId: Delete_Vector_Store_File
+ tags:
+ - Vector Stores
+ summary: Delete a vector store file. This will remove the file from the vector store but the file itself will not be deleted. To delete the file, use the [delete file](/docs/api-reference/files/delete) endpoint.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the vector store that the file belongs to.
+ - in: path
+ name: file_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the file to delete.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/deleteVectorStoreFileResponse"
+ x-ms-examples:
+ Delete a vector store file.:
+ $ref: ./examples/delete_vector_store_file.yaml
+
+ /vector_stores/{vector_store_id}/file_batches:
+ post:
+ operationId: Create_Vector_Store_File_Batch
+ tags:
+ - Vector Stores
+ summary: Create a vector store file batch.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ example: vs_abc123
+ description: |
+ The ID of the vector store for which to create a File Batch.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/createVectorStoreFileBatchRequest"
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreFileBatchObject"
+ x-ms-examples:
+ Create a vector store file batch.:
+ $ref: ./examples/create_vector_store_file_batch.yaml
+
+ /vector_stores/{vector_store_id}/file_batches/{batch_id}:
+ get:
+ operationId: Get_Vector_Store_File_Batch
+ tags:
+ - Vector Stores
+ summary: Retrieves a vector store file batch.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ example: vs_abc123
+ description: The ID of the vector store that the file batch belongs to.
+ - in: path
+ name: batch_id
+ required: true
+ schema:
+ type: string
+ example: vsfb_abc123
+ description: The ID of the file batch being retrieved.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreFileBatchObject"
+ x-ms-examples:
+ Retrieve a vector store file batch.:
+ $ref: ./examples/retrieve_vector_store_file_batch.yaml
+
+ /vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel:
+ post:
+ operationId: Cancel_Vector_Store_File_Batch
+ tags:
+ - Vector Stores
+ summary: Cancel a vector store file batch. This attempts to cancel the processing of files in this batch as soon as possible.
+ parameters:
+ - in: path
+ name: vector_store_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the vector store that the file batch belongs to.
+ - in: path
+ name: batch_id
+ required: true
+ schema:
+ type: string
+ description: The ID of the file batch to cancel.
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/vectorStoreFileBatchObject"
+ x-ms-examples:
+ Cancel a vector store file batch.:
+ $ref: ./examples/cancel_vector_store_file_batch.yaml
+
+ /vector_stores/{vector_store_id}/file_batches/{batch_id}/files:
+ get:
+ operationId: List_Vector_Store_File_Batch_Files
+ tags:
+ - Vector Stores
+ summary: Returns a list of vector store files in a batch.
+ parameters:
+ - name: vector_store_id
+ in: path
+ description: The ID of the vector store that the files belong to.
+ required: true
+ schema:
+ type: string
+ - name: batch_id
+ in: path
+ description: The ID of the file batch that the files belong to.
+ required: true
+ schema:
+ type: string
+ - name: limit
+ in: query
+ description: *pagination_limit_param_description
+ required: false
+ schema:
+ type: integer
+ default: 20
+ - name: order
+ in: query
+ description: *pagination_order_param_description
+ schema:
+ type: string
+ default: desc
+ enum: ["asc", "desc"]
+ x-ms-enum:
+ name: ListVectorStoreFilesOrder
+ modelAsString: true
+ values:
+ - value: asc
+ - value: desc
+ - name: after
+ in: query
+ description: *pagination_after_param_description
+ schema:
+ type: string
+ - name: before
+ in: query
+ description: *pagination_before_param_description
+ schema:
+ type: string
+ - name: filter
+ in: query
+ description: "Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`."
+ schema:
+ type: string
+ enum: ["in_progress", "completed", "failed", "cancelled"]
+ x-ms-enum:
+ name: ListVectorStoreFilesFilter
+ modelAsString: true
+ values:
+ - value: in_progress
+ - value: completed
+ - value: failed
+ - value: cancelled
+ - in: query
+ name: api-version
+ required: true
+ schema:
+ type: string
+ example: 2024-12-01-preview
+ description: api version
+ responses:
+ "200":
+ description: OK
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/listVectorStoreFilesResponse"
+ x-ms-examples:
+ List vector store files in a batch.:
+ $ref: ./examples/list_vector_store_file_batch.yaml
+
+components:
+ schemas:
+ errorResponse:
+ type: object
+ properties:
+ error:
+ $ref: "#/components/schemas/error"
+ errorBase:
+ type: object
+ properties:
+ code:
+ type: string
+ message:
+ type: string
+ error:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/errorBase"
+ properties:
+ param:
+ type: string
+ type:
+ type: string
+ inner_error:
+ $ref: "#/components/schemas/innerError"
+ innerError:
+ description: Inner error with additional details.
+ type: object
+ properties:
+ code:
+ $ref: "#/components/schemas/innerErrorCode"
+ content_filter_results:
+ $ref: "#/components/schemas/contentFilterPromptResults"
+ innerErrorCode:
+ description: Error codes for the inner error object.
+ enum:
+ - ResponsibleAIPolicyViolation
+ type: string
+ x-ms-enum:
+ name: InnerErrorCode
+ modelAsString: true
+ values:
+ - value: ResponsibleAIPolicyViolation
+ description: The prompt violated one of more content filter rules.
+ dalleErrorResponse:
+ type: object
+ properties:
+ error:
+ $ref: "#/components/schemas/dalleError"
+ dalleError:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/errorBase"
+ properties:
+ param:
+ type: string
+ type:
+ type: string
+ inner_error:
+ $ref: "#/components/schemas/dalleInnerError"
+ dalleInnerError:
+ description: Inner error with additional details.
+ type: object
+ properties:
+ code:
+ $ref: "#/components/schemas/innerErrorCode"
+ content_filter_results:
+ $ref: "#/components/schemas/dalleFilterResults"
+ revised_prompt:
+ type: string
+ description: The prompt that was used to generate the image, if there was any revision to the prompt.
+ contentFilterCompletionTextSpan:
+ description: Describes a span within generated completion text. Offset 0 is the first UTF32 code point of the completion text.
+ type: object
+ properties:
+ completion_start_offset:
+ description: Offset of the UTF32 code point which begins the span.
+ type: integer
+ completion_end_offset:
+ description: Offset of the first UTF32 code point which is excluded from the span. This field is always equal to completion_start_offset for empty spans. This field is always larger than completion_start_offset for non-empty spans.
+ type: integer
+ required:
+ - completion_start_offset
+ - completion_end_offset
+ contentFilterResultBase:
+ type: object
+ properties:
+ filtered:
+ type: boolean
+ required:
+ - filtered
+ contentFilterSeverityResult:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/contentFilterResultBase"
+ - properties:
+ severity:
+ type: string
+ enum:
+ - safe
+ - low
+ - medium
+ - high
+ x-ms-enum:
+ name: ContentFilterSeverity
+ modelAsString: true
+ values:
+ - value: safe
+ description: General content or related content in generic or non-harmful contexts.
+ - value: low
+ description: Harmful content at a low intensity and risk level.
+ - value: medium
+ description: Harmful content at a medium intensity and risk level.
+ - value: high
+ description: Harmful content at a high intensity and risk level.
+ required:
+ - severity
+ - filtered
+ contentFilterDetectedResult:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/contentFilterResultBase"
+ - properties:
+ detected:
+ type: boolean
+ required:
+ - detected
+ - filtered
+ contentFilterDetectedWithCitationResult:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/contentFilterDetectedResult"
+ - properties:
+ citation:
+ type: object
+ properties:
+ URL:
+ type: string
+ license:
+ type: string
+ required:
+ - detected
+ - filtered
+ contentFilterDetectedWithCompletionTextSpansResult:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/contentFilterDetectedResult"
+ - properties:
+ details:
+ type: array
+ items:
+ $ref: "#/components/schemas/contentFilterCompletionTextSpan"
+ required:
+ - detected
+ - filtered
+ - details
+ contentFilterIdResult:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/contentFilterResultBase"
+ - properties:
+ id:
+ type: string
+ required:
+ - id
+ - filtered
+ contentFilterResultsBase:
+ type: object
+ description: Information about the content filtering results.
+ properties:
+ sexual:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ violence:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ hate:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ self_harm:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ profanity:
+ $ref: "#/components/schemas/contentFilterDetectedResult"
+ custom_blocklists:
+ $ref: "#/components/schemas/contentFilterDetailedResults"
+ error:
+ $ref: "#/components/schemas/errorBase"
+ contentFilterPromptResults:
+ type: object
+ description: Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.
+ allOf:
+ - $ref: "#/components/schemas/contentFilterResultsBase"
+ - properties:
+ jailbreak:
+ $ref: "#/components/schemas/contentFilterDetectedResult"
+ indirect_attack:
+ $ref: "#/components/schemas/contentFilterDetectedResult"
+ contentFilterChoiceResults:
+ type: object
+ description: Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about third party text and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.
+ allOf:
+ - $ref: "#/components/schemas/contentFilterResultsBase"
+ - properties:
+ protected_material_text:
+ $ref: "#/components/schemas/contentFilterDetectedResult"
+ - properties:
+ protected_material_code:
+ $ref: "#/components/schemas/contentFilterDetectedWithCitationResult"
+ - properties:
+ ungrounded_material:
+ $ref: "#/components/schemas/contentFilterDetectedWithCompletionTextSpansResult"
+ contentFilterDetailedResults:
+ type: object
+ description: Content filtering results with a detail of content filter ids for the filtered segments.
+ allOf:
+ - $ref: "#/components/schemas/contentFilterResultBase"
+ - properties:
+ details:
+ items:
+ $ref: "#/components/schemas/contentFilterIdResult"
+ type: array
+ required:
+ - filtered
+ - details
+ promptFilterResult:
+ type: object
+ description: Content filtering results for a single prompt in the request.
+ properties:
+ prompt_index:
+ type: integer
+ content_filter_results:
+ $ref: "#/components/schemas/contentFilterPromptResults"
+ promptFilterResults:
+ type: array
+ description: Content filtering results for zero or more prompts in the request. In a streaming request, results for different prompts may arrive at different times or in different orders.
+ items:
+ $ref: "#/components/schemas/promptFilterResult"
+ dalleContentFilterResults:
+ type: object
+ description: Information about the content filtering results.
+ properties:
+ sexual:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ violence:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ hate:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ self_harm:
+ $ref: "#/components/schemas/contentFilterSeverityResult"
+ dalleFilterResults:
+ type: object
+ description: Information about the content filtering category (hate, sexual, violence, self_harm), if it has been detected, as well as the severity level (very_low, low, medium, high-scale that determines the intensity and risk level of harmful content) and if it has been filtered or not. Information about jailbreak content and profanity, if it has been detected, and if it has been filtered or not. And information about customer block list, if it has been filtered and its id.
+ allOf:
+ - $ref: "#/components/schemas/dalleContentFilterResults"
+ - properties:
+ profanity:
+ $ref: "#/components/schemas/contentFilterDetectedResult"
+ jailbreak:
+ $ref: "#/components/schemas/contentFilterDetectedResult"
+ custom_blocklists:
+ $ref: "#/components/schemas/contentFilterDetailedResults"
+ chatCompletionsRequestCommon:
+ type: object
+ properties:
+ temperature:
+ description: |-
+ What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
+ We generally recommend altering this or `top_p` but not both.
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ top_p:
+ description: |-
+ An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
+ We generally recommend altering this or `temperature` but not both.
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ stream:
+ description: "If set, partial message deltas will be sent, like in ChatGPT. Tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a `data: [DONE]` message."
+ type: boolean
+ nullable: true
+ default: false
+ stop:
+ description: Up to 4 sequences where the API will stop generating further tokens.
+ oneOf:
+ - type: string
+ nullable: true
+ - type: array
+ items:
+ type: string
+ nullable: false
+ minItems: 1
+ maxItems: 4
+ description: Array minimum size of 1 and maximum of 4
+ default: null
+ max_tokens:
+ description: |
+ The maximum number of tokens allowed for the generated answer. By default, the number of tokens the model can return will be (4096 - prompt tokens).
+
+ This is not compatible with o1 series models.
+ type: integer
+ default: 4096
+ max_completion_tokens:
+ description: |
+ An upper bound for the number of tokens that can be generated for a completion, including visible output tokens and reasoning tokens. This is only supported in o1 series models. Will expand the support to other models in future API release.
+
+ 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
+ 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
+ store:
+ type: boolean
+ default: false
+ nullable: true
+ description: Whether or not to store the output of this chat completion request for use in our model distillation or evaluation products.
+ metadata:
+ type: object
+ nullable: true
+ description: Developer-defined tags and values used for filtering completions in the stored completions dashboard.
+ additionalProperties:
+ type: string
+ 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
+ createCompletionRequest:
+ type: object
+ properties:
+ prompt:
+ description: &completions_prompt_description |
+ The prompt(s) to generate completions for, encoded as a string, array of strings, array of tokens, or array of token arrays.
+
+ Note that <|endoftext|> is the document separator that the model sees during training, so if a prompt is not specified the model will generate as if from the beginning of a new document.
+ default: "<|endoftext|>"
+ nullable: true
+ oneOf:
+ - type: string
+ default: ""
+ example: "This is a test."
+ - type: array
+ items:
+ type: string
+ default: ""
+ example: "This is a test."
+ best_of:
+ type: integer
+ default: 1
+ minimum: 0
+ maximum: 20
+ nullable: true
+ description: &completions_best_of_description |
+ Generates `best_of` completions server-side and returns the "best" (the one with the highest log probability per token). Results cannot be streamed.
+
+ When used with `n`, `best_of` controls the number of candidate completions and `n` specifies how many to return – `best_of` must be greater than `n`.
+
+ **Note:** Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for `max_tokens` and `stop`.
+ echo:
+ type: boolean
+ default: false
+ nullable: true
+ description: &completions_echo_description >
+ Echo back the prompt in addition to the completion
+ frequency_penalty:
+ type: number
+ default: 0
+ minimum: -2
+ maximum: 2
+ nullable: true
+ description: &completions_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.
+
+ logit_bias: &completions_logit_bias
+ type: object
+ x-oaiTypeLabel: map
+ default: null
+ nullable: true
+ additionalProperties:
+ type: integer
+ description: &completions_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 GPT tokenizer) to an associated bias value from -100 to 100. You can use this [tokenizer tool](https://platform.openai.com/tokenizer?view=bpe) 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.
+ logprobs: &completions_logprobs_configuration
+ type: integer
+ minimum: 0
+ maximum: 5
+ default: null
+ nullable: true
+ description: &completions_logprobs_description |
+ Include the log probabilities on the `logprobs` most likely output 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.
+
+ The maximum value for `logprobs` is 5.
+ max_tokens:
+ type: integer
+ minimum: 0
+ default: 16
+ example: 16
+ nullable: true
+ description: &completions_max_tokens_description |
+ The maximum number of [tokens](https://platform.openai.com/tokenizer) that can be generated in the completion.
+
+ The token count of your prompt plus `max_tokens` cannot exceed the model's context length. [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) for counting tokens.
+ n:
+ type: integer
+ minimum: 1
+ maximum: 128
+ default: 1
+ example: 1
+ nullable: true
+ description: &completions_completions_description |
+ How many completions to generate for each prompt.
+
+ **Note:** Because this parameter generates many completions, it can quickly consume your token quota. Use carefully and ensure that you have reasonable settings for `max_tokens` and `stop`.
+ presence_penalty:
+ type: number
+ default: 0
+ minimum: -2
+ maximum: 2
+ nullable: true
+ description: &completions_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.
+ seed: &completions_seed_param
+ type: integer
+ minimum: -9223372036854775808
+ maximum: 9223372036854775807
+ nullable: true
+ description: |
+ If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same `seed` and parameters should return the same result.
+
+ Determinism is not guaranteed, and you should refer to the `system_fingerprint` response parameter to monitor changes in the backend.
+ stop:
+ description: &completions_stop_description >
+ Up to 4 sequences where the API will stop generating further tokens. The returned text will not contain the stop sequence.
+ default: null
+ nullable: true
+ oneOf:
+ - type: string
+ default: <|endoftext|>
+ example: "\n"
+ nullable: true
+ - type: array
+ minItems: 1
+ maxItems: 4
+ items:
+ type: string
+ example: '["\n"]'
+ stream:
+ description: >
+ Whether to stream back partial progress. If set, tokens will be sent as data-only [server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#Event_stream_format)
+ as they become available, with the stream terminated by a `data: [DONE]` message. [Example Python code](https://cookbook.openai.com/examples/how_to_stream_completions).
+ type: boolean
+ nullable: true
+ default: false
+ suffix:
+ description: |
+ The suffix that comes after a completion of inserted text.
+
+ This parameter is only supported for `gpt-3.5-turbo-instruct`.
+ default: null
+ nullable: true
+ type: string
+ example: "test."
+ stream_options:
+ $ref: "#/components/schemas/chatCompletionStreamOptions"
+ temperature:
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ description: &completions_temperature_description |
+ What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
+
+ We generally recommend altering this or `top_p` but not both.
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: &completions_top_p_description |
+ An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
+
+ We generally recommend altering this or `temperature` but not both.
+ user: &end_user_param_configuration
+ type: string
+ example: user-1234
+ description: |
+ A unique identifier representing your end-user, which can help to monitor and detect abuse.
+ required:
+ - prompt
+
+ createCompletionResponse:
+ type: object
+ description: |
+ Represents a completion response from the API. Note: both the streamed and non-streamed response objects share the same shape (unlike the chat endpoint).
+ properties:
+ id:
+ type: string
+ description: A unique identifier for the completion.
+ choices:
+ type: array
+ description: The list of completion choices the model generated for the input prompt.
+ items:
+ type: object
+ required:
+ - finish_reason
+ - index
+ - logprobs
+ - text
+ properties:
+ finish_reason:
+ type: string
+ description: &completion_finish_reason_description |
+ The reason the model stopped generating tokens. This will be `stop` if the model hit a natural stop point or a provided stop sequence,
+ `length` if the maximum number of tokens specified in the request was reached,
+ or `content_filter` if content was omitted due to a flag from our content filters.
+ enum: ["stop", "length", "content_filter"]
+ index:
+ type: integer
+ logprobs:
+ type: object
+ nullable: true
+ properties:
+ text_offset:
+ type: array
+ items:
+ type: integer
+ token_logprobs:
+ type: array
+ items:
+ type: number
+ tokens:
+ type: array
+ items:
+ type: string
+ top_logprobs:
+ type: array
+ items:
+ type: object
+ additionalProperties:
+ type: number
+ text:
+ type: string
+ content_filter_results:
+ $ref: "#/components/schemas/contentFilterChoiceResults"
+ created:
+ type: integer
+ description: The Unix timestamp (in seconds) of when the completion was created.
+ model:
+ type: string
+ description: The model used for completion.
+ prompt_filter_results:
+ $ref: "#/components/schemas/promptFilterResults"
+ system_fingerprint:
+ type: string
+ description: |
+ This fingerprint represents the backend configuration that the model runs with.
+
+ Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism.
+ object:
+ type: string
+ description: The object type, which is always "text_completion"
+ enum: [text_completion]
+ usage:
+ $ref: "#/components/schemas/completionUsage"
+ required:
+ - id
+ - object
+ - created
+ - model
+ - choices
+
+ createChatCompletionRequest:
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/chatCompletionsRequestCommon"
+ - properties:
+ messages:
+ description: A list of messages comprising the conversation so far. [Example Python code](https://github.com/openai/openai-cookbook/blob/main/examples/How_to_format_inputs_to_ChatGPT_models.ipynb).
+ type: array
+ minItems: 1
+ items:
+ $ref: "#/components/schemas/chatCompletionRequestMessage"
+ data_sources:
+ type: array
+ description: |2-
+ The configuration entries for Azure OpenAI chat extensions that use them.
+ This additional specification is only compatible with Azure OpenAI.
+ items:
+ $ref: "#/components/schemas/azureChatExtensionConfiguration"
+ reasoning_effort:
+ type: string
+ enum:
+ - low
+ - medium
+ - high
+ default: medium
+ description: >
+ **o1 models only**
+
+
+ Constrains effort on reasoning for
+
+ [reasoning
+ models](https://platform.openai.com/docs/guides/reasoning).
+
+ Currently supported values are `low`, `medium`, and `high`. Reducing
+
+ reasoning effort can result in faster responses and fewer tokens
+ used
+
+ on reasoning in a response.
+ frequency_penalty:
+ type: number
+ default: 0
+ minimum: -2
+ maximum: 2
+ nullable: true
+ description: *completions_frequency_penalty_description
+ logit_bias:
+ type: object
+ default: null
+ nullable: true
+ additionalProperties:
+ type: integer
+ 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.
+ logprobs:
+ description: Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the `content` of `message`.
+ type: boolean
+ default: false
+ nullable: true
+ top_logprobs:
+ description: An integer between 0 and 20 specifying the number of most likely tokens to return at each token position, each with an associated log probability. `logprobs` must be set to `true` if this parameter is used.
+ type: integer
+ minimum: 0
+ maximum: 20
+ nullable: true
+ max_tokens:
+ description: |
+ The maximum number of [tokens](/tokenizer) that can be generated in the chat completion.
+
+ The total length of input tokens and generated tokens is limited by the model's context length. [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) for counting tokens.
+ type: integer
+ nullable: true
+ 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. Note that you will be charged based on the number of generated tokens across all of the choices. Keep `n` as `1` to minimize costs.
+ parallel_tool_calls:
+ $ref: "#/components/schemas/ParallelToolCalls"
+ presence_penalty:
+ type: number
+ default: 0
+ minimum: -2
+ maximum: 2
+ nullable: true
+ description: *completions_presence_penalty_description
+ response_format:
+ description: |
+ An object specifying the format that the model must output. Compatible with [GPT-4o](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-4-and-gpt-4-turbo-models), [GPT-4o mini](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-4-and-gpt-4-turbo-models), [GPT-4 Turbo](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-4-and-gpt-4-turbo-models) and all [GPT-3.5](https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/models#gpt-35) Turbo models newer than `gpt-3.5-turbo-1106`.
+
+ Setting to `{ "type": "json_schema", "json_schema": {...} }` enables Structured Outputs which guarantees the model will match your supplied JSON schema.
+
+ Setting to `{ "type": "json_object" }` enables JSON mode, which guarantees the message the model generates is valid JSON.
+
+ **Important:** when using JSON mode, you **must** also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly "stuck" request. Also note that the message content may be partially cut off if `finish_reason="length"`, which indicates the generation exceeded `max_tokens` or the conversation exceeded the max context length.
+ oneOf:
+ - $ref: "#/components/schemas/ResponseFormatText"
+ - $ref: "#/components/schemas/ResponseFormatJsonObject"
+ - $ref: "#/components/schemas/ResponseFormatJsonSchema"
+ x-oaiExpandable: true
+ seed:
+ type: integer
+ minimum: -9223372036854775808
+ maximum: 9223372036854775807
+ nullable: true
+ description: |
+ This feature is in Beta.
+ If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same `seed` and parameters should return the same result.
+ Determinism is not guaranteed, and you should refer to the `system_fingerprint` response parameter to monitor changes in the backend.
+ stop:
+ description: |
+ Up to 4 sequences where the API will stop generating further tokens.
+ default: null
+ oneOf:
+ - type: string
+ nullable: true
+ - type: array
+ minItems: 1
+ maxItems: 4
+ items:
+ type: string
+ stream:
+ description: >
+ If set, partial message deltas will be sent, like in ChatGPT. Tokens will be sent as data-only [server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#Event_stream_format)
+ as they become available, with the stream terminated by a `data: [DONE]` message. [Example Python code](https://cookbook.openai.com/examples/how_to_stream_completions).
+ type: boolean
+ nullable: true
+ default: false
+ stream_options:
+ $ref: "#/components/schemas/chatCompletionStreamOptions"
+ temperature:
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ description: *completions_temperature_description
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: *completions_top_p_description
+ tools:
+ type: array
+ description: >
+ A list of tools the model may call. Currently, only functions are supported as a tool.
+ Use this to provide a list of functions the model may generate JSON inputs for. A max of 128 functions are supported.
+ items:
+ $ref: "#/components/schemas/chatCompletionTool"
+ tool_choice:
+ $ref: "#/components/schemas/chatCompletionToolChoiceOption"
+ function_call:
+ deprecated: true
+ description: |
+ Deprecated in favor of `tool_choice`.
+
+ Controls which (if any) function is called by the model.
+ `none` means the model will not call a function and instead generates a message.
+ `auto` means the model can pick between generating a message or calling a function.
+ Specifying a particular function via `{"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
+ description: >
+ `none` means the model will not call a function and instead generates a message.
+ `auto` means the model can pick between generating a message or calling a function.
+ enum: [none, auto]
+ - $ref: "#/components/schemas/chatCompletionFunctionCallOption"
+ x-oaiExpandable: true
+ functions:
+ deprecated: true
+ description: |
+ Deprecated in favor of `tools`.
+
+ A list of functions the model may generate JSON inputs for.
+ type: array
+ minItems: 1
+ maxItems: 128
+ items:
+ $ref: "#/components/schemas/chatCompletionFunctions"
+ user: *end_user_param_configuration
+ user_security_context:
+ $ref: "#/components/schemas/user_security_context"
+
+ required:
+ - messages
+
+ user_security_context:
+ description: |
+ User security context contains several parameters that describe the AI application itself, and the end user that interacts with the AI application. These fields assist your security operations teams to investigate and mitigate security incidents by providing a comprehensive approach to protecting your AI applications. [Learn more](https://aka.ms/TP4AI/Documentation/EndUserContext) about protecting AI applications using Microsoft Defender for Cloud.
+ type: object
+ properties:
+ application_name:
+ type: string
+ description: The name of the application. Sensitive personal information should not be included in this field.
+ end_user_id:
+ type: string
+ format: uuid
+ description: This identifier is the Microsoft Entra ID (formerly Azure Active Directory) user object ID used to authenticate end-users within the generative AI application. Sensitive personal information should not be included in this field.
+ end_user_tenant_id:
+ type: string
+ format: uuid
+ description: The Microsoft 365 tenant ID the end user belongs to. It's required when the generative AI application is multi tenant.
+ source_ip:
+ type: string
+ description: Captures the original client's IP address, accepting both IPv4 and IPv6 formats.
+
+ chatCompletionFunctions:
+ type: object
+ deprecated: true
+ properties:
+ description:
+ type: string
+ description: A description of what the function does, used by the model to choose when and how to call the function.
+ name:
+ type: string
+ description: The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
+ parameters:
+ $ref: "#/components/schemas/FunctionParameters"
+ required:
+ - name
+
+ chatCompletionFunctionCallOption:
+ type: object
+ description: >
+ Specifying a particular function via `{"name": "my_function"}` forces the model to call that function.
+ properties:
+ name:
+ type: string
+ description: The name of the function to call.
+ required:
+ - name
+
+ chatCompletionFunctionParameters:
+ type: object
+ description: The parameters the functions accepts, described as a JSON Schema object. See the [guide/](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format.
+ additionalProperties: true
+
+ chatCompletionRequestMessage:
+ oneOf:
+ - $ref: "#/components/schemas/ChatCompletionRequestDeveloperMessage"
+ - $ref: "#/components/schemas/chatCompletionRequestSystemMessage"
+ - $ref: "#/components/schemas/chatCompletionRequestUserMessage"
+ - $ref: "#/components/schemas/chatCompletionRequestAssistantMessage"
+ - $ref: "#/components/schemas/chatCompletionRequestToolMessage"
+ - $ref: "#/components/schemas/chatCompletionRequestFunctionMessage"
+
+ ChatCompletionRequestDeveloperMessage:
+ type: object
+ title: Developer message
+ description: >
+ Developer-provided instructions that the model should follow, regardless
+ of
+
+ messages sent by the user. With o1 models and newer, `developer`
+ messages
+
+ replace the previous `system` messages.
+ properties:
+ content:
+ description: The contents of the developer message.
+ oneOf:
+ - type: string
+ description: The contents of the developer message.
+ title: Text content
+ - type: array
+ description: An array of content parts with a defined type. For developer
+ messages, only type `text` is supported.
+ title: Array of content parts
+ items:
+ $ref: "#/components/schemas/chatCompletionRequestDeveloperMessageContentPart"
+ minItems: 1
+ role:
+ type: string
+ enum:
+ - developer
+ description: The role of the messages author, in this case `developer`.
+ name:
+ type: string
+ description: An optional name for the participant. Provides the model
+ information to differentiate between participants of the same role.
+ required:
+ - content
+ - role
+
+ chatCompletionRequestSystemMessage:
+ type: object
+ title: System message
+ properties:
+ content:
+ description: The contents of the system message.
+ oneOf:
+ - type: string
+ description: The contents of the system message.
+ title: Text content
+ - type: array
+ description: An array of content parts with a defined type. For system messages, only type `text` is supported.
+ title: Array of content parts
+ items:
+ $ref: "#/components/schemas/chatCompletionRequestSystemMessageContentPart"
+ minItems: 1
+ role:
+ type: string
+ enum: ["system"]
+ description: The role of the messages author, in this case `system`.
+ name:
+ type: string
+ description: An optional name for the participant. Provides the model information to differentiate between participants of the same role.
+ required:
+ - content
+ - role
+
+ chatCompletionRequestUserMessage:
+ type: object
+ title: User message
+ properties:
+ content:
+ description: |
+ The contents of the user message.
+ oneOf:
+ - type: string
+ description: The text contents of the message.
+ title: Text content
+ - type: array
+ description: An array of content parts with a defined type, each can be of type `text` or `image_url` when passing in images. You can pass multiple images by adding multiple `image_url` content parts. Image input is only supported when using the `gpt-4o` model.
+ title: Array of content parts
+ items:
+ $ref: "#/components/schemas/chatCompletionRequestUserMessageContentPart"
+ minItems: 1
+ x-oaiExpandable: true
+ role:
+ type: string
+ enum: ["user"]
+ description: The role of the messages author, in this case `user`.
+ name:
+ type: string
+ description: An optional name for the participant. Provides the model information to differentiate between participants of the same role.
+ required:
+ - content
+ - role
+
+ chatCompletionRequestAssistantMessage:
+ type: object
+ title: Assistant message
+ properties:
+ content:
+ nullable: true
+ oneOf:
+ - type: string
+ description: The contents of the assistant message.
+ title: Text content
+ - type: array
+ description: An array of content parts with a defined type. Can be one or more of type `text`, or exactly one of type `refusal`.
+ title: Array of content parts
+ items:
+ $ref: "#/components/schemas/chatCompletionRequestAssistantMessageContentPart"
+ minItems: 1
+ description: |
+ The contents of the assistant message. Required unless `tool_calls` or `function_call` is specified.
+ refusal:
+ nullable: true
+ type: string
+ description: The refusal message by the assistant.
+ role:
+ type: string
+ enum: ["assistant"]
+ description: The role of the messages author, in this case `assistant`.
+ name:
+ type: string
+ description: An optional name for the participant. Provides the model information to differentiate between participants of the same role.
+ tool_calls:
+ $ref: "#/components/schemas/chatCompletionMessageToolCalls"
+ function_call:
+ type: object
+ deprecated: true
+ description: "Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model."
+ nullable: true
+ properties:
+ 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.
+ name:
+ type: string
+ description: The name of the function to call.
+ required:
+ - arguments
+ - name
+ required:
+ - role
+
+ chatCompletionRequestToolMessage:
+ type: object
+ title: Tool message
+ properties:
+ role:
+ type: string
+ enum: ["tool"]
+ description: The role of the messages author, in this case `tool`.
+ content:
+ oneOf:
+ - type: string
+ description: The contents of the tool message.
+ title: Text content
+ - type: array
+ description: An array of content parts with a defined type. For tool messages, only type `text` is supported.
+ title: Array of content parts
+ items:
+ $ref: "#/components/schemas/chatCompletionRequestToolMessageContentPart"
+ minItems: 1
+ description: The contents of the tool message.
+ tool_call_id:
+ type: string
+ description: Tool call that this message is responding to.
+ required:
+ - role
+ - content
+ - tool_call_id
+
+ chatCompletionRequestFunctionMessage:
+ type: object
+ title: Function message
+ deprecated: true
+ properties:
+ role:
+ type: string
+ enum: ["function"]
+ description: The role of the messages author, in this case `function`.
+ content:
+ nullable: true
+ type: string
+ description: The contents of the function message.
+ name:
+ type: string
+ description: The name of the function to call.
+ required:
+ - role
+ - content
+ - name
+
+ chatCompletionRequestDeveloperMessageContentPart:
+ oneOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartText"
+
+ chatCompletionRequestSystemMessageContentPart:
+ oneOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartText"
+
+ chatCompletionRequestUserMessageContentPart:
+ oneOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartImage"
+
+ chatCompletionRequestAssistantMessageContentPart:
+ oneOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartText"
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartRefusal"
+
+ chatCompletionRequestToolMessageContentPart:
+ oneOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessageContentPartText"
+
+ chatCompletionRequestMessageContentPartText:
+ type: object
+ title: Text content part
+ properties:
+ type:
+ type: string
+ enum: ["text"]
+ description: The type of the content part.
+ text:
+ type: string
+ description: The text content.
+ required:
+ - type
+ - text
+
+ chatCompletionRequestMessageContentPartImage:
+ type: object
+ title: Image content part
+ properties:
+ type:
+ type: string
+ enum: ["image_url"]
+ description: The type of the content part.
+ image_url:
+ type: object
+ properties:
+ url:
+ type: string
+ description: Either a URL of the image or the base64 encoded image data.
+ format: uri
+ detail:
+ type: string
+ description: Specifies the detail level of the image. Learn more in the [Vision guide](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/gpt-with-vision?tabs=rest%2Csystem-assigned%2Cresource#detail-parameter-settings-in-image-processing-low-high-auto).
+ enum: ["auto", "low", "high"]
+ default: "auto"
+ required:
+ - url
+ required:
+ - type
+ - image_url
+
+ chatCompletionRequestMessageContentPartRefusal:
+ type: object
+ title: Refusal content part
+ properties:
+ type:
+ type: string
+ enum: ["refusal"]
+ description: The type of the content part.
+ refusal:
+ type: string
+ description: The refusal message generated by the model.
+ required:
+ - type
+ - refusal
+ azureChatExtensionConfiguration:
+ required:
+ - type
+ type: object
+ properties:
+ type:
+ $ref: "#/components/schemas/azureChatExtensionType"
+ description: |2-
+ A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat
+ completions request that should use Azure OpenAI chat extensions to augment the response behavior.
+ The use of this configuration is compatible only with Azure OpenAI.
+ discriminator:
+ propertyName: type
+ mapping:
+ azure_search: "#/components/schemas/azureSearchChatExtensionConfiguration"
+ azure_cosmos_db: "#/components/schemas/azureCosmosDBChatExtensionConfiguration"
+ elasticsearch: "#/components/schemas/elasticsearchChatExtensionConfiguration"
+ mongo_db: "#/components/schemas/mongoDBChatExtensionConfiguration"
+ pinecone: "#/components/schemas/pineconeChatExtensionConfiguration"
+ azureChatExtensionType:
+ type: string
+ description: |2-
+ A representation of configuration data for a single Azure OpenAI chat extension. This will be used by a chat
+ completions request that should use Azure OpenAI chat extensions to augment the response behavior.
+ The use of this configuration is compatible only with Azure OpenAI.
+ enum:
+ - azure_search
+ - azure_cosmos_db
+ - elasticsearch
+ - mongo_db
+ - pinecone
+ x-ms-enum:
+ name: AzureChatExtensionType
+ modelAsString: true
+ values:
+ - name: azureSearch
+ value: azure_search
+ description: Represents the use of Azure Search as an Azure OpenAI chat extension.
+ - name: azureCosmosDB
+ value: azure_cosmos_db
+ description: Represents the use of Azure Cosmos DB as an Azure OpenAI chat extension.
+ - name: elasticsearch
+ value: elasticsearch
+ description: Represents the use of Elasticsearch® index as an Azure OpenAI chat extension.
+ - name: mongoDB
+ value: mongo_db
+ description: Represents the use of Mongo DB as an Azure OpenAI chat extension.
+ - name: pinecone
+ value: pinecone
+ description: Represents the use of Pinecone index as an Azure OpenAI chat extension.
+ azureSearchChatExtensionConfiguration:
+ required:
+ - parameters
+ description: |-
+ A specific representation of configurable options for Azure Search when using it as an Azure OpenAI chat
+ extension.
+ allOf:
+ - $ref: "#/components/schemas/azureChatExtensionConfiguration"
+ - properties:
+ parameters:
+ $ref: "#/components/schemas/azureSearchChatExtensionParameters"
+ x-ms-discriminator-value: azure_search
+ azureSearchChatExtensionParameters:
+ required:
+ - authentication
+ - endpoint
+ - index_name
+ type: object
+ properties:
+ authentication:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ - $ref: "#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions"
+ - $ref: "#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions"
+ - $ref: "#/components/schemas/onYourDataAccessTokenAuthenticationOptions"
+ top_n_documents:
+ type: integer
+ description: The configured top number of documents to feature for the configured query.
+ format: int32
+ max_search_queries:
+ type: integer
+ description: The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.
+ format: int32
+ allow_partial_result:
+ type: boolean
+ default: false
+ description: If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails.
+ in_scope:
+ type: boolean
+ description: Whether queries should be restricted to use of indexed data.
+ strictness:
+ maximum: 5
+ minimum: 1
+ type: integer
+ description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.
+ format: int32
+ endpoint:
+ type: string
+ description: The absolute endpoint path for the Azure Search resource to use.
+ format: uri
+ index_name:
+ type: string
+ description: The name of the index to use as available in the referenced Azure Search resource.
+ fields_mapping:
+ $ref: "#/components/schemas/azureSearchIndexFieldMappingOptions"
+ query_type:
+ $ref: "#/components/schemas/azureSearchQueryType"
+ semantic_configuration:
+ type: string
+ description: The additional semantic configuration for the query.
+ filter:
+ type: string
+ description: Search filter.
+ embedding_dependency:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataEndpointVectorizationSource"
+ - $ref: "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ - $ref: "#/components/schemas/onYourDataIntegratedVectorizationSource"
+ include_contexts:
+ type: array
+ description: The included properties of the output context. If not specified, the default value is `citations` and `intent`.
+ items:
+ $ref: "#/components/schemas/onYourDataContextProperty"
+ description: Parameters for Azure Search when used as an Azure OpenAI chat extension.
+ azureSearchIndexFieldMappingOptions:
+ type: object
+ properties:
+ title_field:
+ type: string
+ description: The name of the index field to use as a title.
+ url_field:
+ type: string
+ description: The name of the index field to use as a URL.
+ filepath_field:
+ type: string
+ description: The name of the index field to use as a filepath.
+ content_fields:
+ type: array
+ description: The names of index fields that should be treated as content.
+ items:
+ type: string
+ content_fields_separator:
+ type: string
+ description: The separator pattern that content fields should use.
+ vector_fields:
+ type: array
+ description: The names of fields that represent vector data.
+ items:
+ type: string
+ image_vector_fields:
+ type: array
+ description: The names of fields that represent image vector data.
+ items:
+ type: string
+ description: Optional settings to control how fields are processed when using a configured Azure Search resource.
+ azureSearchQueryType:
+ type: string
+ description: The type of Azure Search retrieval query that should be executed when using it as an Azure OpenAI chat extension.
+ enum:
+ - simple
+ - semantic
+ - vector
+ - vector_simple_hybrid
+ - vector_semantic_hybrid
+ x-ms-enum:
+ name: AzureSearchQueryType
+ modelAsString: true
+ values:
+ - name: simple
+ value: simple
+ description: Represents the default, simple query parser.
+ - name: semantic
+ value: semantic
+ description: Represents the semantic query parser for advanced semantic modeling.
+ - name: vector
+ value: vector
+ description: Represents vector search over computed data.
+ - name: vectorSimpleHybrid
+ value: vector_simple_hybrid
+ description: Represents a combination of the simple query strategy with vector data.
+ - name: vectorSemanticHybrid
+ value: vector_semantic_hybrid
+ description: Represents a combination of semantic search and vector data querying.
+ azureCosmosDBChatExtensionConfiguration:
+ required:
+ - parameters
+ description: |-
+ A specific representation of configurable options for Azure Cosmos DB when using it as an Azure OpenAI chat
+ extension.
+ allOf:
+ - $ref: "#/components/schemas/azureChatExtensionConfiguration"
+ - properties:
+ parameters:
+ $ref: "#/components/schemas/azureCosmosDBChatExtensionParameters"
+ x-ms-discriminator-value: azure_cosmos_db
+ azureCosmosDBChatExtensionParameters:
+ required:
+ - authentication
+ - container_name
+ - database_name
+ - embedding_dependency
+ - fields_mapping
+ - index_name
+ type: object
+ properties:
+ authentication:
+ $ref: "#/components/schemas/onYourDataConnectionStringAuthenticationOptions"
+ top_n_documents:
+ type: integer
+ description: The configured top number of documents to feature for the configured query.
+ format: int32
+ max_search_queries:
+ type: integer
+ description: The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.
+ format: int32
+ allow_partial_result:
+ type: boolean
+ default: false
+ description: If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails.
+ in_scope:
+ type: boolean
+ description: Whether queries should be restricted to use of indexed data.
+ strictness:
+ maximum: 5
+ minimum: 1
+ type: integer
+ description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.
+ format: int32
+ database_name:
+ type: string
+ description: The MongoDB vCore database name to use with Azure Cosmos DB.
+ container_name:
+ type: string
+ description: The name of the Azure Cosmos DB resource container.
+ index_name:
+ type: string
+ description: The MongoDB vCore index name to use with Azure Cosmos DB.
+ fields_mapping:
+ $ref: "#/components/schemas/azureCosmosDBFieldMappingOptions"
+ embedding_dependency:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataEndpointVectorizationSource"
+ - $ref: "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ include_contexts:
+ type: array
+ description: The included properties of the output context. If not specified, the default value is `citations` and `intent`.
+ items:
+ $ref: "#/components/schemas/onYourDataContextProperty"
+ description: |-
+ Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Azure Cosmos DB for
+ MongoDB vCore.
+ azureCosmosDBFieldMappingOptions:
+ required:
+ - content_fields
+ - vector_fields
+ type: object
+ properties:
+ title_field:
+ type: string
+ description: The name of the index field to use as a title.
+ url_field:
+ type: string
+ description: The name of the index field to use as a URL.
+ filepath_field:
+ type: string
+ description: The name of the index field to use as a filepath.
+ content_fields:
+ type: array
+ description: The names of index fields that should be treated as content.
+ items:
+ type: string
+ content_fields_separator:
+ type: string
+ description: The separator pattern that content fields should use.
+ vector_fields:
+ type: array
+ description: The names of fields that represent vector data.
+ items:
+ type: string
+ description: Optional settings to control how fields are processed when using a configured Azure Cosmos DB resource.
+ elasticsearchChatExtensionConfiguration:
+ required:
+ - parameters
+ description: |-
+ A specific representation of configurable options for Elasticsearch when using it as an Azure OpenAI chat
+ extension.
+ allOf:
+ - $ref: "#/components/schemas/azureChatExtensionConfiguration"
+ - properties:
+ parameters:
+ $ref: "#/components/schemas/elasticsearchChatExtensionParameters"
+ x-ms-discriminator-value: elasticsearch
+ elasticsearchChatExtensionParameters:
+ required:
+ - authentication
+ - endpoint
+ - index_name
+ type: object
+ properties:
+ authentication:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataKeyAndKeyIdAuthenticationOptions"
+ - $ref: "#/components/schemas/onYourDataEncodedApiKeyAuthenticationOptions"
+ top_n_documents:
+ type: integer
+ description: The configured top number of documents to feature for the configured query.
+ format: int32
+ max_search_queries:
+ type: integer
+ description: The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.
+ format: int32
+ allow_partial_result:
+ type: boolean
+ default: false
+ description: If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails.
+ in_scope:
+ type: boolean
+ description: Whether queries should be restricted to use of indexed data.
+ strictness:
+ maximum: 5
+ minimum: 1
+ type: integer
+ description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.
+ format: int32
+ endpoint:
+ type: string
+ description: The endpoint of Elasticsearch®.
+ format: uri
+ index_name:
+ type: string
+ description: The index name of Elasticsearch®.
+ fields_mapping:
+ $ref: "#/components/schemas/elasticsearchIndexFieldMappingOptions"
+ query_type:
+ $ref: "#/components/schemas/elasticsearchQueryType"
+ embedding_dependency:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataEndpointVectorizationSource"
+ - $ref: "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ - $ref: "#/components/schemas/onYourDataModelIdVectorizationSource"
+ include_contexts:
+ type: array
+ description: The included properties of the output context. If not specified, the default value is `citations` and `intent`.
+ items:
+ $ref: "#/components/schemas/onYourDataContextProperty"
+ description: "Parameters to use when configuring Elasticsearch® as an Azure OpenAI chat extension. "
+ elasticsearchIndexFieldMappingOptions:
+ type: object
+ properties:
+ title_field:
+ type: string
+ description: The name of the index field to use as a title.
+ url_field:
+ type: string
+ description: The name of the index field to use as a URL.
+ filepath_field:
+ type: string
+ description: The name of the index field to use as a filepath.
+ content_fields:
+ type: array
+ description: The names of index fields that should be treated as content.
+ items:
+ type: string
+ content_fields_separator:
+ type: string
+ description: The separator pattern that content fields should use.
+ vector_fields:
+ type: array
+ description: The names of fields that represent vector data.
+ items:
+ type: string
+ description: Optional settings to control how fields are processed when using a configured Elasticsearch® resource.
+ elasticsearchQueryType:
+ type: string
+ description: The type of Elasticsearch® retrieval query that should be executed when using it as an Azure OpenAI chat extension.
+ enum:
+ - simple
+ - vector
+ x-ms-enum:
+ name: ElasticsearchQueryType
+ modelAsString: true
+ values:
+ - name: simple
+ value: simple
+ description: Represents the default, simple query parser.
+ - name: vector
+ value: vector
+ description: Represents vector search over computed data.
+ mongoDBChatExtensionConfiguration:
+ required:
+ - parameters
+ description: |-
+ A specific representation of configurable options for Mongo DB when using it as an Azure OpenAI chat
+ extension.
+ allOf:
+ - $ref: "#/components/schemas/azureChatExtensionConfiguration"
+ - properties:
+ parameters:
+ $ref: "#/components/schemas/mongoDBChatExtensionParameters"
+ x-ms-discriminator-value: mongo_db
+ mongoDBChatExtensionParameters:
+ required:
+ - authentication
+ - app_name
+ - collection_name
+ - database_name
+ - endpoint
+ - embedding_dependency
+ - fields_mapping
+ - index_name
+ type: object
+ properties:
+ authentication:
+ $ref: "#/components/schemas/onYourDataUsernameAndPasswordAuthenticationOptions"
+ top_n_documents:
+ type: integer
+ description: The configured top number of documents to feature for the configured query.
+ format: int32
+ max_search_queries:
+ type: integer
+ description: The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.
+ format: int32
+ allow_partial_result:
+ type: boolean
+ default: false
+ description: If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails.
+ in_scope:
+ type: boolean
+ description: Whether queries should be restricted to use of indexed data.
+ strictness:
+ maximum: 5
+ minimum: 1
+ type: integer
+ description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.
+ format: int32
+ endpoint:
+ type: string
+ description: The name of the Mongo DB cluster endpoint.
+ database_name:
+ type: string
+ description: The name of the Mongo DB database.
+ collection_name:
+ type: string
+ description: The name of the Mongo DB Collection.
+ app_name:
+ type: string
+ description: The name of the Mongo DB Application.
+ index_name:
+ type: string
+ description: The The name of the Mongo DB index.
+ fields_mapping:
+ $ref: "#/components/schemas/mongoDBFieldMappingOptions"
+ embedding_dependency:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataEndpointVectorizationSource"
+ - $ref: "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ include_contexts:
+ type: array
+ description: The included properties of the output context. If not specified, the default value is `citations` and `intent`.
+ items:
+ $ref: "#/components/schemas/onYourDataContextProperty"
+ description: |-
+ Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Mongo DB.
+
+ mongoDBFieldMappingOptions:
+ required:
+ - content_fields
+ - vector_fields
+ type: object
+ properties:
+ title_field:
+ type: string
+ description: The name of the index field to use as a title.
+ url_field:
+ type: string
+ description: The name of the index field to use as a URL.
+ filepath_field:
+ type: string
+ description: The name of the index field to use as a filepath.
+ content_fields:
+ type: array
+ description: The names of index fields that should be treated as content.
+ items:
+ type: string
+ content_fields_separator:
+ type: string
+ description: The separator pattern that content fields should use.
+ vector_fields:
+ type: array
+ description: The names of fields that represent vector data.
+ items:
+ type: string
+ description: Optional settings to control how fields are processed when using a configured Mongo DB resource.
+
+ pineconeChatExtensionConfiguration:
+ required:
+ - parameters
+ description: |-
+ A specific representation of configurable options for Pinecone when using it as an Azure OpenAI chat
+ extension.
+ allOf:
+ - $ref: "#/components/schemas/azureChatExtensionConfiguration"
+ - properties:
+ parameters:
+ $ref: "#/components/schemas/pineconeChatExtensionParameters"
+ x-ms-discriminator-value: pinecone
+ pineconeChatExtensionParameters:
+ required:
+ - authentication
+ - embedding_dependency
+ - environment
+ - fields_mapping
+ - index_name
+ type: object
+ properties:
+ authentication:
+ $ref: "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ top_n_documents:
+ type: integer
+ description: The configured top number of documents to feature for the configured query.
+ format: int32
+ max_search_queries:
+ type: integer
+ description: The max number of rewritten queries should be send to search provider for one user message. If not specified, the system will decide the number of queries to send.
+ format: int32
+ allow_partial_result:
+ type: boolean
+ default: false
+ description: If specified as true, the system will allow partial search results to be used and the request fails if all the queries fail. If not specified, or specified as false, the request will fail if any search query fails.
+ in_scope:
+ type: boolean
+ description: Whether queries should be restricted to use of indexed data.
+ strictness:
+ maximum: 5
+ minimum: 1
+ type: integer
+ description: The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.
+ format: int32
+ environment:
+ type: string
+ description: The environment name of Pinecone.
+ index_name:
+ type: string
+ description: The name of the Pinecone database index.
+ fields_mapping:
+ $ref: "#/components/schemas/pineconeFieldMappingOptions"
+ embedding_dependency:
+ $ref: "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ include_contexts:
+ type: array
+ description: The included properties of the output context. If not specified, the default value is `citations` and `intent`.
+ items:
+ $ref: "#/components/schemas/onYourDataContextProperty"
+ description: Parameters for configuring Azure OpenAI Pinecone chat extensions.
+ pineconeFieldMappingOptions:
+ required:
+ - content_fields
+ type: object
+ properties:
+ title_field:
+ type: string
+ description: The name of the index field to use as a title.
+ url_field:
+ type: string
+ description: The name of the index field to use as a URL.
+ filepath_field:
+ type: string
+ description: The name of the index field to use as a filepath.
+ content_fields:
+ type: array
+ description: The names of index fields that should be treated as content.
+ items:
+ type: string
+ content_fields_separator:
+ type: string
+ description: The separator pattern that content fields should use.
+ description: Optional settings to control how fields are processed when using a configured Pinecone resource.
+ onYourDataAuthenticationOptions:
+ required:
+ - type
+ type: object
+ properties:
+ type:
+ $ref: "#/components/schemas/onYourDataAuthenticationType"
+ description: The authentication options for Azure OpenAI On Your Data.
+ discriminator:
+ propertyName: type
+ mapping:
+ api_key: "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ connection_string: "#/components/schemas/onYourDataConnectionStringAuthenticationOptions"
+ key_and_key_id: "#/components/schemas/onYourDataKeyAndKeyIdAuthenticationOptions"
+ encoded_api_key: "#/components/schemas/onYourDataEncodedApiKeyAuthenticationOptions"
+ access_token: "#/components/schemas/onYourDataAccessTokenAuthenticationOptions"
+ system_assigned_managed_identity: "#/components/schemas/onYourDataSystemAssignedManagedIdentityAuthenticationOptions"
+ user_assigned_managed_identity: "#/components/schemas/onYourDataUserAssignedManagedIdentityAuthenticationOptions"
+ username_and_password: "#/components/schemas/onYourDataUsernameAndPasswordAuthenticationOptions"
+ onYourDataContextProperty:
+ type: string
+ description: The context property.
+ enum:
+ - citations
+ - intent
+ - all_retrieved_documents
+ x-ms-enum:
+ name: OnYourDataContextProperty
+ modelAsString: true
+ values:
+ - name: citations
+ value: citations
+ description: The `citations` property.
+ - name: intent
+ value: intent
+ description: The `intent` property.
+ - name: allRetrievedDocuments
+ value: all_retrieved_documents
+ description: The `all_retrieved_documents` property.
+ onYourDataAuthenticationType:
+ type: string
+ description: The authentication types supported with Azure OpenAI On Your Data.
+ enum:
+ - api_key
+ - connection_string
+ - key_and_key_id
+ - encoded_api_key
+ - access_token
+ - system_assigned_managed_identity
+ - user_assigned_managed_identity
+ - username_and_password
+ x-ms-enum:
+ name: OnYourDataAuthenticationType
+ modelAsString: true
+ values:
+ - name: apiKey
+ value: api_key
+ description: Authentication via API key.
+ - name: connectionString
+ value: connection_string
+ description: Authentication via connection string.
+ - name: keyAndKeyId
+ value: key_and_key_id
+ description: Authentication via key and key ID pair.
+ - name: encodedApiKey
+ value: encoded_api_key
+ description: Authentication via encoded API key.
+ - name: accessToken
+ value: access_token
+ description: Authentication via access token.
+ - name: systemAssignedManagedIdentity
+ value: system_assigned_managed_identity
+ description: Authentication via system-assigned managed identity.
+ - name: userAssignedManagedIdentity
+ value: user_assigned_managed_identity
+ description: Authentication via user-assigned managed identity.
+ - name: usernameAndPassword
+ value: username_and_password
+ description: Authentication via username and password.
+ onYourDataApiKeyAuthenticationOptions:
+ required:
+ - key
+ description: The authentication options for Azure OpenAI On Your Data when using an API key.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ key:
+ type: string
+ description: The API key to use for authentication.
+ x-ms-discriminator-value: api_key
+ onYourDataConnectionStringAuthenticationOptions:
+ required:
+ - connection_string
+ description: The authentication options for Azure OpenAI On Your Data when using a connection string.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ connection_string:
+ type: string
+ description: The connection string to use for authentication.
+ x-ms-discriminator-value: connection_string
+ onYourDataKeyAndKeyIdAuthenticationOptions:
+ required:
+ - key
+ - key_id
+ description: The authentication options for Azure OpenAI On Your Data when using an Elasticsearch key and key ID pair.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ key:
+ type: string
+ description: The Elasticsearch key to use for authentication.
+ key_id:
+ type: string
+ description: The Elasticsearch key ID to use for authentication.
+ x-ms-discriminator-value: key_and_key_id
+ onYourDataEncodedApiKeyAuthenticationOptions:
+ required:
+ - encoded_api_key
+ description: The authentication options for Azure OpenAI On Your Data when using an Elasticsearch encoded API key.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ encoded_api_key:
+ type: string
+ description: The Elasticsearch encoded API key to use for authentication.
+ x-ms-discriminator-value: encoded_api_key
+ onYourDataAccessTokenAuthenticationOptions:
+ required:
+ - access_token
+ description: The authentication options for Azure OpenAI On Your Data when using access token.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ access_token:
+ type: string
+ description: The access token to use for authentication.
+ x-ms-discriminator-value: access_token
+ onYourDataSystemAssignedManagedIdentityAuthenticationOptions:
+ description: The authentication options for Azure OpenAI On Your Data when using a system-assigned managed identity.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ x-ms-discriminator-value: system_assigned_managed_identity
+ onYourDataUserAssignedManagedIdentityAuthenticationOptions:
+ required:
+ - managed_identity_resource_id
+ description: The authentication options for Azure OpenAI On Your Data when using a user-assigned managed identity.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ managed_identity_resource_id:
+ type: string
+ description: The resource ID of the user-assigned managed identity to use for authentication.
+ x-ms-discriminator-value: user_assigned_managed_identity
+ onYourDataUsernameAndPasswordAuthenticationOptions:
+ required:
+ - username
+ - password
+ description: The authentication options for Azure OpenAI On Your Data when using a username and a password.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataAuthenticationOptions"
+ - properties:
+ username:
+ type: string
+ description: The username to use for authentication.
+ password:
+ type: string
+ description: The password. to use for authentication.
+ x-ms-discriminator-value: username_and_password
+ onYourDataVectorizationSource:
+ required:
+ - type
+ type: object
+ properties:
+ type:
+ $ref: "#/components/schemas/onYourDataVectorizationSourceType"
+ description: An abstract representation of a vectorization source for Azure OpenAI On Your Data with vector search.
+ discriminator:
+ propertyName: type
+ mapping:
+ endpoint: "#/components/schemas/onYourDataEndpointVectorizationSource"
+ deployment_name: "#/components/schemas/onYourDataDeploymentNameVectorizationSource"
+ integrated: "#/components/schemas/onYourDataIntegratedVectorizationSource"
+ model_id: "#/components/schemas/onYourDataModelIdVectorizationSource"
+ onYourDataVectorizationSourceType:
+ type: string
+ description: |-
+ Represents the available sources Azure OpenAI On Your Data can use to configure vectorization of data for use with
+ vector search.
+ enum:
+ - endpoint
+ - deployment_name
+ - integrated
+ - model_id
+ x-ms-enum:
+ name: OnYourDataVectorizationSourceType
+ modelAsString: true
+ values:
+ - name: endpoint
+ value: endpoint
+ description: Represents vectorization performed by public service calls to an Azure OpenAI embedding model.
+ - name: deploymentName
+ value: deployment_name
+ description: |-
+ Represents an Ada model deployment name to use. This model deployment must be in the same Azure OpenAI resource, but
+ On Your Data will use this model deployment via an internal call rather than a public one, which enables vector
+ search even in private networks.
+ - name: integrated
+ value: integrated
+ description: Represents the integrated vectorizer defined within the search resource.
+ - name: modelId
+ value: model_id
+ description: |-
+ Represents a specific embedding model ID as defined in the search service.
+ Currently only supported by Elasticsearch®.
+ onYourDataEndpointVectorizationSource:
+ required:
+ - authentication
+ - endpoint
+ description: |-
+ The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based
+ on a public Azure OpenAI endpoint call for embeddings.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataVectorizationSource"
+ - properties:
+ endpoint:
+ type: string
+ description: Specifies the resource endpoint URL from which embeddings should be retrieved. It should be in the format of https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings. The api-version query parameter is not allowed.
+ format: uri
+ authentication:
+ oneOf:
+ - $ref: "#/components/schemas/onYourDataApiKeyAuthenticationOptions"
+ - $ref: "#/components/schemas/onYourDataAccessTokenAuthenticationOptions"
+ dimensions:
+ type: integer
+ description: The number of dimensions the embeddings should have. Only supported in `text-embedding-3` and later models.
+ format: int32
+ x-ms-discriminator-value: endpoint
+ onYourDataDeploymentNameVectorizationSource:
+ required:
+ - deployment_name
+ description: |-
+ The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based
+ on an internal embeddings model deployment name in the same Azure OpenAI resource.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataVectorizationSource"
+ - properties:
+ deployment_name:
+ type: string
+ description: Specifies the name of the model deployment to use for vectorization. This model deployment must be in the same Azure OpenAI resource, but On Your Data will use this model deployment via an internal call rather than a public one, which enables vector search even in private networks.
+ dimensions:
+ type: integer
+ description: The number of dimensions the embeddings should have. Only supported in `text-embedding-3` and later models.
+ format: int32
+ x-ms-discriminator-value: deployment_name
+ onYourDataIntegratedVectorizationSource:
+ description: |-
+ Represents the integrated vectorizer defined within the search resource.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataVectorizationSource"
+ x-ms-discriminator-value: integrated
+ onYourDataModelIdVectorizationSource:
+ required:
+ - model_id
+ description: |-
+ The details of a a vectorization source, used by Azure OpenAI On Your Data when applying vector search, that is based
+ on a search service model ID. Currently only supported by Elasticsearch®.
+ allOf:
+ - $ref: "#/components/schemas/onYourDataVectorizationSource"
+ - properties:
+ model_id:
+ type: string
+ description: Specifies the model ID to use for vectorization. This model ID must be defined in the search service.
+ x-ms-discriminator-value: model_id
+ azureChatExtensionsMessageContext:
+ type: object
+ properties:
+ citations:
+ type: array
+ description: The data source retrieval result, used to generate the assistant message in the response.
+ items:
+ $ref: "#/components/schemas/citation"
+ x-ms-identifiers: []
+ intent:
+ type: string
+ description: The detected intent from the chat history, used to pass to the next turn to carry over the context.
+ all_retrieved_documents:
+ type: array
+ description: All the retrieved documents.
+ items:
+ $ref: "#/components/schemas/retrievedDocument"
+
+ description: |2-
+ A representation of the additional context information available when Azure OpenAI chat extensions are involved
+ in the generation of a corresponding chat completions response. This context information is only populated when
+ using an Azure OpenAI request configured to use a matching extension.
+ citation:
+ required:
+ - content
+ type: object
+ properties:
+ content:
+ type: string
+ description: The content of the citation.
+ title:
+ type: string
+ description: The title of the citation.
+ url:
+ type: string
+ description: The URL of the citation.
+ filepath:
+ type: string
+ description: The file path of the citation.
+ chunk_id:
+ type: string
+ description: The chunk ID of the citation.
+ rerank_score:
+ type: number
+ description: The rerank score of the retrieved document.
+ format: double
+ description: citation information for a chat completions response message.
+ retrievedDocument:
+ type: object
+ description: The retrieved document.
+ required:
+ - search_queries
+ - data_source_index
+ allOf:
+ - $ref: "#/components/schemas/citation"
+ - properties:
+ search_queries:
+ type: array
+ description: The search queries used to retrieve the document.
+ items:
+ type: string
+ data_source_index:
+ type: integer
+ description: The index of the data source.
+ format: int32
+ original_search_score:
+ type: number
+ description: The original search score of the retrieved document.
+ format: double
+ filter_reason:
+ $ref: "#/components/schemas/filterReason"
+ description: Represents the rationale for filtering the document. If the document does not undergo filtering, this field will remain unset.
+
+ filterReason:
+ type: string
+ description: The filtering reason of the retrieved document.
+ enum:
+ - score
+ - rerank
+ x-ms-enum:
+ name: FilterReason
+ modelAsString: true
+ values:
+ - name: score
+ value: score
+ description: The document is filtered by original search score threshold defined by `strictness` configure.
+ - name: rerank
+ value: rerank
+ description: The document is not filtered by original search score threshold, but is filtered by rerank score and `top_n_documents` configure.
+
+ chatCompletionMessageToolCall:
+ type: object
+ properties:
+ id:
+ type: string
+ description: The ID of the tool call.
+ type:
+ $ref: "#/components/schemas/toolCallType"
+ function:
+ type: object
+ description: The function that the model called.
+ properties:
+ name:
+ type: string
+ description: The name of the function to call.
+ arguments:
+ type: string
+ description: The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function.
+ required:
+ - name
+ - arguments
+ required:
+ - id
+ - type
+ - function
+ toolCallType:
+ type: string
+ enum:
+ - function
+ description: The type of the tool call, in this case `function`.
+ x-ms-enum:
+ name: ToolCallType
+ modelAsString: true
+ values:
+ - value: function
+ description: The tool call type is function.
+ chatCompletionRequestMessageTool:
+ allOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessage"
+ - type: object
+ nullable: true
+ properties:
+ tool_call_id:
+ type: string
+ description: Tool call that this message is responding to.
+ content:
+ type: string
+ description: The contents of the message.
+ nullable: true
+ required:
+ - tool_call_id
+ - content
+ chatCompletionRequestMessageFunction:
+ allOf:
+ - $ref: "#/components/schemas/chatCompletionRequestMessage"
+ - type: object
+ description: Deprecated. Message that represents a function.
+ nullable: true
+ properties:
+ role:
+ type: string
+ enum:
+ - function
+ description: The role of the messages author, in this case `function`.
+ name:
+ type: string
+ description: The contents of the message.
+ content:
+ type: string
+ description: The contents of the message.
+ nullable: true
+ required:
+ - function_call_id
+ - content
+ createChatCompletionResponse:
+ type: object
+ description: Represents a chat completion response returned by model, based on the provided input.
+ properties:
+ id:
+ type: string
+ description: A unique identifier for the chat completion.
+ prompt_filter_results:
+ $ref: "#/components/schemas/promptFilterResults"
+ choices:
+ type: array
+ description: A list of chat completion choices. Can be more than one if `n` is greater than 1.
+ items:
+ type: object
+ required:
+ - finish_reason
+ - index
+ - message
+ - logprobs
+ properties:
+ finish_reason:
+ type: string
+ description: &chat_completion_finish_reason_description |
+ The reason the model stopped generating tokens. This will be `stop` if the model hit a natural stop point or a provided stop sequence,
+ `length` if the maximum number of tokens specified in the request was reached,
+ `content_filter` if content was omitted due to a flag from our content filters,
+ `tool_calls` if the model called a tool, or `function_call` (deprecated) if the model called a function.
+ enum:
+ [
+ "stop",
+ "length",
+ "tool_calls",
+ "content_filter",
+ "function_call",
+ ]
+ index:
+ type: integer
+ description: The index of the choice in the list of choices.
+ message:
+ $ref: "#/components/schemas/chatCompletionResponseMessage"
+ content_filter_results:
+ $ref: "#/components/schemas/contentFilterChoiceResults"
+ logprobs: &chat_completion_response_logprobs
+ description: Log probability information for the choice.
+ type: object
+ nullable: true
+ properties:
+ content:
+ description: A list of message content tokens with log probability information.
+ type: array
+ items:
+ $ref: "#/components/schemas/chatCompletionTokenLogprob"
+ nullable: true
+ refusal:
+ description: A list of message refusal tokens with log probability information.
+ type: array
+ items:
+ $ref: "#/components/schemas/chatCompletionTokenLogprob"
+ nullable: true
+ required:
+ - content
+ - refusal
+ created:
+ type: integer
+ description: The Unix timestamp (in seconds) of when the chat completion was created.
+ model:
+ type: string
+ description: The model used for the chat completion.
+ system_fingerprint:
+ type: string
+ description: |
+ This fingerprint represents the backend configuration that the model runs with.
+
+ Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism.
+ object:
+ type: string
+ description: The object type, which is always `chat.completion`.
+ enum: [chat.completion]
+ usage:
+ $ref: "#/components/schemas/completionUsage"
+ required:
+ - choices
+ - created
+ - id
+ - model
+ - object
+
+ createChatCompletionStreamResponse:
+ type: object
+ description: Represents a streamed chunk of a chat completion response returned by model, based on the provided input.
+ properties:
+ id:
+ type: string
+ description: A unique identifier for the chat completion. Each chunk has the same ID.
+ choices:
+ type: array
+ description: |
+ A list of chat completion choices. Can contain more than one elements if `n` is greater than 1.
+ items:
+ type: object
+ required:
+ - delta
+ - finish_reason
+ - index
+ properties:
+ delta:
+ $ref: "#/components/schemas/chatCompletionStreamResponseDelta"
+ logprobs: *chat_completion_response_logprobs
+ finish_reason:
+ type: string
+ description: *chat_completion_finish_reason_description
+ enum:
+ [
+ "stop",
+ "length",
+ "tool_calls",
+ "content_filter",
+ "function_call",
+ ]
+ nullable: true
+ index:
+ type: integer
+ description: The index of the choice in the list of choices.
+ created:
+ type: integer
+ description: The Unix timestamp (in seconds) of when the chat completion was created. Each chunk has the same timestamp.
+ model:
+ type: string
+ description: The model to generate the completion.
+ system_fingerprint:
+ type: string
+ description: |
+ This fingerprint represents the backend configuration that the model runs with.
+ Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that might impact determinism.
+ object:
+ type: string
+ description: The object type, which is always `chat.completion.chunk`.
+ enum: [chat.completion.chunk]
+ required:
+ - prompt_tokens
+ - completion_tokens
+ - total_tokens
+ required:
+ - choices
+ - created
+ - id
+ - model
+ - object
+
+ chatCompletionStreamResponseDelta:
+ type: object
+ description: A chat completion delta generated by streamed model responses.
+ properties:
+ content:
+ type: string
+ description: The contents of the chunk message.
+ nullable: true
+ function_call:
+ deprecated: true
+ type: object
+ description: "Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model."
+ properties:
+ 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.
+ name:
+ type: string
+ description: The name of the function to call.
+ tool_calls:
+ type: array
+ items:
+ $ref: "#/components/schemas/chatCompletionMessageToolCallChunk"
+ role:
+ type: string
+ enum: ["system", "user", "assistant", "tool"]
+ description: The role of the author of this message.
+ refusal:
+ type: string
+ description: The refusal message generated by the model.
+ nullable: true
+
+ chatCompletionMessageToolCallChunk:
+ type: object
+ properties:
+ index:
+ type: integer
+ id:
+ type: string
+ description: The ID of the tool call.
+ type:
+ type: string
+ enum: ["function"]
+ description: The type of the tool. Currently, only `function` is supported.
+ function:
+ type: object
+ properties:
+ name:
+ type: string
+ description: The name of the function to call.
+ 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:
+ - index
+
+ chatCompletionStreamOptions:
+ description: |
+ Options for streaming response. Only set this when you set `stream: true`.
+ type: object
+ nullable: true
+ default: null
+ properties:
+ include_usage:
+ type: boolean
+ description: |
+ If set, an additional chunk will be streamed before the `data: [DONE]` message. The `usage` field on this chunk shows the token usage statistics for the entire request, and the `choices` field will always be an empty array. All other chunks will also include a `usage` field, but with a null value.
+
+ chatCompletionChoiceLogProbs:
+ description: Log probability information for the choice.
+ type: object
+ nullable: true
+ properties:
+ content:
+ description: A list of message content tokens with log probability information.
+ type: array
+ items:
+ $ref: "#/components/schemas/chatCompletionTokenLogprob"
+ nullable: true
+ refusal:
+ description: A list of message refusal tokens with log probability information.
+ type: array
+ items:
+ $ref: "#/components/schemas/chatCompletionTokenLogprob"
+ nullable: true
+ required:
+ - content
+ chatCompletionTokenLogprob:
+ type: object
+ properties:
+ token:
+ description: The token.
+ type: string
+ logprob:
+ description: The log probability of this token.
+ type: number
+ bytes:
+ description: A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token.
+ type: array
+ items:
+ type: integer
+ nullable: true
+ top_logprobs:
+ description: List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested `top_logprobs` returned.
+ type: array
+ items:
+ type: object
+ properties:
+ token:
+ description: The token.
+ type: string
+ logprob:
+ description: The log probability of this token.
+ type: number
+ bytes:
+ description: A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be `null` if there is no bytes representation for the token.
+ type: array
+ items:
+ type: integer
+ nullable: true
+ required:
+ - token
+ - logprob
+ - bytes
+ required:
+ - token
+ - logprob
+ - bytes
+ - top_logprobs
+
+ chatCompletionResponseMessage:
+ type: object
+ description: A chat completion message generated by the model.
+ properties:
+ role:
+ $ref: "#/components/schemas/chatCompletionResponseMessageRole"
+ refusal:
+ type: string
+ description: The refusal message generated by the model.
+ nullable: true
+ content:
+ type: string
+ description: The contents of the message.
+ nullable: true
+ tool_calls:
+ type: array
+ description: The tool calls generated by the model, such as function calls.
+ items:
+ $ref: "#/components/schemas/chatCompletionMessageToolCall"
+ function_call:
+ $ref: "#/components/schemas/chatCompletionFunctionCall"
+ context:
+ $ref: "#/components/schemas/azureChatExtensionsMessageContext"
+ required:
+ - role
+ - content
+ - refusal
+ chatCompletionResponseMessageRole:
+ type: string
+ enum:
+ - assistant
+ description: The role of the author of the response message.
+ chatCompletionToolChoiceOption:
+ description: |
+ Controls which (if any) tool is called by the model.
+ `none` means the model will not call any tool and instead generates a message.
+ `auto` means the model can pick between generating a message or calling one or more tools.
+ `required` means the model must call one or more tools.
+ Specifying a particular tool via `{"type": "function", "function": {"name": "my_function"}}` forces the model to call that tool.
+ `none` is the default when no tools are present. `auto` is the default if tools are present.
+ oneOf:
+ - type: string
+ description: >
+ `none` means the model will not call any tool and instead generates a message.
+ `auto` means the model can pick between generating a message or calling one or more tools.
+ `required` means the model must call one or more tools.
+ enum:
+ - none
+ - auto
+ - required
+ - $ref: "#/components/schemas/chatCompletionNamedToolChoice"
+ chatCompletionNamedToolChoice:
+ type: object
+ description: Specifies a tool the model should use. Use to force the model to call a specific function.
+ properties:
+ type:
+ type: string
+ enum:
+ - "function"
+ description: The type of the tool. Currently, only `function` is supported.
+ function:
+ type: object
+ properties:
+ name:
+ type: string
+ description: The name of the function to call.
+ required:
+ - name
+ required:
+ - type
+ - function
+
+ ParallelToolCalls:
+ description: Whether to enable parallel function calling during tool use.
+ type: boolean
+ default: true
+
+ chatCompletionMessageToolCalls:
+ type: array
+ description: The tool calls generated by the model, such as function calls.
+ items:
+ $ref: "#/components/schemas/chatCompletionMessageToolCall"
+
+ chatCompletionFunctionCall:
+ type: object
+ description: Deprecated and replaced by `tool_calls`. The name and arguments of a function that should be called, as generated by the model.
+ properties:
+ name:
+ type: string
+ description: The name of the function to call.
+ arguments:
+ type: string
+ description: The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function.
+ required:
+ - name
+ - arguments
+ completionUsage:
+ type: object
+ description: Usage statistics for the completion request.
+ properties:
+ prompt_tokens:
+ type: integer
+ description: Number of tokens in the prompt.
+ completion_tokens:
+ type: integer
+ description: Number of tokens in the generated completion.
+ total_tokens:
+ type: integer
+ description: Total number of tokens used in the request (prompt + completion).
+ prompt_tokens_details:
+ type: object
+ description: Details of the prompt tokens.
+ properties:
+ cached_tokens:
+ type: integer
+ description: The number of cached prompt tokens.
+ completion_tokens_details:
+ type: object
+ description: Breakdown of tokens used in a completion.
+ properties:
+ reasoning_tokens:
+ type: integer
+ description: Tokens generated by the model for reasoning.
+ required:
+ - prompt_tokens
+ - completion_tokens
+ - total_tokens
+ chatCompletionTool:
+ type: object
+ properties:
+ type:
+ type: string
+ enum: ["function"]
+ description: The type of the tool. Currently, only `function` is supported.
+ function:
+ $ref: "#/components/schemas/FunctionObject"
+ required:
+ - type
+ - function
+
+ FunctionParameters:
+ type: object
+ description: "The parameters the functions accepts, described as a JSON Schema object. See the guide](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format. \n\nOmitting `parameters` defines a function with an empty parameter list."
+ additionalProperties: true
+
+ FunctionObject:
+ type: object
+ properties:
+ description:
+ type: string
+ description: A description of what the function does, used by the model to choose when and how to call the function.
+ name:
+ type: string
+ description: The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
+ parameters:
+ $ref: "#/components/schemas/FunctionParameters"
+ strict:
+ type: boolean
+ nullable: true
+ default: false
+ description: Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](docs/guides/function-calling).
+ required:
+ - name
+
+ ResponseFormatText:
+ type: object
+ properties:
+ type:
+ type: string
+ description: "The type of response format being defined: `text`"
+ enum:
+ - text
+ required:
+ - type
+
+ ResponseFormatJsonObject:
+ type: object
+ properties:
+ type:
+ type: string
+ description: "The type of response format being defined: `json_object`"
+ enum:
+ - json_object
+ required:
+ - type
+
+ ResponseFormatJsonSchemaSchema:
+ type: object
+ description: "The schema for the response format, described as a JSON Schema object."
+ additionalProperties: true
+
+ ResponseFormatJsonSchema:
+ type: object
+ properties:
+ type:
+ type: string
+ description: "The type of response format being defined: `json_schema`"
+ enum:
+ - json_schema
+ json_schema:
+ type: object
+ properties:
+ description:
+ type: string
+ description: A description of what the response format is for, used by the model to determine how to respond in the format.
+ name:
+ type: string
+ description: The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
+ schema:
+ $ref: "#/components/schemas/ResponseFormatJsonSchemaSchema"
+ strict:
+ type: boolean
+ nullable: true
+ default: false
+ description: Whether to enable strict schema adherence when generating the output. If set to true, the model will always follow the exact schema defined in the `schema` field. Only a subset of JSON Schema is supported when `strict` is `true`.
+ required:
+ - schema
+ - name
+ required:
+ - type
+ - json_schema
+
+ chatCompletionChoiceCommon:
+ type: object
+ properties:
+ index:
+ type: integer
+ finish_reason:
+ type: string
+ createTranslationRequest:
+ type: object
+ description: Translation request.
+ properties:
+ file:
+ type: string
+ description: The audio file to translate.
+ format: binary
+ prompt:
+ type: string
+ description: An optional text to guide the model's style or continue a previous audio segment. The prompt should be in English.
+ response_format:
+ $ref: "#/components/schemas/audioResponseFormat"
+ temperature:
+ type: number
+ default: 0
+ description: The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.
+ required:
+ - file
+ audioResponse:
+ description: Translation or transcription response when response_format was json
+ type: object
+ properties:
+ text:
+ type: string
+ description: Translated or transcribed text.
+ required:
+ - text
+ audioVerboseResponse:
+ description: Translation or transcription response when response_format was verbose_json
+ type: object
+ allOf:
+ - $ref: "#/components/schemas/audioResponse"
+ - properties:
+ task:
+ type: string
+ description: Type of audio task.
+ enum:
+ - transcribe
+ - translate
+ x-ms-enum:
+ modelAsString: true
+ language:
+ type: string
+ description: Language.
+ duration:
+ type: number
+ description: Duration.
+ segments:
+ type: array
+ items:
+ $ref: "#/components/schemas/audioSegment"
+ words:
+ type: array
+ items:
+ $ref: "#/components/schemas/audioWord"
+
+ required:
+ - text
+ audioResponseFormat:
+ title: AudioResponseFormat
+ description: Defines the format of the output.
+ enum:
+ - json
+ - text
+ - srt
+ - verbose_json
+ - vtt
+ type: string
+ x-ms-enum:
+ modelAsString: true
+ createTranscriptionRequest:
+ type: object
+ description: Transcription request.
+ properties:
+ file:
+ type: string
+ description: The audio file object to transcribe.
+ format: binary
+ prompt:
+ type: string
+ description: An optional text to guide the model's style or continue a previous audio segment. The prompt should match the audio language.
+ response_format:
+ $ref: "#/components/schemas/audioResponseFormat"
+ temperature:
+ type: number
+ default: 0
+ description: The sampling temperature, between 0 and 1. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. If set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.
+ language:
+ type: string
+ description: The language of the input audio. Supplying the input language in ISO-639-1 format will improve accuracy and latency.
+ timestamp_granularities[]:
+ description: |
+ The timestamp granularities to populate for this transcription. `response_format` must be set `verbose_json` to use timestamp granularities. Either or both of these options are supported: `word`, or `segment`. Note: There is no additional latency for segment timestamps, but generating word timestamps incurs additional latency.
+ type: array
+ items:
+ type: string
+ enum:
+ - word
+ - segment
+ default: [segment]
+ required:
+ - file
+ audioSegment:
+ type: object
+ description: Transcription or translation segment.
+ properties:
+ id:
+ type: integer
+ description: Segment identifier.
+ seek:
+ type: number
+ description: Offset of the segment.
+ start:
+ type: number
+ description: Segment start offset.
+ end:
+ type: number
+ description: Segment end offset.
+ text:
+ type: string
+ description: Segment text.
+ tokens:
+ type: array
+ items:
+ type: number
+ nullable: false
+ description: Tokens of the text.
+ temperature:
+ type: number
+ description: Temperature.
+ avg_logprob:
+ type: number
+ description: Average log probability.
+ compression_ratio:
+ type: number
+ description: Compression ratio.
+ no_speech_prob:
+ type: number
+ description: Probability of 'no speech'.
+ audioWord:
+ type: object
+ description: Transcription or translation word.
+ properties:
+ word:
+ type: string
+ description: Word
+ start:
+ type: number
+ description: Word start offset.
+ end:
+ type: number
+ description: Word end offset.
+ createSpeechRequest:
+ type: object
+ description: Speech request.
+ properties:
+ input:
+ type: string
+ description: The text to synthesize audio for. The maximum length is 4096 characters.
+ maxLength: 4096
+ voice:
+ type: string
+ description: The voice to use for speech synthesis.
+ enum:
+ - alloy
+ - echo
+ - fable
+ - onyx
+ - nova
+ - shimmer
+ response_format:
+ type: string
+ description: The format to synthesize the audio in.
+ enum:
+ - mp3
+ - opus
+ - aac
+ - flac
+ - wav
+ - pcm
+ speed:
+ description: The speed of the synthesize audio. Select a value from `0.25` to `4.0`. `1.0` is the default.
+ type: number
+ default: 1
+ minimum: 0.25
+ maximum: 4
+ required:
+ - input
+ - voice
+ imageQuality:
+ description: The quality of the image that will be generated.
+ type: string
+ enum:
+ - standard
+ - hd
+ default: standard
+ x-ms-enum:
+ name: Quality
+ modelAsString: true
+ values:
+ - value: standard
+ description: Standard quality creates images with standard quality.
+ name: Standard
+ - value: hd
+ description: HD quality creates images with finer details and greater consistency across the image.
+ name: HD
+ imagesResponseFormat:
+ description: The format in which the generated images are returned.
+ type: string
+ enum:
+ - url
+ - b64_json
+ default: url
+ x-ms-enum:
+ name: ImagesResponseFormat
+ modelAsString: true
+ values:
+ - value: url
+ description: The URL that provides temporary access to download the generated images.
+ name: Url
+ - value: b64_json
+ description: The generated images are returned as base64 encoded string.
+ name: Base64Json
+ imageSize:
+ description: The size of the generated images.
+ type: string
+ enum:
+ - 256x256
+ - 512x512
+ - 1792x1024
+ - 1024x1792
+ - 1024x1024
+ default: 1024x1024
+ x-ms-enum:
+ name: Size
+ modelAsString: true
+ values:
+ - value: 256x256
+ description: The desired size of the generated image is 256x256 pixels. Only supported for dall-e-2.
+ name: Size256x256
+ - value: 512x512
+ description: The desired size of the generated image is 512x512 pixels. Only supported for dall-e-2.
+ name: Size512x512
+ - value: 1792x1024
+ description: The desired size of the generated image is 1792x1024 pixels. Only supported for dall-e-3.
+ name: Size1792x1024
+ - value: 1024x1792
+ description: The desired size of the generated image is 1024x1792 pixels. Only supported for dall-e-3.
+ name: Size1024x1792
+ - value: 1024x1024
+ description: The desired size of the generated image is 1024x1024 pixels.
+ name: Size1024x1024
+ imageStyle:
+ description: The style of the generated images.
+ type: string
+ enum:
+ - vivid
+ - natural
+ default: vivid
+ x-ms-enum:
+ name: Style
+ modelAsString: true
+ values:
+ - value: vivid
+ description: Vivid creates images that are hyper-realistic and dramatic.
+ name: Vivid
+ - value: natural
+ description: Natural creates images that are more natural and less hyper-realistic.
+ name: Natural
+ imageGenerationsRequest:
+ type: object
+ properties:
+ prompt:
+ description: A text description of the desired image(s). The maximum length is 4000 characters.
+ type: string
+ format: string
+ example: a corgi in a field
+ minLength: 1
+ "n":
+ description: The number of images to generate.
+ type: integer
+ minimum: 1
+ maximum: 1
+ default: 1
+ size:
+ $ref: "#/components/schemas/imageSize"
+ response_format:
+ $ref: "#/components/schemas/imagesResponseFormat"
+ user:
+ description: A unique identifier representing your end-user, which can help to monitor and detect abuse.
+ type: string
+ format: string
+ example: user123456
+ quality:
+ $ref: "#/components/schemas/imageQuality"
+ style:
+ $ref: "#/components/schemas/imageStyle"
+ required:
+ - prompt
+ generateImagesResponse:
+ type: object
+ properties:
+ created:
+ type: integer
+ format: unixtime
+ description: The unix timestamp when the operation was created.
+ example: "1676540381"
+ data:
+ type: array
+ description: The result data of the operation, if successful
+ items:
+ $ref: "#/components/schemas/imageResult"
+ required:
+ - created
+ - data
+ imageResult:
+ type: object
+ description: The image url or encoded image if successful, and an error otherwise.
+ properties:
+ url:
+ type: string
+ description: The image url.
+ example: https://www.contoso.com
+ b64_json:
+ type: string
+ description: The base64 encoded image
+ content_filter_results:
+ $ref: "#/components/schemas/dalleContentFilterResults"
+ revised_prompt:
+ type: string
+ description: The prompt that was used to generate the image, if there was any revision to the prompt.
+ prompt_filter_results:
+ $ref: "#/components/schemas/dalleFilterResults"
+ line:
+ type: object
+ description: A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.
+ properties:
+ text:
+ type: string
+ spans:
+ type: array
+ description: An array of spans that represent detected objects and its bounding box information.
+ items:
+ $ref: "#/components/schemas/span"
+ required:
+ - text
+ - spans
+ span:
+ type: object
+ description: A span object that represents a detected object and its bounding box information.
+ properties:
+ text:
+ type: string
+ description: The text content of the span that represents the detected object.
+ offset:
+ type: integer
+ description: The character offset within the text where the span begins. This offset is defined as the position of the first character of the span, counting from the start of the text as Unicode codepoints.
+ length:
+ type: integer
+ description: The length of the span in characters, measured in Unicode codepoints.
+ polygon:
+ type: array
+ description: An array of objects representing points in the polygon that encloses the detected object.
+ items:
+ type: object
+ properties:
+ x:
+ type: number
+ description: The x-coordinate of the point.
+ "y":
+ type: number
+ description: The y-coordinate of the point.
+ required:
+ - text
+ - offset
+ - length
+ - polygon
+
+ runCompletionUsage:
+ type: object
+ description: Usage statistics related to the run. This value will be `null` if the run is not in a terminal state (i.e. `in_progress`, `queued`, etc.).
+ properties:
+ completion_tokens:
+ type: integer
+ description: Number of completion tokens used over the course of the run.
+ prompt_tokens:
+ type: integer
+ description: Number of prompt tokens used over the course of the run.
+ total_tokens:
+ type: integer
+ description: Total number of tokens used (prompt + completion).
+ required:
+ - prompt_tokens
+ - completion_tokens
+ - total_tokens
+ nullable: true
+
+ runStepCompletionUsage:
+ type: object
+ description: Usage statistics related to the run step. This value will be `null` while the run step's status is `in_progress`.
+ properties:
+ completion_tokens:
+ type: integer
+ description: Number of completion tokens used over the course of the run step.
+ prompt_tokens:
+ type: integer
+ description: Number of prompt tokens used over the course of the run step.
+ total_tokens:
+ type: integer
+ description: Total number of tokens used (prompt + completion).
+ required:
+ - prompt_tokens
+ - completion_tokens
+ - total_tokens
+ nullable: true
+
+ assistantsApiResponseFormatOption:
+ description: |
+ Specifies the format that the model must output. Compatible with
+ GPT-4o, GPT-4 Turbo,
+ and all GPT-3.5 Turbo models since `gpt-3.5-turbo-1106`.
+
+ Setting to `{ "type": "json_schema", "json_schema": {...} }`
+ enables Structured Outputs which ensures the model
+ will match your supplied JSON schema.
+ Learn more in the [Structured Outputs guide](/docs/guides/structured-outputs).
+
+ Setting to `{ "type": "json_object" }` enables
+ JSON mode, which ensures the message the model generates is valid JSON.
+
+ **Important:** when using JSON mode,
+ you **must** also instruct the model to produce JSON yourself
+ via a system or user message. Without this, the model may
+ generate an unending stream of whitespace until the generation
+ reaches the token limit, resulting in a long-running and
+ seemingly "stuck" request. Also note that the message content
+ may be partially cut off if `finish_reason="length"`, which indicates
+ the generation exceeded `max_tokens` or the conversation exceeded
+ the max context length.
+ oneOf:
+ - type: string
+ description: >
+ `auto` is the default value
+ enum:
+ - auto
+ x-ms-enum:
+ name: AssistantsApiResponseFormatOption
+ modelAsString: true
+ values:
+ - value: auto
+ - $ref: "#/components/schemas/ResponseFormatText"
+ - $ref: "#/components/schemas/ResponseFormatJsonObject"
+ - $ref: "#/components/schemas/ResponseFormatJsonSchema"
+
+ assistantsApiResponseFormat:
+ type: object
+ description: |
+ An object describing the expected output of the model. If `json_object` only `function` type `tools` are allowed to be passed to the Run. If `text` the model can return text or any value needed.
+ properties:
+ type:
+ type: string
+ enum: ["text", "json_object"]
+ x-ms-enum:
+ name: AssistantsApiResponseFormat
+ modelAsString: true
+ values:
+ - value: text
+ - value: json_object
+ example: "json_object"
+ default: "text"
+ description: Must be one of `text` or `json_object`.
+
+ assistantObject:
+ type: object
+ title: Assistant
+ description: Represents an `assistant` that can call the model and use tools.
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `assistant`.
+ type: string
+ enum:
+ - assistant
+ x-ms-enum:
+ name: AssistantObjectType
+ modelAsString: true
+ values:
+ - value: assistant
+ created_at:
+ type: integer
+ description: The Unix timestamp (in seconds) for when the assistant was created.
+ name:
+ description: &assistant_name_param_description |
+ The name of the assistant. The maximum length is 256 characters.
+ type: string
+ maxLength: 256
+ nullable: true
+ description:
+ description: &assistant_description_param_description |
+ The description of the assistant. The maximum length is 512 characters.
+ type: string
+ maxLength: 512
+ nullable: true
+ model:
+ description: |
+ ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.
+ type: string
+ instructions:
+ description: &assistant_instructions_param_description |
+ The system instructions that the assistant uses. The maximum length is 256,000 characters.
+ type: string
+ maxLength: 256000
+ nullable: true
+ tools:
+ description: &assistant_tools_param_description |
+ A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `file_search`, or `function`.
+ default: []
+ type: array
+ maxItems: 128
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearch"
+ - $ref: "#/components/schemas/assistantToolsFunction"
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs made available to the `code_interpreter`` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ The ID of the vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.
+ maxItems: 1
+ items:
+ type: string
+ metadata:
+ description: &metadata_description |
+ Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.
+ type: object
+ nullable: true
+ temperature:
+ description: &run_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.
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: &run_top_p_description |
+ An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
+
+ We generally recommend altering this or temperature but not both.
+ response_format:
+ $ref: "#/components/schemas/assistantsApiResponseFormatOption"
+ nullable: true
+ required:
+ - id
+ - object
+ - created_at
+ - name
+ - description
+ - model
+ - instructions
+ - tools
+ - metadata
+
+ createAssistantRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ model:
+ description: |
+ ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.
+ anyOf:
+ - type: string
+ name:
+ description: *assistant_name_param_description
+ type: string
+ nullable: true
+ maxLength: 256
+ description:
+ description: *assistant_description_param_description
+ type: string
+ nullable: true
+ maxLength: 512
+ instructions:
+ description: *assistant_instructions_param_description
+ type: string
+ nullable: true
+ maxLength: 256000
+ tools:
+ description: *assistant_tools_param_description
+ default: []
+ type: array
+ maxItems: 128
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearch"
+ - $ref: "#/components/schemas/assistantToolsFunction"
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ The vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.
+ maxItems: 1
+ items:
+ type: string
+ vector_stores:
+ type: array
+ description: |
+ A helper to create a vector store with file_ids and attach it to this assistant. There can be a maximum of 1 vector store attached to the assistant.
+ maxItems: 1
+ items:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.
+ maxItems: 10000
+ items:
+ type: string
+ chunking_strategy:
+ # Ideally we'd reuse the chunking strategy schema here, but it doesn't expand properly
+ type: object
+ description: The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.
+ oneOf:
+ - type: object
+ title: Auto Chunking Strategy
+ description: The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `auto`.
+ enum: ["auto"]
+ x-ms-enum:
+ name: AutoChunkingStrategyType
+ modelAsString: true
+ values:
+ - value: auto
+ required:
+ - type
+ - type: object
+ title: Static Chunking Strategy
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `static`.
+ enum: ["static"]
+ x-ms-enum:
+ name: StaticChunkingStrategyType
+ modelAsString: true
+ values:
+ - value: static
+ static:
+ type: object
+ additionalProperties: false
+ properties:
+ max_chunk_size_tokens:
+ type: integer
+ minimum: 100
+ maximum: 4096
+ description: The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`.
+ chunk_overlap_tokens:
+ type: integer
+ description: |
+ The number of tokens that overlap between chunks. The default value is `400`.
+
+ Note that the overlap must not exceed half of `max_chunk_size_tokens`.
+ required:
+ - max_chunk_size_tokens
+ - chunk_overlap_tokens
+ required:
+ - type
+ - static
+ metadata:
+ type: object
+ description: |
+ Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.
+ oneOf:
+ - required: [vector_store_ids]
+ - required: [vector_stores]
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ temperature:
+ description: *run_temperature_description
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: *run_top_p_description
+ response_format:
+ $ref: "#/components/schemas/assistantsApiResponseFormatOption"
+ nullable: true
+ required:
+ - model
+
+ modifyAssistantRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ model:
+ description: |
+ ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.
+ anyOf:
+ - type: string
+ name:
+ description: |
+ The name of the assistant. The maximum length is 256 characters.
+ type: string
+ nullable: true
+ maxLength: 256
+ description:
+ description: |
+ The description of the assistant. The maximum length is 512 characters.
+ type: string
+ nullable: true
+ maxLength: 512
+ instructions:
+ description: |
+ The system instructions that the assistant uses. The maximum length is 32768 characters.
+ type: string
+ nullable: true
+ maxLength: 32768
+ tools:
+ description: |
+ A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `retrieval`, or `function`.
+ default: []
+ type: array
+ maxItems: 128
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearch"
+ - $ref: "#/components/schemas/assistantToolsFunction"
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ Overrides the list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ Overrides the vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.
+ maxItems: 1
+ items:
+ type: string
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ temperature:
+ description: *run_temperature_description
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: *run_top_p_description
+ response_format:
+ $ref: "#/components/schemas/assistantsApiResponseFormatOption"
+ nullable: true
+
+ deleteAssistantResponse:
+ type: object
+ properties:
+ id:
+ type: string
+ deleted:
+ type: boolean
+ object:
+ type: string
+ enum:
+ - assistant.deleted
+ x-ms-enum:
+ name: DeleteAssistantResponseState
+ modelAsString: true
+ values:
+ - value: assistant.deleted
+ required:
+ - id
+ - object
+ - deleted
+
+ listAssistantsResponse:
+ type: object
+ properties:
+ object:
+ type: string
+ example: list
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/assistantObject"
+ first_id:
+ type: string
+ example: asst_hLBK7PXBv5Lr2NQT7KLY0ag1
+ last_id:
+ type: string
+ example: asst_QLoItBbqwyAJEzlTy4y9kOMM
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ assistantToolsCode:
+ type: object
+ title: Code interpreter tool
+ properties:
+ type:
+ type: string
+ description: "The type of tool being defined: `code_interpreter`"
+ enum:
+ - code_interpreter
+ x-ms-enum:
+ name: assistantToolsCodeType
+ modelAsString: true
+ values:
+ - value: code_interpreter
+ required:
+ - type
+
+ assistantToolsFileSearch:
+ type: object
+ title: FileSearch tool
+ properties:
+ type:
+ type: string
+ description: "The type of tool being defined: `file_search`"
+ enum:
+ - file_search
+ x-ms-enum:
+ name: assistantToolsFileSearchType
+ modelAsString: true
+ values:
+ - value: file_search
+ file_search:
+ type: object
+ description: Overrides for the file search tool.
+ properties:
+ max_num_results:
+ type: integer
+ minimum: 1
+ maximum: 50
+ description: |
+ The maximum number of results the file search tool should output. The
+ default is 20 for gpt-4* models and 5 for gpt-3.5-turbo. This number
+ should be between 1 and 50 inclusive.
+
+
+ Note that the file search tool may output fewer than `max_num_results`
+ results.
+ assistantToolsFileSearchTypeOnly:
+ type: object
+ title: FileSearch tool
+ properties:
+ type:
+ type: string
+ description: "The type of tool being defined: `file_search`"
+ enum:
+ - file_search
+ x-ms-enum:
+ name: assistantToolsFileSearchType
+ modelAsString: true
+ values:
+ - value: file_search
+ required:
+ - type
+
+ assistantToolsFunction:
+ type: object
+ title: Function tool
+ properties:
+ type:
+ type: string
+ description: "The type of tool being defined: `function`"
+ enum:
+ - function
+ x-ms-enum:
+ name: assistantToolsFunction
+ modelAsString: true
+ values:
+ - value: function
+ function:
+ type: object
+ description: The function definition.
+ properties:
+ description:
+ type: string
+ description: A description of what the function does, used by the model to choose when and how to call the function.
+ name:
+ type: string
+ description: The name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
+ parameters:
+ $ref: "#/components/schemas/chatCompletionFunctionParameters"
+ required:
+ - name
+ - parameters
+ - description
+ required:
+ - type
+ - function
+
+ truncationObject:
+ type: object
+ title: Thread Truncation Controls
+ description: Controls for how a thread will be truncated prior to the run. Use this to control the intial context window of the run.
+ properties:
+ type:
+ type: string
+ description: The truncation strategy to use for the thread. The default is `auto`. If set to `last_messages`, the thread will be truncated to the n most recent messages in the thread. When set to `auto`, messages in the middle of the thread will be dropped to fit the context length of the model, `max_prompt_tokens`.
+ enum: ["auto", "last_messages"]
+ x-ms-enum:
+ name: TruncationType
+ modelAsString: true
+ values:
+ - value: auto
+ - value: last_messages
+ last_messages:
+ type: integer
+ description: The number of most recent messages from the thread when constructing the context for the run.
+ minimum: 1
+ nullable: true
+ required:
+ - type
+
+ assistantsApiToolChoiceOption:
+ description: |
+ Controls which (if any) tool is called by the model.
+ `none` means the model will not call any tools and instead generates a message.
+ `auto` is the default value and means the model can pick between generating a message or calling a tool.
+ Specifying a particular tool like `{"type": "file_search"}` or `{"type": "function", "function": {"name": "my_function"}}` forces the model to call that tool.
+ oneOf:
+ - type: string
+ description: >
+ `none` means the model will not call a function and instead generates a message.
+ `auto` means the model can pick between generating a message or calling a function.
+ enum: [none, auto]
+ x-ms-enum:
+ name: AssistantsApiToolChoiceOption
+ modelAsString: true
+ values:
+ - value: none
+ - value: auto
+ - $ref: "#/components/schemas/assistantsNamedToolChoice"
+
+ assistantsNamedToolChoice:
+ type: object
+ description: Specifies a tool the model should use. Use to force the model to call a specific tool.
+ properties:
+ type:
+ type: string
+ enum: ["function", "code_interpreter", "file_search"]
+ description: The type of the tool. If type is `function`, the function name must be set
+ x-ms-enum:
+ name: AssistantsNamedToolChoiceType
+ modelAsString: true
+ values:
+ - value: function
+ - value: code_interpreter
+ - value: file_search
+ function:
+ type: object
+ properties:
+ name:
+ type: string
+ description: The name of the function to call.
+ required:
+ - name
+ required:
+ - type
+
+ runObject:
+ type: object
+ title: A run on a thread
+ description: Represents an execution run on a [thread](/docs/api-reference/threads).
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `thread.run`.
+ type: string
+ enum:
+ - thread.run
+ x-ms-enum:
+ name: runObjectType
+ modelAsString: true
+ values:
+ - value: thread.run
+ description: The run object type which is always thread.run
+ created_at:
+ description: The Unix timestamp (in seconds) for when the run was created.
+ type: integer
+ thread_id:
+ description: The ID of the [thread](/docs/api-reference/threads) that was executed on as a part of this run.
+ type: string
+ assistant_id:
+ description: The ID of the assistant used for execution of this run.
+ type: string
+ status:
+ description: The status of the run, which can be either `queued`, `in_progress`, `requires_action`, `cancelling`, `cancelled`, `failed`, `completed`, or `expired`.
+ type: string
+ enum:
+ - queued
+ - in_progress
+ - requires_action
+ - cancelling
+ - cancelled
+ - failed
+ - completed
+ - expired
+ x-ms-enum:
+ name: RunObjectStatus
+ modelAsString: true
+ values:
+ - value: queued
+ description: The queued state
+ - value: in_progress
+ description: The in_progress state
+ - value: requires_action
+ description: The required_action state
+ - value: cancelling
+ description: The cancelling state
+ - value: cancelled
+ description: The cancelled state
+ - value: failed
+ description: The failed state
+ - value: completed
+ description: The completed state
+ - value: expired
+ description: The expired state
+ required_action:
+ type: object
+ description: Details on the action required to continue the run. Will be `null` if no action is required.
+ nullable: true
+ properties:
+ type:
+ description: For now, this is always `submit_tool_outputs`.
+ type: string
+ enum:
+ - submit_tool_outputs
+ submit_tool_outputs:
+ type: object
+ description: Details on the tool outputs needed for this run to continue.
+ properties:
+ tool_calls:
+ type: array
+ description: A list of the relevant tool calls.
+ items:
+ $ref: "#/components/schemas/runToolCallObject"
+ required:
+ - tool_calls
+ required:
+ - type
+ - submit_tool_outputs
+ last_error:
+ type: object
+ description: The last error associated with this run. Will be `null` if there are no errors.
+ nullable: true
+ properties:
+ code:
+ type: string
+ description: One of `server_error` or `rate_limit_exceeded`.
+ enum:
+ - server_error
+ - rate_limit_exceeded
+ x-ms-enum:
+ name: LastErrorCode
+ modelAsString: true
+ values:
+ - value: server_error
+ description: The server failed to respond to request due to server error
+ - value: rate_limit_exceeded
+ description: The server failed to respond to request due to rate limit exceeded
+ message:
+ type: string
+ description: A human-readable description of the error.
+ required:
+ - code
+ - message
+ expires_at:
+ description: The Unix timestamp (in seconds) for when the run will expire.
+ type: integer
+ started_at:
+ description: The Unix timestamp (in seconds) for when the run was started.
+ type: integer
+ nullable: true
+ cancelled_at:
+ description: The Unix timestamp (in seconds) for when the run was cancelled.
+ type: integer
+ nullable: true
+ failed_at:
+ description: The Unix timestamp (in seconds) for when the run failed.
+ type: integer
+ nullable: true
+ completed_at:
+ description: The Unix timestamp (in seconds) for when the run was completed.
+ type: integer
+ nullable: true
+ incomplete_details:
+ description: Details on why the run is incomplete. Will be `null` if the run is not incomplete.
+ type: object
+ nullable: true
+ properties:
+ reason:
+ description: The reason why the run is incomplete. This will point to which specific token limit was reached over the course of the run.
+ type: string
+ enum: ["max_completion_tokens", "max_prompt_tokens"]
+ x-ms-enum:
+ name: IncompleteDetailsReason
+ modelAsString: true
+ values:
+ - value: max_completion_tokens
+ - value: max_prompt_tokens
+ model:
+ description: The model that the assistant used for this run.
+ type: string
+ instructions:
+ description: The instructions that the assistant used for this run.
+ type: string
+ tools:
+ description: The list of tools that the assistant used for this run.
+ default: []
+ type: array
+ maxItems: 20
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearch"
+ - $ref: "#/components/schemas/assistantToolsFunction"
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ usage:
+ $ref: "#/components/schemas/runCompletionUsage"
+ temperature:
+ description: The sampling temperature used for this run. If not set, defaults to 1.
+ type: number
+ nullable: true
+ top_p:
+ description: The nucleus sampling value used for this run. If not set, defaults to 1.
+ type: number
+ nullable: true
+ max_prompt_tokens:
+ type: integer
+ nullable: true
+ description: |
+ The maximum number of prompt tokens specified to have been used over the course of the run.
+ minimum: 256
+ max_completion_tokens:
+ type: integer
+ nullable: true
+ description: |
+ The maximum number of completion tokens specified to have been used over the course of the run.
+ minimum: 256
+ truncation_strategy:
+ $ref: "#/components/schemas/truncationObject"
+ nullable: true
+ tool_choice:
+ $ref: "#/components/schemas/assistantsApiToolChoiceOption"
+ nullable: true
+ parallel_tool_calls:
+ $ref: "#/components/schemas/ParallelToolCalls"
+ response_format:
+ $ref: "#/components/schemas/assistantsApiResponseFormatOption"
+ nullable: true
+ required:
+ - id
+ - object
+ - created_at
+ - thread_id
+ - assistant_id
+ - status
+ - required_action
+ - last_error
+ - expires_at
+ - started_at
+ - cancelled_at
+ - failed_at
+ - completed_at
+ - model
+ - instructions
+ - tools
+ - metadata
+ - usage
+ - incomplete_details
+ - max_prompt_tokens
+ - max_completion_tokens
+ - truncation_strategy
+ - tool_choice
+ - response_format
+
+ createRunRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ assistant_id:
+ description: The ID of the assistant to use to execute this run.
+ type: string
+ model:
+ description: The ID of the Model to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used.
+ type: string
+ nullable: true
+ instructions:
+ description: Override the default system message of the assistant. This is useful for modifying the behavior on a per-run basis.
+ type: string
+ nullable: true
+ additional_instructions:
+ description: Appends additional instructions at the end of the instructions for the run. This is useful for modifying the behavior on a per-run basis without overriding other instructions.
+ type: string
+ nullable: true
+ additional_messages:
+ description: Adds additional messages to the thread before creating the run.
+ type: array
+ items:
+ $ref: "#/components/schemas/createMessageRequest"
+ nullable: true
+ tools:
+ description: Override the tools the assistant can use for this run. This is useful for modifying the behavior on a per-run basis.
+ nullable: true
+ type: array
+ maxItems: 20
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearch"
+ - $ref: "#/components/schemas/assistantToolsFunction"
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ temperature:
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ description: *run_temperature_description
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: *run_top_p_description
+ stream:
+ type: boolean
+ nullable: true
+ description: |
+ If `true`, returns a stream of events that happen during the Run as server-sent events, terminating when the Run enters a terminal state with a `data: [DONE]` message.
+ max_prompt_tokens:
+ type: integer
+ nullable: true
+ description: |
+ The maximum number of prompt tokens that may be used over the course of the run. The run will make a best effort to use only the number of prompt tokens specified, across multiple turns of the run. If the run exceeds the number of prompt tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.
+ minimum: 256
+ max_completion_tokens:
+ type: integer
+ nullable: true
+ description: |
+ The maximum number of completion tokens that may be used over the course of the run. The run will make a best effort to use only the number of completion tokens specified, across multiple turns of the run. If the run exceeds the number of completion tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.
+ minimum: 256
+ truncation_strategy:
+ $ref: "#/components/schemas/truncationObject"
+ nullable: true
+ tool_choice:
+ $ref: "#/components/schemas/assistantsApiToolChoiceOption"
+ nullable: true
+ parallel_tool_calls:
+ $ref: "#/components/schemas/ParallelToolCalls"
+ response_format:
+ $ref: "#/components/schemas/assistantsApiResponseFormatOption"
+ nullable: true
+ required:
+ - thread_id
+ - assistant_id
+
+ listRunsResponse:
+ type: object
+ properties:
+ object:
+ type: string
+ example: list
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/runObject"
+ first_id:
+ type: string
+ example: run_hLBK7PXBv5Lr2NQT7KLY0ag1
+ last_id:
+ type: string
+ example: run_QLoItBbqwyAJEzlTy4y9kOMM
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ modifyRunRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+
+ submitToolOutputsRunRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ tool_outputs:
+ description: A list of tools for which the outputs are being submitted.
+ type: array
+ items:
+ type: object
+ properties:
+ tool_call_id:
+ type: string
+ description: The ID of the tool call in the `required_action` object within the run object the output is being submitted for.
+ output:
+ type: string
+ description: The output of the tool call to be submitted to continue the run.
+ stream:
+ type: boolean
+ nullable: true
+ description: |
+ If `true`, returns a stream of events that happen during the Run as server-sent events, terminating when the Run enters a terminal state with a `data: [DONE]` message.
+ required:
+ - tool_outputs
+
+ runToolCallObject:
+ type: object
+ description: Tool call objects
+ properties:
+ id:
+ type: string
+ description: The ID of the tool call. This ID must be referenced when you submit the tool outputs in using the [Submit tool outputs to run](/docs/api-reference/runs/submitToolOutputs) endpoint.
+ type:
+ type: string
+ description: The type of tool call the output is required for. For now, this is always `function`.
+ enum:
+ - function
+ x-ms-enum:
+ name: RunToolCallObjectType
+ modelAsString: true
+ values:
+ - value: function
+ function:
+ type: object
+ description: The function definition.
+ properties:
+ name:
+ type: string
+ description: The name of the function.
+ arguments:
+ type: string
+ description: The arguments that the model expects you to pass to the function.
+ required:
+ - name
+ - arguments
+ required:
+ - id
+ - type
+ - function
+
+ createThreadAndRunRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ assistant_id:
+ description: The ID of the assistant to use to execute this run.
+ type: string
+ thread:
+ $ref: "#/components/schemas/createThreadRequest"
+ description: If no thread is provided, an empty thread will be created.
+ model:
+ description: The ID of the [Model](/docs/api-reference/models) to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used.
+ type: string
+ nullable: true
+ instructions:
+ description: Override the default system message of the assistant. This is useful for modifying the behavior on a per-run basis.
+ type: string
+ nullable: true
+ tools:
+ description: Override the tools the assistant can use for this run. This is useful for modifying the behavior on a per-run basis.
+ nullable: true
+ type: array
+ maxItems: 20
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearch"
+ - $ref: "#/components/schemas/assistantToolsFunction"
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are used by the assistant's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ The ID of the vector store attached to this assistant. There can be a maximum of 1 vector store attached to the assistant.
+ maxItems: 1
+ items:
+ type: string
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ temperature:
+ type: number
+ minimum: 0
+ maximum: 2
+ default: 1
+ example: 1
+ nullable: true
+ description: *run_temperature_description
+ top_p:
+ type: number
+ minimum: 0
+ maximum: 1
+ default: 1
+ example: 1
+ nullable: true
+ description: *run_top_p_description
+ stream:
+ type: boolean
+ nullable: true
+ description: |
+ If `true`, returns a stream of events that happen during the Run as server-sent events, terminating when the Run enters a terminal state with a `data: [DONE]` message.
+ max_prompt_tokens:
+ type: integer
+ nullable: true
+ description: |
+ The maximum number of prompt tokens that may be used over the course of the run. The run will make a best effort to use only the number of prompt tokens specified, across multiple turns of the run. If the run exceeds the number of prompt tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.
+ minimum: 256
+ max_completion_tokens:
+ type: integer
+ nullable: true
+ description: |
+ The maximum number of completion tokens that may be used over the course of the run. The run will make a best effort to use only the number of completion tokens specified, across multiple turns of the run. If the run exceeds the number of completion tokens specified, the run will end with status `incomplete`. See `incomplete_details` for more info.
+ minimum: 256
+ truncation_strategy:
+ $ref: "#/components/schemas/truncationObject"
+ nullable: true
+ tool_choice:
+ $ref: "#/components/schemas/assistantsApiToolChoiceOption"
+ nullable: true
+ parallel_tool_calls:
+ $ref: "#/components/schemas/ParallelToolCalls"
+ response_format:
+ $ref: "#/components/schemas/assistantsApiResponseFormatOption"
+ nullable: true
+ required:
+ - thread_id
+ - assistant_id
+
+ threadObject:
+ type: object
+ title: Thread
+ description: Represents a thread that contains [messages](/docs/api-reference/messages).
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `thread`.
+ type: string
+ enum:
+ - thread
+ x-ms-enum:
+ name: ThreadObjectType
+ modelAsString: true
+ values:
+ - value: thread
+ description: The type of thread object which is always `thread`
+ created_at:
+ description: The Unix timestamp (in seconds) for when the thread was created.
+ type: integer
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ The vector store attached to this thread. There can be a maximum of 1 vector store attached to the thread.
+ maxItems: 1
+ items:
+ type: string
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ required:
+ - id
+ - object
+ - created_at
+ - tool_resources
+ - metadata
+
+ createThreadRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ messages:
+ description: A list of messages to start the thread with.
+ type: array
+ items:
+ $ref: "#/components/schemas/createMessageRequest"
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ The vector store attached to this thread. There can be a maximum of 1 vector store attached to the thread.
+ maxItems: 1
+ items:
+ type: string
+ vector_stores:
+ type: array
+ description: |
+ A helper to create a vector store with file_ids and attach it to this thread. There can be a maximum of 1 vector store attached to the thread.
+ maxItems: 1
+ items:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of file IDs to add to the vector store. There can be a maximum of 10000 files in a vector store.
+ maxItems: 10000
+ items:
+ type: string
+ chunking_strategy:
+ # Ideally we'd reuse the chunking strategy schema here, but it doesn't expand properly
+ type: object
+ description: The chunking strategy used to chunk the file(s). If not set, will use the `auto` strategy.
+ oneOf:
+ - type: object
+ title: Auto Chunking Strategy
+ description: The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`.
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `auto`.
+ enum: ["auto"]
+ x-ms-enum:
+ name: AutoChunkingStrategyType
+ modelAsString: true
+ values:
+ - value: auto
+ required:
+ - type
+ - type: object
+ title: Static Chunking Strategy
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `static`.
+ enum: ["static"]
+ x-ms-enum:
+ name: StaticChunkingStrategyType
+ modelAsString: true
+ values:
+ - value: static
+ static:
+ type: object
+ additionalProperties: false
+ properties:
+ max_chunk_size_tokens:
+ type: integer
+ minimum: 100
+ maximum: 4096
+ description: The maximum number of tokens in each chunk. The default value is `800`. The minimum value is `100` and the maximum value is `4096`.
+ chunk_overlap_tokens:
+ type: integer
+ description: |
+ The number of tokens that overlap between chunks. The default value is `400`.
+
+ Note that the overlap must not exceed half of `max_chunk_size_tokens`.
+ required:
+ - max_chunk_size_tokens
+ - chunk_overlap_tokens
+ required:
+ - type
+ - static
+ metadata:
+ type: object
+ description: |
+ Set of 16 key-value pairs that can be attached to a vector store. This can be useful for storing additional information about the vector store in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.
+ oneOf:
+ - required: [vector_store_ids]
+ - required: [vector_stores]
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+
+ modifyThreadRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ tool_resources:
+ type: object
+ description: |
+ A set of resources that are made available to the assistant's tools in this thread. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.
+ properties:
+ code_interpreter:
+ type: object
+ properties:
+ file_ids:
+ type: array
+ description: |
+ A list of File IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files associated with the tool.
+ default: []
+ maxItems: 20
+ items:
+ type: string
+ file_search:
+ type: object
+ properties:
+ vector_store_ids:
+ type: array
+ description: |
+ The vector store attached to this thread. There can be a maximum of 1 vector store attached to the thread.
+ maxItems: 1
+ items:
+ type: string
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+
+ deleteThreadResponse:
+ type: object
+ properties:
+ id:
+ type: string
+ deleted:
+ type: boolean
+ object:
+ type: string
+ enum:
+ - thread.deleted
+ x-ms-enum:
+ name: DeleteThreadResponseObjectState
+ modelAsString: true
+ values:
+ - value: thread.deleted
+ description: The delete thread response object state which is `thread.deleted`
+ required:
+ - id
+ - object
+ - deleted
+
+ listThreadsResponse:
+ properties:
+ object:
+ type: string
+ example: list
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/threadObject"
+ first_id:
+ type: string
+ example: asst_hLBK7PXBv5Lr2NQT7KLY0ag1
+ last_id:
+ type: string
+ example: asst_QLoItBbqwyAJEzlTy4y9kOMM
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ messageObject:
+ type: object
+ title: The message object
+ description: Represents a message within a [thread](/docs/api-reference/threads).
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `thread.message`.
+ type: string
+ enum:
+ - thread.message
+ x-ms-enum:
+ name: MessageObjectType
+ modelAsString: true
+ values:
+ - value: thread.message
+ description: The message object type which is `thread.message`
+ created_at:
+ description: The Unix timestamp (in seconds) for when the message was created.
+ type: integer
+ thread_id:
+ description: The [thread](/docs/api-reference/threads) ID that this message belongs to.
+ type: string
+ status:
+ description: The status of the message, which can be either `in_progress`, `incomplete`, or `completed`.
+ type: string
+ enum: ["in_progress", "incomplete", "completed"]
+ x-ms-enum:
+ name: MessageObjectStatus
+ modelAsString: true
+ values:
+ - value: in_progress
+ - value: incomplete
+ - value: completed
+ incomplete_details:
+ description: On an incomplete message, details about why the message is incomplete.
+ type: object
+ properties:
+ reason:
+ type: string
+ description: The reason the message is incomplete.
+ enum:
+ [
+ "content_filter",
+ "max_tokens",
+ "run_cancelled",
+ "run_expired",
+ "run_failed",
+ ]
+ x-ms-enum:
+ name: MessageObjectIncompleteReason
+ modelAsString: true
+ values:
+ - value: content_filter
+ - value: max_tokens
+ - value: run_cancelled
+ - value: run_expired
+ - value: run_failed
+ nullable: true
+ required:
+ - reason
+ completed_at:
+ description: The Unix timestamp (in seconds) for when the message was completed.
+ type: integer
+ nullable: true
+ incomplete_at:
+ description: The Unix timestamp (in seconds) for when the message was marked as incomplete.
+ type: integer
+ nullable: true
+ role:
+ description: The entity that produced the message. One of `user` or `assistant`.
+ type: string
+ enum:
+ - user
+ - assistant
+ x-ms-enum:
+ name: MessageObjectRole
+ modelAsString: true
+ values:
+ - value: user
+ - value: assistant
+ content:
+ description: The content of the message in array of text and/or images.
+ type: array
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/messageContentImageFileObject"
+ - $ref: "#/components/schemas/messageContentTextObject"
+ assistant_id:
+ description: If applicable, the ID of the assistant that authored this message.
+ type: string
+ nullable: true
+ run_id:
+ description: If applicable, the ID of the [run](/docs/api-reference/runs) associated with the authoring of this message.
+ type: string
+ nullable: true
+ attachments:
+ type: array
+ items:
+ type: object
+ properties:
+ file_id:
+ type: string
+ description: The ID of the file to attach to the message.
+ tools:
+ description: The tools to add this file to.
+ type: array
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearchTypeOnly"
+ description: A list of files attached to the message, and the tools they were added to.
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ required:
+ - id
+ - object
+ - created_at
+ - thread_id
+ - status
+ - incomplete_details
+ - completed_at
+ - incomplete_at
+ - role
+ - content
+ - assistant_id
+ - run_id
+ - attachments
+ - metadata
+
+ messageDeltaObject:
+ type: object
+ title: Message delta object
+ description: |
+ Represents a message delta i.e. any changed fields on a message during streaming.
+ properties:
+ id:
+ description: The identifier of the message, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `thread.message.delta`.
+ type: string
+ enum: ["thread.message.delta"]
+ x-ms-enum:
+ name: MessageDeltaObjectType
+ modelAsString: true
+ values:
+ - value: thread.message.delta
+ delta:
+ description: The delta containing the fields that have changed on the Message.
+ type: object
+ properties:
+ role:
+ description: The entity that produced the message. One of `user` or `assistant`.
+ type: string
+ enum: ["user", "assistant"]
+ x-ms-enum:
+ name: MessageDeltaObjectDeltaRole
+ modelAsString: true
+ values:
+ - value: user
+ - value: assistant
+ content:
+ description: The content of the message in array of text and/or images.
+ type: array
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/messageDeltaContentImageFileObject"
+ - $ref: "#/components/schemas/messageDeltaContentTextObject"
+ required:
+ - id
+ - object
+ - delta
+
+ createMessageRequest:
+ type: object
+ additionalProperties: false
+ required:
+ - role
+ - content
+ properties:
+ role:
+ type: string
+ enum:
+ - user
+ - assistant
+ x-ms-enum:
+ name: CreateMessageRequestRole
+ modelAsString: true
+ values:
+ - value: user
+ - value: assistant
+ description: |
+ The role of the entity that is creating the message. Allowed values include:
+ - `user`: Indicates the message is sent by an actual user and should be used in most cases to represent user-generated messages.
+ - `assistant`: Indicates the message is generated by the assistant. Use this value to insert messages from the assistant into the conversation.
+ content:
+ type: string
+ minLength: 1
+ maxLength: 256000
+ description: The content of the message.
+ attachments:
+ type: array
+ items:
+ type: object
+ properties:
+ file_id:
+ type: string
+ description: The ID of the file to attach to the message.
+ tools:
+ description: The tools to add this file to.
+ type: array
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/assistantToolsCode"
+ - $ref: "#/components/schemas/assistantToolsFileSearchTypeOnly"
+ x-oaiExpandable: true
+ description: A list of files attached to the message, and the tools they should be added to.
+ required:
+ - file_id
+ - tools
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ modifyMessageRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ deleteMessageResponse:
+ type: object
+ properties:
+ id:
+ type: string
+ deleted:
+ type: boolean
+ object:
+ type: string
+ enum:
+ - thread.message.deleted
+ x-ms-enum:
+ name: DeleteMessageResponseObject
+ modelAsString: true
+ values:
+ - value: thread.message.deleted
+ description: The delete message response object state
+ required:
+ - id
+ - object
+ - deleted
+ listMessagesResponse:
+ properties:
+ object:
+ type: string
+ example: list
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/messageObject"
+ first_id:
+ type: string
+ example: msg_hLBK7PXBv5Lr2NQT7KLY0ag1
+ last_id:
+ type: string
+ example: msg_QLoItBbqwyAJEzlTy4y9kOMM
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ messageContentImageFileObject:
+ title: Image file
+ type: object
+ description: References an image file in the content of a message.
+ properties:
+ type:
+ description: Always `image_file`.
+ type: string
+ enum:
+ - image_file
+ x-ms-enum:
+ name: MessageContentImageFileObjectType
+ modelAsString: true
+ values:
+ - value: image_file
+ description: The message content image file type
+ image_file:
+ type: object
+ properties:
+ file_id:
+ description: The file ID of the image in the message content.
+ type: string
+ required:
+ - file_id
+ required:
+ - type
+ - image_file
+
+ messageContentTextObject:
+ title: Text
+ type: object
+ description: The text content that is part of a message.
+ properties:
+ type:
+ description: Always `text`.
+ type: string
+ enum:
+ - text
+ x-ms-enum:
+ name: messageContentTextObjectType
+ modelAsString: true
+ values:
+ - value: text
+ description: The message content text Object type
+ text:
+ type: object
+ properties:
+ value:
+ description: The data that makes up the text.
+ type: string
+ annotations:
+ type: array
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/messageContentTextAnnotationsFileCitationObject"
+ - $ref: "#/components/schemas/messageContentTextAnnotationsFilePathObject"
+ required:
+ - value
+ - annotations
+ required:
+ - type
+ - text
+
+ messageContentTextAnnotationsFileCitationObject:
+ title: File citation
+ type: object
+ description: A citation within the message that points to a specific quote from a specific File associated with the assistant or the message. Generated when the assistant uses the "retrieval" tool to search files.
+ properties:
+ type:
+ description: Always `file_citation`.
+ type: string
+ enum:
+ - file_citation
+ x-ms-enum:
+ name: FileCitationObjectType
+ modelAsString: true
+ values:
+ - value: file_citation
+ description: The file citation object type
+ text:
+ description: The text in the message content that needs to be replaced.
+ type: string
+ file_citation:
+ type: object
+ properties:
+ file_id:
+ description: The ID of the specific File the citation is from.
+ type: string
+ required:
+ - file_id
+ start_index:
+ type: integer
+ minimum: 0
+ end_index:
+ type: integer
+ minimum: 0
+ required:
+ - type
+ - text
+ - file_citation
+ - start_index
+ - end_index
+
+ messageContentTextAnnotationsFilePathObject:
+ title: File path
+ type: object
+ description: A URL for the file that's generated when the assistant used the `code_interpreter` tool to generate a file.
+ properties:
+ type:
+ description: Always `file_path`.
+ type: string
+ enum:
+ - file_path
+ x-ms-enum:
+ name: FilePathObjectType
+ modelAsString: true
+ values:
+ - value: file_path
+ description: The file path object type
+ text:
+ description: The text in the message content that needs to be replaced.
+ type: string
+ file_path:
+ type: object
+ properties:
+ file_id:
+ description: The ID of the file that was generated.
+ type: string
+ required:
+ - file_id
+ start_index:
+ type: integer
+ minimum: 0
+ end_index:
+ type: integer
+ minimum: 0
+ required:
+ - type
+ - text
+ - file_path
+ - start_index
+ - end_index
+
+ messageDeltaContentImageFileObject:
+ title: Image file
+ type: object
+ description: References an image File in the content of a message.
+ properties:
+ index:
+ type: integer
+ description: The index of the content part in the message.
+ type:
+ description: Always `image_file`.
+ type: string
+ enum: ["image_file"]
+ x-ms-enum:
+ name: MessageDeltaContentImageFileObjectType
+ modelAsString: true
+ values:
+ - value: image_file
+ image_file:
+ type: object
+ properties:
+ file_id:
+ description: The File ID of the image in the message content.
+ type: string
+ required:
+ - index
+ - type
+
+ messageDeltaContentTextObject:
+ title: Text
+ type: object
+ description: The text content that is part of a message.
+ properties:
+ index:
+ type: integer
+ description: The index of the content part in the message.
+ type:
+ description: Always `text`.
+ type: string
+ enum: ["text"]
+ x-ms-enum:
+ name: MessageDeltaContentTextObjectType
+ modelAsString: true
+ values:
+ - value: text
+ text:
+ type: object
+ properties:
+ value:
+ description: The data that makes up the text.
+ type: string
+ annotations:
+ type: array
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/messageDeltaContentTextAnnotationsFileCitationObject"
+ - $ref: "#/components/schemas/messageDeltaContentTextAnnotationsFilePathObject"
+ required:
+ - index
+ - type
+
+ messageDeltaContentTextAnnotationsFileCitationObject:
+ title: File citation
+ type: object
+ description: A citation within the message that points to a specific quote from a specific File associated with the assistant or the message. Generated when the assistant uses the "file_search" tool to search files.
+ properties:
+ index:
+ type: integer
+ description: The index of the annotation in the text content part.
+ type:
+ description: Always `file_citation`.
+ type: string
+ enum: ["file_citation"]
+ x-ms-enum:
+ name: MessageDeltaContentTextAnnotationsFileCitationObjectType
+ modelAsString: true
+ values:
+ - value: file_citation
+ text:
+ description: The text in the message content that needs to be replaced.
+ type: string
+ file_citation:
+ type: object
+ properties:
+ file_id:
+ description: The ID of the specific File the citation is from.
+ type: string
+ quote:
+ description: The specific quote in the file.
+ type: string
+ start_index:
+ type: integer
+ minimum: 0
+ end_index:
+ type: integer
+ minimum: 0
+ required:
+ - index
+ - type
+
+ messageDeltaContentTextAnnotationsFilePathObject:
+ title: File path
+ type: object
+ description: A URL for the file that's generated when the assistant used the `code_interpreter` tool to generate a file.
+ properties:
+ index:
+ type: integer
+ description: The index of the annotation in the text content part.
+ type:
+ description: Always `file_path`.
+ type: string
+ enum: ["file_path"]
+ x-ms-enum:
+ name: MessageDeltaContentTextAnnotationsFilePathObjectType
+ modelAsString: true
+ values:
+ - value: file_path
+ text:
+ description: The text in the message content that needs to be replaced.
+ type: string
+ file_path:
+ type: object
+ properties:
+ file_id:
+ description: The ID of the file that was generated.
+ type: string
+ start_index:
+ type: integer
+ minimum: 0
+ end_index:
+ type: integer
+ minimum: 0
+ required:
+ - index
+ - type
+
+ runStepObject:
+ type: object
+ title: Run steps
+ description: |
+ Represents a step in execution of a run.
+ properties:
+ id:
+ description: The identifier of the run step, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `assistant.run.step``.
+ type: string
+ enum:
+ - assistant.run.step
+ x-ms-enum:
+ name: RunStepObjectType
+ modelAsString: true
+ values:
+ - value: assistant.run.step
+ description: The object type, which is always `assistant.run.step`
+ created_at:
+ description: The Unix timestamp (in seconds) for when the run step was created.
+ type: integer
+ assistant_id:
+ description: The ID of the assistant associated with the run step.
+ type: string
+ thread_id:
+ description: The ID of the [thread](/docs/api-reference/threads) that was run.
+ type: string
+ run_id:
+ description: The ID of the [run](/docs/api-reference/runs) that this run step is a part of.
+ type: string
+ type:
+ description: The type of run step, which can be either `message_creation` or `tool_calls`.
+ type: string
+ enum:
+ - message_creation
+ - tool_calls
+ x-ms-enum:
+ name: RunStepObjectType
+ modelAsString: true
+ values:
+ - value: message_creation
+ description: The message_creation run step
+ - value: tool_calls
+ description: The tool_calls run step
+ status:
+ description: The status of the run, which can be either `in_progress`, `cancelled`, `failed`, `completed`, or `expired`.
+ type: string
+ enum:
+ - in_progress
+ - cancelled
+ - failed
+ - completed
+ - expired
+ x-ms-enum:
+ name: RunStepObjectStatus
+ modelAsString: true
+ values:
+ - value: in_progress
+ description: The in_progress run status
+ - value: cancelled
+ description: The cancelled run status
+ - value: failed
+ description: The cancelled run status
+ - value: completed
+ description: The cancelled run status
+ - value: expired
+ description: The cancelled run status
+ step_details:
+ type: object
+ description: The details of the run step.
+ oneOf:
+ - $ref: "#/components/schemas/runStepDetailsMessageCreationObject"
+ - $ref: "#/components/schemas/runStepDetailsToolCallsObject"
+ last_error:
+ type: object
+ description: The last error associated with this run step. Will be `null` if there are no errors.
+ nullable: true
+ properties:
+ code:
+ type: string
+ description: One of `server_error` or `rate_limit_exceeded`.
+ enum:
+ - server_error
+ - rate_limit_exceeded
+ x-ms-enum:
+ name: LastErrorCode
+ modelAsString: true
+ values:
+ - value: server_error
+ description: The server_error
+ - value: rate_limit_exceeded
+ description: The rate_limit_exceeded status
+ message:
+ type: string
+ description: A human-readable description of the error.
+ required:
+ - code
+ - message
+ expired_at:
+ description: The Unix timestamp (in seconds) for when the run step expired. A step is considered expired if the parent run is expired.
+ type: integer
+ nullable: true
+ cancelled_at:
+ description: The Unix timestamp (in seconds) for when the run step was cancelled.
+ type: integer
+ nullable: true
+ failed_at:
+ description: The Unix timestamp (in seconds) for when the run step failed.
+ type: integer
+ nullable: true
+ completed_at:
+ description: The Unix timestamp (in seconds) for when the run step completed.
+ type: integer
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ required:
+ - id
+ - object
+ - created_at
+ - assistant_id
+ - thread_id
+ - run_id
+ - type
+ - status
+ - step_details
+ - last_error
+ - expired_at
+ - cancelled_at
+ - failed_at
+ - completed_at
+ - metadata
+
+ runStepDeltaObject:
+ type: object
+ title: Run step delta object
+ description: |
+ Represents a run step delta i.e. any changed fields on a run step during streaming.
+ properties:
+ id:
+ description: The identifier of the run step, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `thread.run.step.delta`.
+ type: string
+ enum: ["thread.run.step.delta"]
+ x-ms-enum:
+ name: RunStepDeltaObjectType
+ modelAsString: true
+ values:
+ - value: thread.run.step.delta
+ delta:
+ description: The delta containing the fields that have changed on the run step.
+ type: object
+ properties:
+ step_details:
+ type: object
+ description: The details of the run step.
+ oneOf:
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsMessageCreationObject"
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsToolCallsObject"
+ required:
+ - id
+ - object
+ - delta
+
+ listRunStepsResponse:
+ properties:
+ object:
+ type: string
+ example: list
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/runStepObject"
+ first_id:
+ type: string
+ example: step_hLBK7PXBv5Lr2NQT7KLY0ag1
+ last_id:
+ type: string
+ example: step_QLoItBbqwyAJEzlTy4y9kOMM
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ runStepDetailsMessageCreationObject:
+ title: Message creation
+ type: object
+ description: Details of the message creation by the run step.
+ properties:
+ type:
+ description: Always `message_creation``.
+ type: string
+ enum:
+ - message_creation
+ x-ms-enum:
+ name: RunStepDetailsMessageCreationObjectType
+ modelAsString: true
+ values:
+ - value: message_creation
+ message_creation:
+ type: object
+ properties:
+ message_id:
+ type: string
+ description: The ID of the message that was created by this run step.
+ required:
+ - message_id
+ required:
+ - type
+ - message_creation
+
+ runStepDeltaStepDetailsMessageCreationObject:
+ title: Message creation
+ type: object
+ description: Details of the message creation by the run step.
+ properties:
+ type:
+ description: Always `message_creation`.
+ type: string
+ enum: ["message_creation"]
+ x-ms-enum:
+ name: RunStepDeltaStepDetailsMessageCreationObjectType
+ modelAsString: true
+ values:
+ - value: message_creation
+ message_creation:
+ type: object
+ properties:
+ message_id:
+ type: string
+ description: The ID of the message that was created by this run step.
+ required:
+ - type
+
+ runStepDetailsToolCallsObject:
+ title: Tool calls
+ type: object
+ description: Details of the tool call.
+ properties:
+ type:
+ description: Always `tool_calls`.
+ type: string
+ enum:
+ - tool_calls
+ x-ms-enum:
+ name: RunStepDetailsToolCallsObjectType
+ modelAsString: true
+ values:
+ - value: tool_calls
+ tool_calls:
+ type: array
+ description: |
+ An array of tool calls the run step was involved in. These can be associated with one of three types of tools: `code_interpreter`, `retrieval` or `function`.
+ items:
+ type: object
+ oneOf:
+ - $ref: "#/components/schemas/runStepDetailsToolCallsCodeObject"
+ - $ref: "#/components/schemas/runStepDetailsToolCallsFileSearchObject"
+ - $ref: "#/components/schemas/runStepDetailsToolCallsFunctionObject"
+ required:
+ - type
+ - tool_calls
+
+ runStepDeltaStepDetailsToolCallsObject:
+ title: Tool calls
+ type: object
+ description: Details of the tool call.
+ properties:
+ type:
+ description: Always `tool_calls`.
+ type: string
+ enum: ["tool_calls"]
+ x-ms-enum:
+ name: RunStepDeltaStepDetailsToolCallsObjectType
+ modelAsString: true
+ values:
+ - value: tool_calls
+ tool_calls:
+ type: array
+ description: |
+ An array of tool calls the run step was involved in. These can be associated with one of three types of tools: `code_interpreter`, `file_search` or `function`.
+ items:
+ oneOf:
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsToolCallsCodeObject"
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsToolCallsFileSearchObject"
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsToolCallsFunctionObject"
+ required:
+ - type
+
+ runStepDetailsToolCallsCodeObject:
+ title: Code interpreter tool call
+ type: object
+ description: Details of the Code Interpreter tool call the run step was involved in.
+ properties:
+ id:
+ type: string
+ description: The ID of the tool call.
+ type:
+ type: string
+ description: The type of tool call. This is always going to be `code_interpreter` for this type of tool call.
+ enum:
+ - code_interpreter
+ x-ms-enum:
+ name: RunStepDetailsToolCallsCodeObjectType
+ modelAsString: true
+ values:
+ - value: code_interpreter
+ code_interpreter:
+ type: object
+ description: The Code Interpreter tool call definition.
+ required:
+ - input
+ - outputs
+ properties:
+ input:
+ type: string
+ description: The input to the Code Interpreter tool call.
+ outputs:
+ type: array
+ description: The outputs from the Code Interpreter tool call. Code Interpreter can output one or more items, including text (`logs`) or images (`image`). Each of these are represented by a different object type.
+ items:
+ type: object
+ oneOf:
+ - $ref: "#/components/schemas/runStepDetailsToolCallsCodeOutputLogsObject"
+ - $ref: "#/components/schemas/runStepDetailsToolCallsCodeOutputImageObject"
+ required:
+ - id
+ - type
+ - code_interpreter
+
+ runStepDeltaStepDetailsToolCallsCodeObject:
+ title: Code interpreter tool call
+ type: object
+ description: Details of the Code Interpreter tool call the run step was involved in.
+ properties:
+ index:
+ type: integer
+ description: The index of the tool call in the tool calls array.
+ id:
+ type: string
+ description: The ID of the tool call.
+ type:
+ type: string
+ description: The type of tool call. This is always going to be `code_interpreter` for this type of tool call.
+ enum: ["code_interpreter"]
+ x-ms-enum:
+ name: RunStepDeltaStepDetailsToolCallsCodeObjectType
+ modelAsString: true
+ values:
+ - value: code_interpreter
+ code_interpreter:
+ type: object
+ description: The Code Interpreter tool call definition.
+ properties:
+ input:
+ type: string
+ description: The input to the Code Interpreter tool call.
+ outputs:
+ type: array
+ description: The outputs from the Code Interpreter tool call. Code Interpreter can output one or more items, including text (`logs`) or images (`image`). Each of these are represented by a different object type.
+ items:
+ type: object
+ oneOf:
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsToolCallsCodeOutputLogsObject"
+ - $ref: "#/components/schemas/runStepDeltaStepDetailsToolCallsCodeOutputImageObject"
+ required:
+ - index
+ - type
+
+ runStepDetailsToolCallsCodeOutputLogsObject:
+ title: Code interpreter log output
+ type: object
+ description: Text output from the Code Interpreter tool call as part of a run step.
+ properties:
+ type:
+ description: Always `logs`.
+ type: string
+ enum:
+ - logs
+ x-ms-enum:
+ name: RunStepDetailsToolCallsCodeOutputLogsObjectType
+ modelAsString: true
+ values:
+ - value: logs
+ logs:
+ type: string
+ description: The text output from the Code Interpreter tool call.
+ required:
+ - type
+ - logs
+
+ runStepDeltaStepDetailsToolCallsCodeOutputLogsObject:
+ title: Code interpreter log output
+ type: object
+ description: Text output from the Code Interpreter tool call as part of a run step.
+ properties:
+ index:
+ type: integer
+ description: The index of the output in the outputs array.
+ type:
+ description: Always `logs`.
+ type: string
+ enum: ["logs"]
+ x-ms-enum:
+ name: RunStepDeltaStepDetailsToolCallsCodeOutputLogsObjectType
+ modelAsString: true
+ values:
+ - value: logs
+ logs:
+ type: string
+ description: The text output from the Code Interpreter tool call.
+ required:
+ - index
+ - type
+
+ runStepDetailsToolCallsCodeOutputImageObject:
+ title: Code interpreter image output
+ type: object
+ properties:
+ type:
+ description: Always `image`.
+ type: string
+ enum:
+ - image
+ x-ms-enum:
+ name: RunStepDetailsToolCallsCodeOutputImageObjectType
+ modelAsString: true
+ values:
+ - value: image
+ image:
+ type: object
+ properties:
+ file_id:
+ description: The file ID of the image.
+ type: string
+ required:
+ - file_id
+ required:
+ - type
+ - image
+
+ runStepDeltaStepDetailsToolCallsCodeOutputImageObject:
+ title: Code interpreter image output
+ type: object
+ properties:
+ index:
+ type: integer
+ description: The index of the output in the outputs array.
+ type:
+ description: Always `image`.
+ type: string
+ enum: ["image"]
+ x-ms-enum:
+ name: RunStepDeltaStepDetailsToolCallsCodeOutputImageObject
+ modelAsString: true
+ values:
+ - value: image
+ image:
+ type: object
+ properties:
+ file_id:
+ description: The file ID of the image.
+ type: string
+ required:
+ - index
+ - type
+
+ runStepDetailsToolCallsFileSearchObject:
+ title: File search tool call
+ type: object
+ properties:
+ id:
+ type: string
+ description: The ID of the tool call object.
+ type:
+ type: string
+ description: The type of tool call. This is always going to be `file_search` for this type of tool call.
+ enum: ["file_search"]
+ x-ms-enum:
+ name: RunStepDetailsToolCallsFileSearchObjectType
+ modelAsString: true
+ values:
+ - value: file_search
+ file_search:
+ type: object
+ description: For now, this is always going to be an empty object.
+ properties:
+ results:
+ type: array
+ description: The results of the file search.
+ items:
+ $ref: "#/components/schemas/runStepDetailsToolCallsFileSearchResultObject"
+ required:
+ - id
+ - type
+ - file_search
+
+ runStepDetailsToolCallsFileSearchResultObject:
+ title: File search tool call result
+ type: object
+ description: A result instance of the file search.
+ x-oaiTypeLabel: map
+ properties:
+ file_id:
+ type: string
+ description: The ID of the file that result was found in.
+ file_name:
+ type: string
+ description: The name of the file that result was found in.
+ score:
+ type: number
+ description: The score of the result. All values must be a floating point number between 0 and 1.
+ minimum: 0
+ maximum: 1
+ content:
+ type: array
+ description: The content of the result that was found. The content is only included if requested via the include query parameter.
+ items:
+ type: object
+ properties:
+ type:
+ type: string
+ description: The type of the content.
+ enum: ["text"]
+ text:
+ type: string
+ description: The text content of the file.
+ required:
+ - file_id
+ - file_name
+ - score
+
+ runStepDeltaStepDetailsToolCallsFileSearchObject:
+ title: File search tool call
+ type: object
+ properties:
+ index:
+ type: integer
+ description: The index of the tool call in the tool calls array.
+ id:
+ type: string
+ description: The ID of the tool call object.
+ type:
+ type: string
+ description: The type of tool call. This is always going to be `retrieval` for this type of tool call.
+ enum:
+ - file_search
+ x-ms-enum:
+ name: RunStepDeltaStepDetailsToolCallsFileSearchObjectType
+ modelAsString: true
+ values:
+ - value: file_search
+ file_search:
+ type: object
+ description: For now, this is always going to be an empty object.
+ required:
+ - index
+ - type
+ - file_search
+
+ runStepDetailsToolCallsFunctionObject:
+ type: object
+ title: Function tool call
+ properties:
+ id:
+ type: string
+ description: The ID of the tool call object.
+ type:
+ type: string
+ description: The type of tool call. This is always going to be `function` for this type of tool call.
+ enum:
+ - function
+ x-ms-enum:
+ name: RunStepDetailsToolCallsFunctionObjectType
+ modelAsString: true
+ values:
+ - value: function
+ function:
+ type: object
+ description: The definition of the function that was called.
+ properties:
+ name:
+ type: string
+ description: The name of the function.
+ arguments:
+ type: string
+ description: The arguments passed to the function.
+ output:
+ type: string
+ description: The output of the function. This will be `null` if the outputs have not been [submitted](/docs/api-reference/runs/submitToolOutputs) yet.
+ nullable: true
+ required:
+ - name
+ - arguments
+ - output
+ required:
+ - id
+ - type
+ - function
+
+ runStepDeltaStepDetailsToolCallsFunctionObject:
+ type: object
+ title: Function tool call
+ properties:
+ index:
+ type: integer
+ description: The index of the tool call in the tool calls array.
+ id:
+ type: string
+ description: The ID of the tool call object.
+ type:
+ type: string
+ description: The type of tool call. This is always going to be `function` for this type of tool call.
+ enum: ["function"]
+ x-ms-enum:
+ name: RunStepDetailsToolCallsFunctionObjectType
+ modelAsString: true
+ values:
+ - value: function
+ function:
+ type: object
+ description: The definition of the function that was called.
+ properties:
+ name:
+ type: string
+ description: The name of the function.
+ arguments:
+ type: string
+ description: The arguments passed to the function.
+ output:
+ type: string
+ description: The output of the function. This will be `null` if the outputs have not been submitted yet.
+ nullable: true
+ required:
+ - index
+ - type
+
+ vectorStoreExpirationAfter:
+ type: object
+ title: Vector store expiration policy
+ description: The expiration policy for a vector store.
+ properties:
+ anchor:
+ description: "Anchor timestamp after which the expiration policy applies. Supported anchors: `last_active_at`."
+ type: string
+ enum: ["last_active_at"]
+ x-ms-enum:
+ name: VectorStoreExpirationAfterAnchor
+ modelAsString: true
+ values:
+ - value: last_active_at
+ description: The anchor timestamp after which the expiration policy applies.
+ days:
+ description: The number of days after the anchor time that the vector store will expire.
+ type: integer
+ minimum: 1
+ maximum: 365
+ required:
+ - anchor
+ - days
+
+ vectorStoreObject:
+ type: object
+ title: Vector store
+ description: A vector store is a collection of processed files can be used by the `file_search` tool.
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `vector_store`.
+ type: string
+ enum: ["vector_store"]
+ created_at:
+ description: The Unix timestamp (in seconds) for when the vector store was created.
+ type: integer
+ name:
+ description: The name of the vector store.
+ type: string
+ usage_bytes:
+ description: The total number of bytes used by the files in the vector store.
+ type: integer
+ file_counts:
+ type: object
+ properties:
+ in_progress:
+ description: The number of files that are currently being processed.
+ type: integer
+ completed:
+ description: The number of files that have been successfully processed.
+ type: integer
+ failed:
+ description: The number of files that have failed to process.
+ type: integer
+ cancelled:
+ description: The number of files that were cancelled.
+ type: integer
+ total:
+ description: The total number of files.
+ type: integer
+ required:
+ - in_progress
+ - completed
+ - failed
+ - cancelled
+ - total
+ status:
+ description: The status of the vector store, which can be either `expired`, `in_progress`, or `completed`. A status of `completed` indicates that the vector store is ready for use.
+ type: string
+ enum: ["expired", "in_progress", "completed"]
+ x-ms-enum:
+ name: VectorStoreObjectStatus
+ modelAsString: true
+ values:
+ - value: expired
+ - value: in_progress
+ - value: completed
+ expires_after:
+ $ref: "#/components/schemas/vectorStoreExpirationAfter"
+ expires_at:
+ description: The Unix timestamp (in seconds) for when the vector store will expire.
+ type: integer
+ nullable: true
+ last_active_at:
+ description: The Unix timestamp (in seconds) for when the vector store was last active.
+ type: integer
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+ required:
+ - id
+ - object
+ - usage_bytes
+ - created_at
+ - status
+ - last_active_at
+ - name
+ - bytes
+ - file_counts
+ - metadata
+
+ createVectorStoreRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ file_ids:
+ description: A list of file IDs that the vector store should use. Useful for tools like `file_search` that can access files.
+ type: array
+ maxItems: 500
+ items:
+ type: string
+ name:
+ description: The name of the vector store.
+ type: string
+ expires_after:
+ $ref: "#/components/schemas/vectorStoreExpirationAfter"
+ chunking_strategy:
+ type: object
+ description: >-
+ The chunking strategy used to chunk the file(s). If not set, will use the
+ `auto` strategy. Only applicable if `file_ids` is non-empty.
+ oneOf:
+ - $ref: "#/components/schemas/autoChunkingStrategyRequestParam"
+ - $ref: "#/components/schemas/staticChunkingStrategyRequestParam"
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+
+ updateVectorStoreRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ name:
+ description: The name of the vector store.
+ type: string
+ nullable: true
+ expires_after:
+ $ref: "#/components/schemas/vectorStoreExpirationAfter"
+ nullable: true
+ metadata:
+ description: *metadata_description
+ type: object
+ nullable: true
+
+ listVectorStoresResponse:
+ properties:
+ object:
+ type: string
+ example: "list"
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/vectorStoreObject"
+ first_id:
+ type: string
+ example: "vs_abc123"
+ last_id:
+ type: string
+ example: "vs_abc456"
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ deleteVectorStoreResponse:
+ type: object
+ properties:
+ id:
+ type: string
+ deleted:
+ type: boolean
+ object:
+ type: string
+ enum: [vector_store.deleted]
+ x-ms-enum:
+ name: DeleteVectorStoreResponseObject
+ modelAsString: true
+ values:
+ - value: vector_store.deleted
+ description: The delete vector store response object state
+ required:
+ - id
+ - object
+ - deleted
+
+ vectorStoreFileObject:
+ type: object
+ title: Vector store files
+ description: A list of files attached to a vector store.
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `vector_store.file`.
+ type: string
+ enum: ["vector_store.file"]
+ x-ms-enum:
+ name: VectorStoreFileObjectType
+ modelAsString: true
+ values:
+ - value: vector_store.file
+ usage_bytes:
+ description: The total vector store usage in bytes. Note that this may be different from the original file size.
+ type: integer
+ created_at:
+ description: The Unix timestamp (in seconds) for when the vector store file was created.
+ type: integer
+ vector_store_id:
+ description: The ID of the vector store that the file is attached to.
+ type: string
+ status:
+ description: The status of the vector store file, which can be either `in_progress`, `completed`, `cancelled`, or `failed`. The status `completed` indicates that the vector store file is ready for use.
+ type: string
+ enum: ["in_progress", "completed", "cancelled", "failed"]
+ x-ms-enum:
+ name: VectorStoreFileObjectStatus
+ modelAsString: true
+ values:
+ - value: in_progress
+ - value: completed
+ - value: cancelled
+ - value: failed
+ last_error:
+ type: object
+ description: The last error associated with this vector store file. Will be `null` if there are no errors.
+ nullable: true
+ properties:
+ code:
+ type: string
+ description: One of `server_error` or `invalid_file` or `unsupported_file`.
+ enum:
+ [
+ "server_error",
+ "unsupported_file",
+ "invalid_file"
+ ]
+ x-ms-enum:
+ name: VectorStoreFileObjectLastErrorCode
+ modelAsString: true
+ values:
+ - value: server_error
+ - value: unsupported_file
+ - value: invalid_file
+ message:
+ type: string
+ description: A human-readable description of the error.
+ required:
+ - code
+ - message
+ chunking_strategy:
+ type: object
+ description: |
+ The chunking strategy used to chunk the file(s). If not set, will use the
+ `auto` strategy. Only applicable if `file_ids` is non-empty.
+ oneOf:
+ - $ref: "#/components/schemas/autoChunkingStrategyRequestParam"
+ - $ref: "#/components/schemas/staticChunkingStrategyRequestParam"
+ required:
+ - id
+ - object
+ - usage_bytes
+ - created_at
+ - vector_store_id
+ - status
+ - last_error
+
+ otherChunkingStrategyResponseParam:
+ type: object
+ title: Other Chunking Strategy
+ description: |
+ This is returned when the chunking strategy is unknown. Typically, this is
+ because the file was indexed before the `chunking_strategy` concept was
+ introduced in the API.
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `other`.
+ enum:
+ - other
+ x-ms-enum:
+ name: OtherChunkingStrategyResponseParamType
+ modelAsString: true
+ values:
+ - value: other
+ required:
+ - type
+
+ staticChunkingStrategyResponseParam:
+ type: object
+ title: Static Chunking Strategy
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `static`.
+ enum:
+ - static
+ x-ms-enum:
+ name: StaticChunkingStrategyResponseParamType
+ modelAsString: true
+ values:
+ - value: static
+ static:
+ $ref: "#/components/schemas/staticChunkingStrategy"
+ required:
+ - type
+ - static
+
+ staticChunkingStrategy:
+ type: object
+ additionalProperties: false
+ properties:
+ max_chunk_size_tokens:
+ type: integer
+ minimum: 100
+ maximum: 4096
+ description: |
+ The maximum number of tokens in each chunk. The default value is `800`.
+ The minimum value is `100` and the maximum value is `4096`.
+ chunk_overlap_tokens:
+ type: integer
+ description: >
+ The number of tokens that overlap between chunks. The default value is
+ `400`.
+ Note that the overlap must not exceed half of `max_chunk_size_tokens`.
+ required:
+ - max_chunk_size_tokens
+ - chunk_overlap_tokens
+
+ autoChunkingStrategyRequestParam:
+ type: object
+ title: Auto Chunking Strategy
+ description: |
+ The default strategy. This strategy currently uses a `max_chunk_size_tokens`
+ of `800` and `chunk_overlap_tokens` of `400`.
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `auto`.
+ enum:
+ - auto
+ required:
+ - type
+
+ staticChunkingStrategyRequestParam:
+ type: object
+ title: Static Chunking Strategy
+ additionalProperties: false
+ properties:
+ type:
+ type: string
+ description: Always `static`.
+ enum:
+ - static
+ static:
+ $ref: "#/components/schemas/staticChunkingStrategy"
+ required:
+ - type
+ - static
+
+ chunkingStrategyRequestParam:
+ type: object
+ description: >-
+ The chunking strategy used to chunk the file(s). If not set, will use the
+ `auto` strategy.
+ oneOf:
+ - $ref: "#/components/schemas/autoChunkingStrategyRequestParam"
+ - $ref: "#/components/schemas/staticChunkingStrategyRequestParam"
+
+ createVectorStoreFileRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ file_id:
+ description: A File ID that the vector store should use. Useful for tools like `file_search` that can access files.
+ type: string
+ chunking_strategy:
+ $ref: "#/components/schemas/chunkingStrategyRequestParam"
+ required:
+ - file_id
+
+ listVectorStoreFilesResponse:
+ properties:
+ object:
+ type: string
+ example: "list"
+ data:
+ type: array
+ items:
+ $ref: "#/components/schemas/vectorStoreFileObject"
+ first_id:
+ type: string
+ example: "file-abc123"
+ last_id:
+ type: string
+ example: "file-abc456"
+ has_more:
+ type: boolean
+ example: false
+ required:
+ - object
+ - data
+ - first_id
+ - last_id
+ - has_more
+
+ deleteVectorStoreFileResponse:
+ type: object
+ properties:
+ id:
+ type: string
+ deleted:
+ type: boolean
+ object:
+ type: string
+ enum: [vector_store.file.deleted]
+ x-ms-enum:
+ name: DeleteVectorStoreFileResponseObject
+ modelAsString: true
+ values:
+ - value: vector_store.file.deleted
+ required:
+ - id
+ - object
+ - deleted
+
+ vectorStoreFileBatchObject:
+ type: object
+ title: Vector store file batch
+ description: A batch of files attached to a vector store.
+ properties:
+ id:
+ description: The identifier, which can be referenced in API endpoints.
+ type: string
+ object:
+ description: The object type, which is always `vector_store.file_batch`.
+ type: string
+ enum: ["vector_store.files_batch"]
+ x-ms-enum:
+ name: VectorStoreFileBatchObjectType
+ modelAsString: true
+ values:
+ - value: vector_store.files_batch
+ created_at:
+ description: The Unix timestamp (in seconds) for when the vector store files batch was created.
+ type: integer
+ vector_store_id:
+ description: The ID of the vector store that the File is attached to.
+ type: string
+ status:
+ description: The status of the vector store files batch, which can be either `in_progress`, `completed`, `cancelled` or `failed`.
+ type: string
+ enum: ["in_progress", "completed", "cancelled", "failed"]
+ x-ms-enum:
+ name: VectorStoreFileBatchObjectStatus
+ modelAsString: true
+ values:
+ - value: in_progress
+ - value: completed
+ - value: cancelled
+ - value: failed
+ file_counts:
+ type: object
+ properties:
+ in_progress:
+ description: The number of files that are currently being processed.
+ type: integer
+ completed:
+ description: The number of files that have been processed.
+ type: integer
+ failed:
+ description: The number of files that have failed to process.
+ type: integer
+ cancelled:
+ description: The number of files that where cancelled.
+ type: integer
+ total:
+ description: The total number of files.
+ type: integer
+ required:
+ - in_progress
+ - completed
+ - cancelled
+ - failed
+ - total
+ required:
+ - id
+ - object
+ - created_at
+ - vector_store_id
+ - status
+ - file_counts
+
+ createVectorStoreFileBatchRequest:
+ type: object
+ additionalProperties: false
+ properties:
+ file_ids:
+ description: A list of File IDs that the vector store should use. Useful for tools like `file_search` that can access files.
+ type: array
+ minItems: 1
+ maxItems: 500
+ items:
+ type: string
+ chunking_strategy:
+ $ref: "#/components/schemas/chunkingStrategyRequestParam"
+ required:
+ - file_ids
+
+ assistantStreamEvent:
+ description: |
+ Represents an event emitted when streaming a Run.
+
+ Each event in a server-sent events stream has an `event` and `data` property:
+
+ ```
+ event: thread.created
+ data: {"id": "thread_123", "object": "thread", ...}
+ ```
+
+ We emit events whenever a new object is created, transitions to a new state, or is being
+ streamed in parts (deltas). For example, we emit `thread.run.created` when a new run
+ is created, `thread.run.completed` when a run completes, and so on. When an Assistant chooses
+ to create a message during a run, we emit a `thread.message.created event`, a
+ `thread.message.in_progress` event, many `thread.message.delta` events, and finally a
+ `thread.message.completed` event.
+
+ We may add additional events over time, so we recommend handling unknown events gracefully
+ in your code.
+ oneOf:
+ - $ref: "#/components/schemas/threadStreamEvent"
+ - $ref: "#/components/schemas/runStreamEvent"
+ - $ref: "#/components/schemas/runStepStreamEvent"
+ - $ref: "#/components/schemas/messageStreamEvent"
+ - $ref: "#/components/schemas/errorEvent"
+ - $ref: "#/components/schemas/doneEvent"
+
+ threadStreamEvent:
+ oneOf:
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.created"]
+ x-ms-enum:
+ name: ThreadStreamEventEnum
+ modelAsString: true
+ values:
+ - value: thread.created
+ description: The thread created event
+ data:
+ $ref: "#/components/schemas/threadObject"
+ required:
+ - event
+ - data
+ description: Occurs when a new thread is created.
+
+ runStreamEvent:
+ oneOf:
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.created"]
+ x-ms-enum:
+ name: RunStreamEventCreated
+ modelAsString: true
+ values:
+ - value: thread.run.created
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a new run is created.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.queued"]
+ x-ms-enum:
+ name: RunStreamEventQueued
+ modelAsString: true
+ values:
+ - value: thread.run.queued
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run moves to a `queued` status.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.in_progress"]
+ x-ms-enum:
+ name: RunStreamEventInProgress
+ modelAsString: true
+ values:
+ - value: thread.run.in_progress
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run moves to an `in_progress` status.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.requires_action"]
+ x-ms-enum:
+ name: RunStreamEventRequiresAction
+ modelAsString: true
+ values:
+ - value: thread.run.requires_action
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run moves to a `requires_action` status.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.completed"]
+ x-ms-enum:
+ name: RunStreamEventCompleted
+ modelAsString: true
+ values:
+ - value: thread.run.completed
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run is completed.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.failed"]
+ x-ms-enum:
+ name: RunStreamEventFailed
+ modelAsString: true
+ values:
+ - value: thread.run.failed
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run fails.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.cancelling"]
+ x-ms-enum:
+ name: RunStreamEventCancelling
+ modelAsString: true
+ values:
+ - value: thread.run.cancelling
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run moves to a `cancelling` status.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.cancelled"]
+ x-ms-enum:
+ name: RunStreamEventCancelled
+ modelAsString: true
+ values:
+ - value: thread.run.cancelled
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run is cancelled.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.expired"]
+ x-ms-enum:
+ name: RunStreamEventExpired
+ modelAsString: true
+ values:
+ - value: thread.run.expired
+ data:
+ $ref: "#/components/schemas/runObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run expires.
+
+ runStepStreamEvent:
+ oneOf:
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.created"]
+ x-ms-enum:
+ name: RunStepStreamEventCreated
+ modelAsString: true
+ values:
+ - value: thread.run.step.created
+ data:
+ $ref: "#/components/schemas/runStepObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run step is created.
+
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.in_progress"]
+ x-ms-enum:
+ name: RunStepStreamEventInProgress
+ modelAsString: true
+ values:
+ - value: thread.run.step.in_progress
+ data:
+ $ref: "#/components/schemas/runStepObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run step moves to an `in_progress` state.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.delta"]
+ x-ms-enum:
+ name: RunStepStreamEventDelta
+ modelAsString: true
+ values:
+ - value: thread.run.step.delta
+ data:
+ $ref: "#/components/schemas/runStepDeltaObject"
+ required:
+ - event
+ - data
+ description: Occurs when parts of a run step are being streamed.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.completed"]
+ x-ms-enum:
+ name: RunStepStreamEventCompleted
+ modelAsString: true
+ values:
+ - value: thread.run.step.completed
+ data:
+ $ref: "#/components/schemas/runStepObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run step is completed.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.failed"]
+ x-ms-enum:
+ name: RunStepStreamEventFailed
+ modelAsString: true
+ values:
+ - value: thread.run.step.failed
+ data:
+ $ref: "#/components/schemas/runStepObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run step fails.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.cancelled"]
+ x-ms-enum:
+ name: RunStepStreamEventCancelled
+ modelAsString: true
+ values:
+ - value: thread.run.step.cancelled
+ data:
+ $ref: "#/components/schemas/runStepObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run step is cancelled.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.run.step.expired"]
+ x-ms-enum:
+ name: RunStepStreamEventExpired
+ modelAsString: true
+ values:
+ - value: thread.run.step.expired
+ data:
+ $ref: "#/components/schemas/runStepObject"
+ required:
+ - event
+ - data
+ description: Occurs when a run step expires.
+
+ messageStreamEvent:
+ oneOf:
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.message.created"]
+ x-ms-enum:
+ name: MessageStreamEventCreated
+ modelAsString: true
+ values:
+ - value: thread.message.created
+ data:
+ $ref: "#/components/schemas/messageObject"
+ required:
+ - event
+ - data
+ description: Occurs when a message is created.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.message.in_progress"]
+ x-ms-enum:
+ name: MessageStreamEventInProgress
+ modelAsString: true
+ values:
+ - value: thread.message.in_progress
+ data:
+ $ref: "#/components/schemas/messageObject"
+ required:
+ - event
+ - data
+ description: Occurs when a message moves to an `in_progress` state.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.message.delta"]
+ x-ms-enum:
+ name: MessageStreamEventDelta
+ modelAsString: true
+ values:
+ - value: thread.message.delta
+ data:
+ $ref: "#/components/schemas/messageDeltaObject"
+ required:
+ - event
+ - data
+ description: Occurs when parts of a message are being streamed.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.message.completed"]
+ x-ms-enum:
+ name: MessageStreamEventCompleted
+ modelAsString: true
+ values:
+ - value: thread.message.completed
+ data:
+ $ref: "#/components/schemas/messageObject"
+ required:
+ - event
+ - data
+ description: Occurs when a message is completed.
+ - type: object
+ properties:
+ event:
+ type: string
+ enum: ["thread.message.incomplete"]
+ x-ms-enum:
+ name: MessageStreamEventIncomplete
+ modelAsString: true
+ values:
+ - value: thread.message.incomplete
+ data:
+ $ref: "#/components/schemas/messageObject"
+ required:
+ - event
+ - data
+ description: Occurs when a message ends before it is completed.
+
+ errorEvent:
+ type: object
+ properties:
+ event:
+ type: string
+ enum: ["error"]
+ x-ms-enum:
+ name: ErrorEventEnum
+ modelAsString: true
+ values:
+ - value: error
+ data:
+ $ref: "#/components/schemas/error"
+ required:
+ - event
+ - data
+ description: Occurs when an error occurs. This can happen due to an internal server error or a timeout.
+
+ doneEvent:
+ type: object
+ properties:
+ event:
+ type: string
+ enum: ["done"]
+ x-ms-enum:
+ name: DoneEventEnum
+ modelAsString: true
+ values:
+ - value: done
+ data:
+ type: string
+ enum: ["[DONE]"]
+ x-ms-enum:
+ name: DoneEventDataEnum
+ modelAsString: true
+ values:
+ - value: "[DONE]"
+ required:
+ - event
+ - data
+ description: Occurs when a stream ends.
+ 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 7fe18c7a24ec..3f37a5c7bbc2 100644
--- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md
+++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md
@@ -285,7 +285,7 @@ input-file: preview/2024-09-01-preview/generated.json
These settings apply only when `--tag=release_2024_10_01_preview` is specified on the command line.
``` yaml $(tag) == 'release_2024_10_01_preview'
-input-file: preview/2024-09-01-preview/inference.json
+input-file: preview/2024-10-01-preview/inference.json
```
## AzureOpenAI 2024-10-01-preview (generated)
@@ -301,3 +301,10 @@ These settings apply only when `--tag=release_2024_10_21` is specified on the co
``` yaml $(tag) == 'release_2024_10_21'
input-file: stable/2024-10-21/inference.json
```
+
+## AzureOpenAI 2024-12-01-preview
+These settings apply only when `--tag=release_2024_12_01_preview` is specified on the command line.
+
+``` yaml $(tag) == 'release_2024_12_01_preview'
+input-file: preview/2024-12-01-preview/inference.json
+```
From 1fc2fa139b287f2dc849b567bbdbc7fce5a31b23 Mon Sep 17 00:00:00 2001
From: Daniel Jurek
Date: Tue, 7 Jan 2025 14:45:17 -0800
Subject: [PATCH 062/128] Removes azure-resource-manager-schemas from SDK
automation. It can be re-added without reverting this commit. (#30893)
(#31918)
This change produces an extra warning but no obvious new errors.
---
.github/workflows/spelling.yaml | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 .github/workflows/spelling.yaml
diff --git a/.github/workflows/spelling.yaml b/.github/workflows/spelling.yaml
new file mode 100644
index 000000000000..8b3f38289f62
--- /dev/null
+++ b/.github/workflows/spelling.yaml
@@ -0,0 +1,27 @@
+name: SpellCheck
+
+on: pull_request
+
+jobs:
+ spellcheck:
+ name: SpellCheck
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 2
+
+ - name: Run spelling check
+ run: |
+ ./eng/common/scripts/check-spelling-in-changed-files.ps1 `
+ -CSpellConfigPath 'cSpell.json' `
+ -SourceCommittish HEAD `
+ -TargetCommittish HEAD^ `
+ -ExitWithError
+ if ($LASTEXITCODE) {
+ Write-Host "Spelling errors found in changed files. See https://aka.ms/ci-fix#spell-check"
+ exit $LASTEXITCODE
+ }
+ shell: pwsh
From 63105f9cb33e0da383e9069ef3632035ee804e01 Mon Sep 17 00:00:00 2001
From: Daniel Jurek
Date: Tue, 7 Jan 2025 15:13:30 -0800
Subject: [PATCH 063/128] Seed package-lock.json for spell check (#32032)
* Seed package-lock.json for spell check
* Update cSpell.json to use v0.2 config
* exclude checking the spell check configuration
---
cSpell.json | 5 +-
eng/common/spelling/package-lock.json | 2786 +++++++++++++++++++++++++
2 files changed, 2789 insertions(+), 2 deletions(-)
create mode 100644 eng/common/spelling/package-lock.json
diff --git a/cSpell.json b/cSpell.json
index 227216fc576f..307d4998e2d8 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1,5 +1,5 @@
{
- "version": "0.1",
+ "version": "0.2",
"language": "en",
"words": [
"authnotrequired",
@@ -26,7 +26,8 @@
"ignorePaths": [
"node_modules/**",
"**/examples/**",
- "**/package-lock.json"
+ "**/package-lock.json",
+ "cSpell.json",
],
"ignoreRegExpList": [
"v\\d",
diff --git a/eng/common/spelling/package-lock.json b/eng/common/spelling/package-lock.json
new file mode 100644
index 000000000000..a87e13d2c52b
--- /dev/null
+++ b/eng/common/spelling/package-lock.json
@@ -0,0 +1,2786 @@
+{
+ "name": "cspell-version-pin",
+ "version": "0.1.1",
+ "lockfileVersion": 2,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "cspell-version-pin",
+ "version": "0.1.1",
+ "dependencies": {
+ "@cspell/cspell-bundled-dicts": "^6.12.0",
+ "@cspell/cspell-types": "^6.12.0",
+ "cspell": "^6.12.0",
+ "cspell-lib": "^6.12.0"
+ }
+ },
+ "node_modules/@babel/code-frame": {
+ "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==",
+ "dependencies": {
+ "@babel/highlight": "^7.22.5"
+ },
+ "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",
+ "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/highlight": {
+ "version": "7.22.5",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz",
+ "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==",
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.22.5",
+ "chalk": "^2.0.0",
+ "js-tokens": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/highlight/node_modules/ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dependencies": {
+ "color-convert": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/@babel/highlight/node_modules/chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dependencies": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/@babel/highlight/node_modules/color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dependencies": {
+ "color-name": "1.1.3"
+ }
+ },
+ "node_modules/@babel/highlight/node_modules/color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
+ },
+ "node_modules/@babel/highlight/node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/@babel/highlight/node_modules/supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dependencies": {
+ "has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/@cspell/cspell-bundled-dicts": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-6.31.2.tgz",
+ "integrity": "sha512-rQ5y/U1Ah5AaduIh3NU2z371hRrOr1cmNdhhP8oiuz2E4VqmcoVHflXIct9DgY8uIJpwsSCdR6ypOQWZYXYnwA==",
+ "dependencies": {
+ "@cspell/dict-ada": "^4.0.1",
+ "@cspell/dict-aws": "^3.0.0",
+ "@cspell/dict-bash": "^4.1.1",
+ "@cspell/dict-companies": "^3.0.9",
+ "@cspell/dict-cpp": "^5.0.2",
+ "@cspell/dict-cryptocurrencies": "^3.0.1",
+ "@cspell/dict-csharp": "^4.0.2",
+ "@cspell/dict-css": "^4.0.5",
+ "@cspell/dict-dart": "^2.0.2",
+ "@cspell/dict-django": "^4.0.2",
+ "@cspell/dict-docker": "^1.1.6",
+ "@cspell/dict-dotnet": "^5.0.0",
+ "@cspell/dict-elixir": "^4.0.2",
+ "@cspell/dict-en_us": "^4.3.2",
+ "@cspell/dict-en-common-misspellings": "^1.0.2",
+ "@cspell/dict-en-gb": "1.1.33",
+ "@cspell/dict-filetypes": "^3.0.0",
+ "@cspell/dict-fonts": "^3.0.2",
+ "@cspell/dict-fullstack": "^3.1.5",
+ "@cspell/dict-gaming-terms": "^1.0.4",
+ "@cspell/dict-git": "^2.0.0",
+ "@cspell/dict-golang": "^6.0.1",
+ "@cspell/dict-haskell": "^4.0.1",
+ "@cspell/dict-html": "^4.0.3",
+ "@cspell/dict-html-symbol-entities": "^4.0.0",
+ "@cspell/dict-java": "^5.0.5",
+ "@cspell/dict-k8s": "^1.0.1",
+ "@cspell/dict-latex": "^4.0.0",
+ "@cspell/dict-lorem-ipsum": "^3.0.0",
+ "@cspell/dict-lua": "^4.0.1",
+ "@cspell/dict-node": "^4.0.2",
+ "@cspell/dict-npm": "^5.0.5",
+ "@cspell/dict-php": "^4.0.1",
+ "@cspell/dict-powershell": "^5.0.1",
+ "@cspell/dict-public-licenses": "^2.0.2",
+ "@cspell/dict-python": "^4.0.2",
+ "@cspell/dict-r": "^2.0.1",
+ "@cspell/dict-ruby": "^5.0.0",
+ "@cspell/dict-rust": "^4.0.1",
+ "@cspell/dict-scala": "^5.0.0",
+ "@cspell/dict-software-terms": "^3.1.6",
+ "@cspell/dict-sql": "^2.1.0",
+ "@cspell/dict-svelte": "^1.0.2",
+ "@cspell/dict-swift": "^2.0.1",
+ "@cspell/dict-typescript": "^3.1.1",
+ "@cspell/dict-vue": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@cspell/cspell-pipe": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-6.31.1.tgz",
+ "integrity": "sha512-zk1olZi4dr6GLm5PAjvsiZ01HURNSruUYFl1qSicGnTwYN8GaN4RhAwannAytcJ7zJPIcyXlid0YsB58nJf3wQ==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@cspell/cspell-service-bus": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-6.31.1.tgz",
+ "integrity": "sha512-YyBicmJyZ1uwKVxujXw7sgs9x+Eps43OkWmCtDZmZlnq489HdTSuhF1kTbVi2yeFSeaXIS87+uHo12z97KkQpg==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@cspell/cspell-types": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-6.31.1.tgz",
+ "integrity": "sha512-1KeTQFiHMssW1eRoF2NZIEg4gPVIfXLsL2+VSD/AV6YN7lBcuf6gRRgV5KWYarhxtEfjxhDdDTmu26l/iJEUtw==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@cspell/dict-ada": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-ada/-/dict-ada-4.0.1.tgz",
+ "integrity": "sha512-/E9o3nHrXOhYmQE43deKbxZcR3MIJAsa+66IzP9TXGHheKEx8b9dVMVVqydDDH8oom1H0U20NRPtu6KRVbT9xw=="
+ },
+ "node_modules/@cspell/dict-aws": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-3.0.0.tgz",
+ "integrity": "sha512-O1W6nd5y3Z00AMXQMzfiYrIJ1sTd9fB1oLr+xf/UD7b3xeHeMeYE2OtcWbt9uyeHim4tk+vkSTcmYEBKJgS5bQ=="
+ },
+ "node_modules/@cspell/dict-bash": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.1.tgz",
+ "integrity": "sha512-8czAa/Mh96wu2xr0RXQEGMTBUGkTvYn/Pb0o+gqOO1YW+poXGQc3gx0YPqILDryP/KCERrNvkWUJz3iGbvwC2A=="
+ },
+ "node_modules/@cspell/dict-companies": {
+ "version": "3.0.17",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.0.17.tgz",
+ "integrity": "sha512-vo1jbozgZWSzz2evIL26kLd35tVb+5kW/UTvTzAwaWutSWRloRyKx38nj2CaLJ2IFxBdiATteCFGTzKCvJJl6A=="
+ },
+ "node_modules/@cspell/dict-cpp": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.0.3.tgz",
+ "integrity": "sha512-7sx/RFsf0hB3q8chx8OHYl9Kd+g0pqA1laphwaAQ+/jPwoAreYT3kNQWbJ3bIt/rMoORetFSQxckSbaJXwwqpw=="
+ },
+ "node_modules/@cspell/dict-cryptocurrencies": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-3.0.1.tgz",
+ "integrity": "sha512-Tdlr0Ahpp5yxtwM0ukC13V6+uYCI0p9fCRGMGZt36rWv8JQZHIuHfehNl7FB/Qc09NCF7p5ep0GXbL+sVTd/+w=="
+ },
+ "node_modules/@cspell/dict-csharp": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-csharp/-/dict-csharp-4.0.2.tgz",
+ "integrity": "sha512-1JMofhLK+4p4KairF75D3A924m5ERMgd1GvzhwK2geuYgd2ZKuGW72gvXpIV7aGf52E3Uu1kDXxxGAiZ5uVG7g=="
+ },
+ "node_modules/@cspell/dict-css": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-css/-/dict-css-4.0.6.tgz",
+ "integrity": "sha512-2Lo8W2ezHmGgY8cWFr4RUwnjbndna5mokpCK/DuxGILQnuajR0J31ANQOXj/8iZM2phFB93ZzMNk/0c04TDfSQ=="
+ },
+ "node_modules/@cspell/dict-dart": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-dart/-/dict-dart-2.0.2.tgz",
+ "integrity": "sha512-jigcODm7Z4IFZ4vParwwP3IT0fIgRq/9VoxkXfrxBMsLBGGM2QltHBj7pl+joX+c4cOHxfyZktGJK1B1wFtR4Q=="
+ },
+ "node_modules/@cspell/dict-data-science": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-data-science/-/dict-data-science-1.0.7.tgz",
+ "integrity": "sha512-Q9VUFaarUpqM6CAmR8peP4o9alk0XQ4rgVoE2R2XalpC2cqPI8Hmg6QwMU2UPioSUcWMJCqLc/KzJti0gBMuxA=="
+ },
+ "node_modules/@cspell/dict-django": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-django/-/dict-django-4.1.0.tgz",
+ "integrity": "sha512-bKJ4gPyrf+1c78Z0Oc4trEB9MuhcB+Yg+uTTWsvhY6O2ncFYbB/LbEZfqhfmmuK/XJJixXfI1laF2zicyf+l0w=="
+ },
+ "node_modules/@cspell/dict-docker": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-docker/-/dict-docker-1.1.6.tgz",
+ "integrity": "sha512-zCCiRTZ6EOQpBnSOm0/3rnKW1kCcAUDUA7SxJG3SuH6iZvKi3I8FEg8+O83WQUeXg0SyPNerD9F40JLnnJjJig=="
+ },
+ "node_modules/@cspell/dict-dotnet": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-dotnet/-/dict-dotnet-5.0.0.tgz",
+ "integrity": "sha512-EOwGd533v47aP5QYV8GlSSKkmM9Eq8P3G/eBzSpH3Nl2+IneDOYOBLEUraHuiCtnOkNsz0xtZHArYhAB2bHWAw=="
+ },
+ "node_modules/@cspell/dict-elixir": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-elixir/-/dict-elixir-4.0.3.tgz",
+ "integrity": "sha512-g+uKLWvOp9IEZvrIvBPTr/oaO6619uH/wyqypqvwpmnmpjcfi8+/hqZH8YNKt15oviK8k4CkINIqNhyndG9d9Q=="
+ },
+ "node_modules/@cspell/dict-en_us": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.4.tgz",
+ "integrity": "sha512-mR2yqWmFip1zTKja2SqyVMbzuqEThqkEJk9M32bMDziPJpEyOIPvLA0UPmj3cyRKJkRuVF0bhDCE33O+at38hw=="
+ },
+ "node_modules/@cspell/dict-en-common-misspellings": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz",
+ "integrity": "sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw=="
+ },
+ "node_modules/@cspell/dict-en-gb": {
+ "version": "1.1.33",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-en-gb/-/dict-en-gb-1.1.33.tgz",
+ "integrity": "sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g=="
+ },
+ "node_modules/@cspell/dict-filetypes": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.1.tgz",
+ "integrity": "sha512-8z8mY1IbrTyTRumx2vvD9yzRhNMk9SajM/GtI5hdMM2pPpNSp25bnuauzjRf300eqlqPY2MNb5MmhBFO014DJw=="
+ },
+ "node_modules/@cspell/dict-fonts": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-fonts/-/dict-fonts-3.0.2.tgz",
+ "integrity": "sha512-Z5QdbgEI7DV+KPXrAeDA6dDm/vTzyaW53SGlKqz6PI5VhkOjgkBXv3YtZjnxMZ4dY2ZIqq+RUK6qa9Pi8rQdGQ=="
+ },
+ "node_modules/@cspell/dict-fullstack": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-fullstack/-/dict-fullstack-3.1.5.tgz",
+ "integrity": "sha512-6ppvo1dkXUZ3fbYn/wwzERxCa76RtDDl5Afzv2lijLoijGGUw5yYdLBKJnx8PJBGNLh829X352ftE7BElG4leA=="
+ },
+ "node_modules/@cspell/dict-gaming-terms": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.4.tgz",
+ "integrity": "sha512-hbDduNXlk4AOY0wFxcDMWBPpm34rpqJBeqaySeoUH70eKxpxm+dvjpoRLJgyu0TmymEICCQSl6lAHTHSDiWKZg=="
+ },
+ "node_modules/@cspell/dict-git": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-2.0.0.tgz",
+ "integrity": "sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w=="
+ },
+ "node_modules/@cspell/dict-golang": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.2.tgz",
+ "integrity": "sha512-5pyZn4AAiYukAW+gVMIMVmUSkIERFrDX2vtPDjg8PLQUhAHWiVeQSDjuOhq9/C5GCCEZU/zWSONkGiwLBBvV9A=="
+ },
+ "node_modules/@cspell/dict-haskell": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-haskell/-/dict-haskell-4.0.1.tgz",
+ "integrity": "sha512-uRrl65mGrOmwT7NxspB4xKXFUenNC7IikmpRZW8Uzqbqcu7ZRCUfstuVH7T1rmjRgRkjcIjE4PC11luDou4wEQ=="
+ },
+ "node_modules/@cspell/dict-html": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-html/-/dict-html-4.0.3.tgz",
+ "integrity": "sha512-Gae8i8rrArT0UyG1I6DHDK62b7Be6QEcBSIeWOm4VIIW1CASkN9B0qFgSVnkmfvnu1Y3H7SSaaEynKjdj3cs8w=="
+ },
+ "node_modules/@cspell/dict-html-symbol-entities": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-html-symbol-entities/-/dict-html-symbol-entities-4.0.0.tgz",
+ "integrity": "sha512-HGRu+48ErJjoweR5IbcixxETRewrBb0uxQBd6xFGcxbEYCX8CnQFTAmKI5xNaIt2PKaZiJH3ijodGSqbKdsxhw=="
+ },
+ "node_modules/@cspell/dict-java": {
+ "version": "5.0.5",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-java/-/dict-java-5.0.5.tgz",
+ "integrity": "sha512-X19AoJgWIBwJBSWGFqSgHaBR/FEykBHTMjL6EqOnhIGEyE9nvuo32tsSHjXNJ230fQxQptEvRZoaldNLtKxsRg=="
+ },
+ "node_modules/@cspell/dict-k8s": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-k8s/-/dict-k8s-1.0.1.tgz",
+ "integrity": "sha512-gc5y4Nm3hVdMZNBZfU2M1AsAmObZsRWjCUk01NFPfGhFBXyVne41T7E62rpnzu5330FV/6b/TnFcPgRmak9lLw=="
+ },
+ "node_modules/@cspell/dict-latex": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-latex/-/dict-latex-4.0.0.tgz",
+ "integrity": "sha512-LPY4y6D5oI7D3d+5JMJHK/wxYTQa2lJMSNxps2JtuF8hbAnBQb3igoWEjEbIbRRH1XBM0X8dQqemnjQNCiAtxQ=="
+ },
+ "node_modules/@cspell/dict-lorem-ipsum": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-lorem-ipsum/-/dict-lorem-ipsum-3.0.0.tgz",
+ "integrity": "sha512-msEV24qEpzWZs2kcEicqYlhyBpR0amfDkJOs+iffC07si9ftqtQ+yP3lf1VFLpgqw3SQh1M1vtU7RD4sPrNlcQ=="
+ },
+ "node_modules/@cspell/dict-lua": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.1.tgz",
+ "integrity": "sha512-j0MFmeCouSoC6EdZTbvGe1sJ9V+ruwKSeF+zRkNNNload7R72Co5kX1haW2xLHGdlq0kqSy1ODRZKdVl0e+7hg=="
+ },
+ "node_modules/@cspell/dict-node": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-node/-/dict-node-4.0.2.tgz",
+ "integrity": "sha512-FEQJ4TnMcXEFslqBQkXa5HposMoCGsiBv2ux4IZuIXgadXeHKHUHk60iarWpjhzNzQLyN2GD7NoRMd12bK3Llw=="
+ },
+ "node_modules/@cspell/dict-npm": {
+ "version": "5.0.7",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.7.tgz",
+ "integrity": "sha512-6SegF0HsVaBTl6PlHjeErG8Av+tRYkUG1yaXUQIGWXU0A8oxhI0o4PuL65UWH5lkCKhJyGai69Cd0iytL0oVFg=="
+ },
+ "node_modules/@cspell/dict-php": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.1.tgz",
+ "integrity": "sha512-XaQ/JkSyq2c07MfRG54DjLi2CV+HHwS99DDCAao9Fq2JfkWroTQsUeek7wYZXJATrJVOULoV3HKih12x905AtQ=="
+ },
+ "node_modules/@cspell/dict-powershell": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.2.tgz",
+ "integrity": "sha512-IHfWLme3FXE7vnOmMncSBxOsMTdNWd1Vcyhag03WS8oANSgX8IZ+4lMI00mF0ptlgchf16/OU8WsV4pZfikEFw=="
+ },
+ "node_modules/@cspell/dict-public-licenses": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.2.tgz",
+ "integrity": "sha512-baKkbs/WGEV2lCWZoL0KBPh3uiPcul5GSDwmXEBAsR5McEW52LF94/b7xWM0EmSAc/y8ODc5LnPYC7RDRLi6LQ=="
+ },
+ "node_modules/@cspell/dict-python": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.1.2.tgz",
+ "integrity": "sha512-Whcn4K8R0Ux/hcx/P9Fbx6i29GwTaXgT3LTt95AuCnV5RRLrzsqoyZkz851hcg5z4kjUQVMduDl3HECGgW/FNw==",
+ "dependencies": {
+ "@cspell/dict-data-science": "^1.0.0"
+ }
+ },
+ "node_modules/@cspell/dict-r": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-r/-/dict-r-2.0.1.tgz",
+ "integrity": "sha512-KCmKaeYMLm2Ip79mlYPc8p+B2uzwBp4KMkzeLd5E6jUlCL93Y5Nvq68wV5fRLDRTf7N1LvofkVFWfDcednFOgA=="
+ },
+ "node_modules/@cspell/dict-ruby": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.0.tgz",
+ "integrity": "sha512-ssb96QxLZ76yPqFrikWxItnCbUKhYXJ2owkoIYzUGNFl2CHSoHCb5a6Zetum9mQ/oUA3gNeUhd28ZUlXs0la2A=="
+ },
+ "node_modules/@cspell/dict-rust": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.1.tgz",
+ "integrity": "sha512-xJSSzHDK2z6lSVaOmMxl3PTOtfoffaxMo7fTcbZUF+SCJzfKbO6vnN9TCGX2sx1RHFDz66Js6goz6SAZQdOwaw=="
+ },
+ "node_modules/@cspell/dict-scala": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-scala/-/dict-scala-5.0.0.tgz",
+ "integrity": "sha512-ph0twaRoV+ylui022clEO1dZ35QbeEQaKTaV2sPOsdwIokABPIiK09oWwGK9qg7jRGQwVaRPEq0Vp+IG1GpqSQ=="
+ },
+ "node_modules/@cspell/dict-software-terms": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-3.2.0.tgz",
+ "integrity": "sha512-RI6sv4Bc4i42YH/ofVelv8lXpJRhCyS9IhI2BtejUoMXKhKA9gC01ATXOylx+oaQmj3t5ark4R50xKFRvC7ENA=="
+ },
+ "node_modules/@cspell/dict-sql": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.0.tgz",
+ "integrity": "sha512-Bb+TNWUrTNNABO0bmfcYXiTlSt0RD6sB2MIY+rNlaMyIwug43jUjeYmkLz2tPkn3+2uvySeFEOMVYhMVfcuDKg=="
+ },
+ "node_modules/@cspell/dict-svelte": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-svelte/-/dict-svelte-1.0.2.tgz",
+ "integrity": "sha512-rPJmnn/GsDs0btNvrRBciOhngKV98yZ9SHmg8qI6HLS8hZKvcXc0LMsf9LLuMK1TmS2+WQFAan6qeqg6bBxL2Q=="
+ },
+ "node_modules/@cspell/dict-swift": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-swift/-/dict-swift-2.0.1.tgz",
+ "integrity": "sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw=="
+ },
+ "node_modules/@cspell/dict-typescript": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.1.tgz",
+ "integrity": "sha512-N9vNJZoOXmmrFPR4ir3rGvnqqwmQGgOYoL1+y6D4oIhyr7FhaYiyF/d7QT61RmjZQcATMa6PSL+ZisCeRLx9+A=="
+ },
+ "node_modules/@cspell/dict-vue": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-vue/-/dict-vue-3.0.0.tgz",
+ "integrity": "sha512-niiEMPWPV9IeRBRzZ0TBZmNnkK3olkOPYxC1Ny2AX4TGlYRajcW0WUtoSHmvvjZNfWLSg2L6ruiBeuPSbjnG6A=="
+ },
+ "node_modules/@cspell/dynamic-import": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-6.31.1.tgz",
+ "integrity": "sha512-uliIUv9uZlnyYmjUlcw/Dm3p0xJOEnWJNczHAfqAl4Ytg6QZktw0GtUA9b1umbRXLv0KRTPtSC6nMq3cR7rRmQ==",
+ "dependencies": {
+ "import-meta-resolve": "^2.2.2"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@cspell/strong-weak-map": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-6.31.1.tgz",
+ "integrity": "sha512-z8AuWvUuSnugFKJOA9Ke0aiFuehcqLFqia9bk8XaQNEWr44ahPVn3sEWnAncTxPbpWuUw5UajoJa0egRAE1CCg==",
+ "engines": {
+ "node": ">=14.6"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "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==",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "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=="
+ },
+ "node_modules/array-timsort": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/array-timsort/-/array-timsort-1.0.3.tgz",
+ "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ=="
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "dependencies": {
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/clear-module": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/clear-module/-/clear-module-4.1.2.tgz",
+ "integrity": "sha512-LWAxzHqdHsAZlPlEyJ2Poz6AIs384mPeqLVCru2p0BrP9G/kVGuhNyZYClLO6cXlnuJjzC8xtsJIuMjKqLXoAw==",
+ "dependencies": {
+ "parent-module": "^2.0.0",
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "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==",
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "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=="
+ },
+ "node_modules/commander": {
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
+ "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/comment-json": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz",
+ "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==",
+ "dependencies": {
+ "array-timsort": "^1.0.3",
+ "core-util-is": "^1.0.3",
+ "esprima": "^4.0.1",
+ "has-own-prop": "^2.0.0",
+ "repeat-string": "^1.6.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
+ },
+ "node_modules/configstore": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz",
+ "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==",
+ "dependencies": {
+ "dot-prop": "^5.2.0",
+ "graceful-fs": "^4.1.2",
+ "make-dir": "^3.0.0",
+ "unique-string": "^2.0.0",
+ "write-file-atomic": "^3.0.0",
+ "xdg-basedir": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
+ },
+ "node_modules/cosmiconfig": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.0.0.tgz",
+ "integrity": "sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ==",
+ "dependencies": {
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/crypto-random-string": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
+ "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/cspell": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell/-/cspell-6.31.2.tgz",
+ "integrity": "sha512-HJcQ8jqL/1N3Mj5dufFnIZCX3ACuRoFTSVY6h3Bo5wBqd2iiJTyeQ1SY9Zymlxtb2KyJ6jQRiFmkWeFx2HVs7w==",
+ "dependencies": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "@cspell/dynamic-import": "6.31.1",
+ "chalk": "^4.1.2",
+ "commander": "^10.0.0",
+ "cspell-gitignore": "6.31.2",
+ "cspell-glob": "6.31.2",
+ "cspell-io": "6.31.2",
+ "cspell-lib": "6.31.2",
+ "fast-glob": "^3.2.12",
+ "fast-json-stable-stringify": "^2.1.0",
+ "file-entry-cache": "^6.0.1",
+ "get-stdin": "^8.0.0",
+ "imurmurhash": "^0.1.4",
+ "semver": "^7.3.8",
+ "strip-ansi": "^6.0.1",
+ "vscode-uri": "^3.0.7"
+ },
+ "bin": {
+ "cspell": "bin.js",
+ "cspell-esm": "bin.mjs"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/streetsidesoftware/cspell?sponsor=1"
+ }
+ },
+ "node_modules/cspell-dictionary": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-6.31.1.tgz",
+ "integrity": "sha512-7+K7aQGarqbpucky26wled7QSCJeg6VkLUWS+hLjyf0Cqc9Zew5xsLa4QjReExWUJx+a97jbiflITZNuWxgMrg==",
+ "dependencies": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "cspell-trie-lib": "6.31.1",
+ "fast-equals": "^4.0.3",
+ "gensequence": "^5.0.2"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/cspell-gitignore": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-6.31.2.tgz",
+ "integrity": "sha512-B1i8aiXCIbb/08u0K3xnDyXtg0qD+lb5B2itOOXi7KXlPkKvIuN4hWyXxhVDweWyYWEzyXD5wBpPrqICVrStHQ==",
+ "dependencies": {
+ "cspell-glob": "6.31.2",
+ "find-up": "^5.0.0"
+ },
+ "bin": {
+ "cspell-gitignore": "bin.mjs"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/cspell-glob": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-6.31.2.tgz",
+ "integrity": "sha512-ceTjHM4HaBgvG5S3oiB+PTPYq58EQYG6MmYpycDHzpR5I2H1NurK9lxWHfANmLbi0DsHn58tIZNDMUnnQj19Jw==",
+ "dependencies": {
+ "micromatch": "^4.0.5"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/cspell-grammar": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-6.31.1.tgz",
+ "integrity": "sha512-AsRVP0idcNFVSb9+p9XjMumFj3BUV67WIPWApaAzJl/dYyiIygQObRE+si0/QtFWGNw873b7hNhWZiKjqIdoaQ==",
+ "dependencies": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1"
+ },
+ "bin": {
+ "cspell-grammar": "bin.mjs"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/cspell-io": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-6.31.2.tgz",
+ "integrity": "sha512-Lp7LsF/f35LaOneROb/9mWiprShz2ONxjYFAt3bYP7gIxq41lWi8QhO+SN6spoqPp/wQXjSqJ7MuTZsemxPRnA==",
+ "dependencies": {
+ "@cspell/cspell-service-bus": "6.31.1",
+ "node-fetch": "^2.6.9"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/cspell-lib": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-6.31.2.tgz",
+ "integrity": "sha512-LqaB2ZfVfQHKL5aZzYoKU6/UxxAtWeXAYwpC9l+satXmajYyXtAh4kWmuW+y7kKRH2jA79rJQS3QE6ToeSqgQQ==",
+ "dependencies": {
+ "@cspell/cspell-bundled-dicts": "6.31.2",
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "@cspell/strong-weak-map": "6.31.1",
+ "clear-module": "^4.1.2",
+ "comment-json": "^4.2.3",
+ "configstore": "^5.0.1",
+ "cosmiconfig": "8.0.0",
+ "cspell-dictionary": "6.31.1",
+ "cspell-glob": "6.31.2",
+ "cspell-grammar": "6.31.1",
+ "cspell-io": "6.31.2",
+ "cspell-trie-lib": "6.31.1",
+ "fast-equals": "^4.0.3",
+ "find-up": "^5.0.0",
+ "gensequence": "^5.0.2",
+ "import-fresh": "^3.3.0",
+ "resolve-from": "^5.0.0",
+ "resolve-global": "^1.0.0",
+ "vscode-languageserver-textdocument": "^1.0.8",
+ "vscode-uri": "^3.0.7"
+ },
+ "engines": {
+ "node": ">=14.6"
+ }
+ },
+ "node_modules/cspell-trie-lib": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-6.31.1.tgz",
+ "integrity": "sha512-MtYh7s4Sbr1rKT31P2BK6KY+YfOy3dWsuusq9HnqCXmq6aZ1HyFgjH/9p9uvqGi/TboMqn1KOV8nifhXK3l3jg==",
+ "dependencies": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "gensequence": "^5.0.2"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/dot-prop": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
+ "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
+ "dependencies": {
+ "is-obj": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
+ "dependencies": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/fast-equals": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz",
+ "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg=="
+ },
+ "node_modules/fast-glob": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz",
+ "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==",
+ "dependencies": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
+ },
+ "node_modules/fastq": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
+ "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
+ "dependencies": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "node_modules/file-entry-cache": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+ "dependencies": {
+ "flat-cache": "^3.0.4"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "dependencies": {
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/flat-cache": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
+ "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+ "dependencies": {
+ "flatted": "^3.1.0",
+ "rimraf": "^3.0.2"
+ },
+ "engines": {
+ "node": "^10.12.0 || >=12.0.0"
+ }
+ },
+ "node_modules/flatted": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
+ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
+ },
+ "node_modules/gensequence": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-5.0.2.tgz",
+ "integrity": "sha512-JlKEZnFc6neaeSVlkzBGGgkIoIaSxMgvdamRoPN8r3ozm2r9dusqxeKqYQ7lhzmj2UhFQP8nkyfCaiLQxiLrDA==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/get-stdin": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz",
+ "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/global-dirs": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
+ "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==",
+ "dependencies": {
+ "ini": "^1.3.4"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+ },
+ "node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/has-own-prop": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/has-own-prop/-/has-own-prop-2.0.0.tgz",
+ "integrity": "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/import-fresh/node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/import-fresh/node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/import-meta-resolve": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-2.2.2.tgz",
+ "integrity": "sha512-f8KcQ1D80V7RnqVm+/lirO9zkOxjGxhaTC1IPrBGd3MEfNgmNG67tSUO9gTi2F3Blr2Az6g1vocaxzkVnWl9MA==",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "engines": {
+ "node": ">=0.8.19"
+ }
+ },
+ "node_modules/inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "dependencies": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "node_modules/ini": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
+ },
+ "node_modules/is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-obj": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA=="
+ },
+ "node_modules/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
+ },
+ "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==",
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
+ },
+ "node_modules/lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
+ },
+ "node_modules/locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "dependencies": {
+ "p-locate": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/make-dir": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
+ "dependencies": {
+ "semver": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/make-dir/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
+ "dependencies": {
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/node-fetch": {
+ "version": "2.6.12",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz",
+ "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==",
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dependencies": {
+ "yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dependencies": {
+ "p-limit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/parent-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-2.0.0.tgz",
+ "integrity": "sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==",
+ "dependencies": {
+ "callsites": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
+ "dependencies": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
+ "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/resolve-global": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz",
+ "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==",
+ "dependencies": {
+ "global-dirs": "^0.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "node_modules/semver": {
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
+ },
+ "node_modules/typedarray-to-buffer": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
+ "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
+ "dependencies": {
+ "is-typedarray": "^1.0.0"
+ }
+ },
+ "node_modules/unique-string": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz",
+ "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==",
+ "dependencies": {
+ "crypto-random-string": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "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=="
+ },
+ "node_modules/vscode-uri": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.7.tgz",
+ "integrity": "sha512-eOpPHogvorZRobNqJGhapa0JdwaxpjVvyBp0QIUMRMSf8ZAlqOdEquKuRmw9Qwu0qXtJIWqFtMkmvJjUZmMjVA=="
+ },
+ "node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
+ },
+ "node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
+ },
+ "node_modules/write-file-atomic": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
+ "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
+ "dependencies": {
+ "imurmurhash": "^0.1.4",
+ "is-typedarray": "^1.0.0",
+ "signal-exit": "^3.0.2",
+ "typedarray-to-buffer": "^3.1.5"
+ }
+ },
+ "node_modules/xdg-basedir": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz",
+ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+ },
+ "node_modules/yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ }
+ },
+ "dependencies": {
+ "@babel/code-frame": {
+ "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==",
+ "requires": {
+ "@babel/highlight": "^7.22.5"
+ }
+ },
+ "@babel/helper-validator-identifier": {
+ "version": "7.22.5",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz",
+ "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ=="
+ },
+ "@babel/highlight": {
+ "version": "7.22.5",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz",
+ "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==",
+ "requires": {
+ "@babel/helper-validator-identifier": "^7.22.5",
+ "chalk": "^2.0.0",
+ "js-tokens": "^4.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ },
+ "color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "requires": {
+ "color-name": "1.1.3"
+ }
+ },
+ "color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ }
+ }
+ },
+ "@cspell/cspell-bundled-dicts": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-6.31.2.tgz",
+ "integrity": "sha512-rQ5y/U1Ah5AaduIh3NU2z371hRrOr1cmNdhhP8oiuz2E4VqmcoVHflXIct9DgY8uIJpwsSCdR6ypOQWZYXYnwA==",
+ "requires": {
+ "@cspell/dict-ada": "^4.0.1",
+ "@cspell/dict-aws": "^3.0.0",
+ "@cspell/dict-bash": "^4.1.1",
+ "@cspell/dict-companies": "^3.0.9",
+ "@cspell/dict-cpp": "^5.0.2",
+ "@cspell/dict-cryptocurrencies": "^3.0.1",
+ "@cspell/dict-csharp": "^4.0.2",
+ "@cspell/dict-css": "^4.0.5",
+ "@cspell/dict-dart": "^2.0.2",
+ "@cspell/dict-django": "^4.0.2",
+ "@cspell/dict-docker": "^1.1.6",
+ "@cspell/dict-dotnet": "^5.0.0",
+ "@cspell/dict-elixir": "^4.0.2",
+ "@cspell/dict-en_us": "^4.3.2",
+ "@cspell/dict-en-common-misspellings": "^1.0.2",
+ "@cspell/dict-en-gb": "1.1.33",
+ "@cspell/dict-filetypes": "^3.0.0",
+ "@cspell/dict-fonts": "^3.0.2",
+ "@cspell/dict-fullstack": "^3.1.5",
+ "@cspell/dict-gaming-terms": "^1.0.4",
+ "@cspell/dict-git": "^2.0.0",
+ "@cspell/dict-golang": "^6.0.1",
+ "@cspell/dict-haskell": "^4.0.1",
+ "@cspell/dict-html": "^4.0.3",
+ "@cspell/dict-html-symbol-entities": "^4.0.0",
+ "@cspell/dict-java": "^5.0.5",
+ "@cspell/dict-k8s": "^1.0.1",
+ "@cspell/dict-latex": "^4.0.0",
+ "@cspell/dict-lorem-ipsum": "^3.0.0",
+ "@cspell/dict-lua": "^4.0.1",
+ "@cspell/dict-node": "^4.0.2",
+ "@cspell/dict-npm": "^5.0.5",
+ "@cspell/dict-php": "^4.0.1",
+ "@cspell/dict-powershell": "^5.0.1",
+ "@cspell/dict-public-licenses": "^2.0.2",
+ "@cspell/dict-python": "^4.0.2",
+ "@cspell/dict-r": "^2.0.1",
+ "@cspell/dict-ruby": "^5.0.0",
+ "@cspell/dict-rust": "^4.0.1",
+ "@cspell/dict-scala": "^5.0.0",
+ "@cspell/dict-software-terms": "^3.1.6",
+ "@cspell/dict-sql": "^2.1.0",
+ "@cspell/dict-svelte": "^1.0.2",
+ "@cspell/dict-swift": "^2.0.1",
+ "@cspell/dict-typescript": "^3.1.1",
+ "@cspell/dict-vue": "^3.0.0"
+ }
+ },
+ "@cspell/cspell-pipe": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-6.31.1.tgz",
+ "integrity": "sha512-zk1olZi4dr6GLm5PAjvsiZ01HURNSruUYFl1qSicGnTwYN8GaN4RhAwannAytcJ7zJPIcyXlid0YsB58nJf3wQ=="
+ },
+ "@cspell/cspell-service-bus": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-6.31.1.tgz",
+ "integrity": "sha512-YyBicmJyZ1uwKVxujXw7sgs9x+Eps43OkWmCtDZmZlnq489HdTSuhF1kTbVi2yeFSeaXIS87+uHo12z97KkQpg=="
+ },
+ "@cspell/cspell-types": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-6.31.1.tgz",
+ "integrity": "sha512-1KeTQFiHMssW1eRoF2NZIEg4gPVIfXLsL2+VSD/AV6YN7lBcuf6gRRgV5KWYarhxtEfjxhDdDTmu26l/iJEUtw=="
+ },
+ "@cspell/dict-ada": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-ada/-/dict-ada-4.0.1.tgz",
+ "integrity": "sha512-/E9o3nHrXOhYmQE43deKbxZcR3MIJAsa+66IzP9TXGHheKEx8b9dVMVVqydDDH8oom1H0U20NRPtu6KRVbT9xw=="
+ },
+ "@cspell/dict-aws": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-3.0.0.tgz",
+ "integrity": "sha512-O1W6nd5y3Z00AMXQMzfiYrIJ1sTd9fB1oLr+xf/UD7b3xeHeMeYE2OtcWbt9uyeHim4tk+vkSTcmYEBKJgS5bQ=="
+ },
+ "@cspell/dict-bash": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.1.tgz",
+ "integrity": "sha512-8czAa/Mh96wu2xr0RXQEGMTBUGkTvYn/Pb0o+gqOO1YW+poXGQc3gx0YPqILDryP/KCERrNvkWUJz3iGbvwC2A=="
+ },
+ "@cspell/dict-companies": {
+ "version": "3.0.17",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.0.17.tgz",
+ "integrity": "sha512-vo1jbozgZWSzz2evIL26kLd35tVb+5kW/UTvTzAwaWutSWRloRyKx38nj2CaLJ2IFxBdiATteCFGTzKCvJJl6A=="
+ },
+ "@cspell/dict-cpp": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.0.3.tgz",
+ "integrity": "sha512-7sx/RFsf0hB3q8chx8OHYl9Kd+g0pqA1laphwaAQ+/jPwoAreYT3kNQWbJ3bIt/rMoORetFSQxckSbaJXwwqpw=="
+ },
+ "@cspell/dict-cryptocurrencies": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-3.0.1.tgz",
+ "integrity": "sha512-Tdlr0Ahpp5yxtwM0ukC13V6+uYCI0p9fCRGMGZt36rWv8JQZHIuHfehNl7FB/Qc09NCF7p5ep0GXbL+sVTd/+w=="
+ },
+ "@cspell/dict-csharp": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-csharp/-/dict-csharp-4.0.2.tgz",
+ "integrity": "sha512-1JMofhLK+4p4KairF75D3A924m5ERMgd1GvzhwK2geuYgd2ZKuGW72gvXpIV7aGf52E3Uu1kDXxxGAiZ5uVG7g=="
+ },
+ "@cspell/dict-css": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-css/-/dict-css-4.0.6.tgz",
+ "integrity": "sha512-2Lo8W2ezHmGgY8cWFr4RUwnjbndna5mokpCK/DuxGILQnuajR0J31ANQOXj/8iZM2phFB93ZzMNk/0c04TDfSQ=="
+ },
+ "@cspell/dict-dart": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-dart/-/dict-dart-2.0.2.tgz",
+ "integrity": "sha512-jigcODm7Z4IFZ4vParwwP3IT0fIgRq/9VoxkXfrxBMsLBGGM2QltHBj7pl+joX+c4cOHxfyZktGJK1B1wFtR4Q=="
+ },
+ "@cspell/dict-data-science": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-data-science/-/dict-data-science-1.0.7.tgz",
+ "integrity": "sha512-Q9VUFaarUpqM6CAmR8peP4o9alk0XQ4rgVoE2R2XalpC2cqPI8Hmg6QwMU2UPioSUcWMJCqLc/KzJti0gBMuxA=="
+ },
+ "@cspell/dict-django": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-django/-/dict-django-4.1.0.tgz",
+ "integrity": "sha512-bKJ4gPyrf+1c78Z0Oc4trEB9MuhcB+Yg+uTTWsvhY6O2ncFYbB/LbEZfqhfmmuK/XJJixXfI1laF2zicyf+l0w=="
+ },
+ "@cspell/dict-docker": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-docker/-/dict-docker-1.1.6.tgz",
+ "integrity": "sha512-zCCiRTZ6EOQpBnSOm0/3rnKW1kCcAUDUA7SxJG3SuH6iZvKi3I8FEg8+O83WQUeXg0SyPNerD9F40JLnnJjJig=="
+ },
+ "@cspell/dict-dotnet": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-dotnet/-/dict-dotnet-5.0.0.tgz",
+ "integrity": "sha512-EOwGd533v47aP5QYV8GlSSKkmM9Eq8P3G/eBzSpH3Nl2+IneDOYOBLEUraHuiCtnOkNsz0xtZHArYhAB2bHWAw=="
+ },
+ "@cspell/dict-elixir": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-elixir/-/dict-elixir-4.0.3.tgz",
+ "integrity": "sha512-g+uKLWvOp9IEZvrIvBPTr/oaO6619uH/wyqypqvwpmnmpjcfi8+/hqZH8YNKt15oviK8k4CkINIqNhyndG9d9Q=="
+ },
+ "@cspell/dict-en_us": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.4.tgz",
+ "integrity": "sha512-mR2yqWmFip1zTKja2SqyVMbzuqEThqkEJk9M32bMDziPJpEyOIPvLA0UPmj3cyRKJkRuVF0bhDCE33O+at38hw=="
+ },
+ "@cspell/dict-en-common-misspellings": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-1.0.2.tgz",
+ "integrity": "sha512-jg7ZQZpZH7+aAxNBlcAG4tGhYF6Ksy+QS5Df73Oo+XyckBjC9QS+PrRwLTeYoFIgXy5j3ICParK5r3MSSoL4gw=="
+ },
+ "@cspell/dict-en-gb": {
+ "version": "1.1.33",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-en-gb/-/dict-en-gb-1.1.33.tgz",
+ "integrity": "sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g=="
+ },
+ "@cspell/dict-filetypes": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.1.tgz",
+ "integrity": "sha512-8z8mY1IbrTyTRumx2vvD9yzRhNMk9SajM/GtI5hdMM2pPpNSp25bnuauzjRf300eqlqPY2MNb5MmhBFO014DJw=="
+ },
+ "@cspell/dict-fonts": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-fonts/-/dict-fonts-3.0.2.tgz",
+ "integrity": "sha512-Z5QdbgEI7DV+KPXrAeDA6dDm/vTzyaW53SGlKqz6PI5VhkOjgkBXv3YtZjnxMZ4dY2ZIqq+RUK6qa9Pi8rQdGQ=="
+ },
+ "@cspell/dict-fullstack": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-fullstack/-/dict-fullstack-3.1.5.tgz",
+ "integrity": "sha512-6ppvo1dkXUZ3fbYn/wwzERxCa76RtDDl5Afzv2lijLoijGGUw5yYdLBKJnx8PJBGNLh829X352ftE7BElG4leA=="
+ },
+ "@cspell/dict-gaming-terms": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.4.tgz",
+ "integrity": "sha512-hbDduNXlk4AOY0wFxcDMWBPpm34rpqJBeqaySeoUH70eKxpxm+dvjpoRLJgyu0TmymEICCQSl6lAHTHSDiWKZg=="
+ },
+ "@cspell/dict-git": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-2.0.0.tgz",
+ "integrity": "sha512-n1AxyX5Kgxij/sZFkxFJlzn3K9y/sCcgVPg/vz4WNJ4K9YeTsUmyGLA2OQI7d10GJeiuAo2AP1iZf2A8j9aj2w=="
+ },
+ "@cspell/dict-golang": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.2.tgz",
+ "integrity": "sha512-5pyZn4AAiYukAW+gVMIMVmUSkIERFrDX2vtPDjg8PLQUhAHWiVeQSDjuOhq9/C5GCCEZU/zWSONkGiwLBBvV9A=="
+ },
+ "@cspell/dict-haskell": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-haskell/-/dict-haskell-4.0.1.tgz",
+ "integrity": "sha512-uRrl65mGrOmwT7NxspB4xKXFUenNC7IikmpRZW8Uzqbqcu7ZRCUfstuVH7T1rmjRgRkjcIjE4PC11luDou4wEQ=="
+ },
+ "@cspell/dict-html": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-html/-/dict-html-4.0.3.tgz",
+ "integrity": "sha512-Gae8i8rrArT0UyG1I6DHDK62b7Be6QEcBSIeWOm4VIIW1CASkN9B0qFgSVnkmfvnu1Y3H7SSaaEynKjdj3cs8w=="
+ },
+ "@cspell/dict-html-symbol-entities": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-html-symbol-entities/-/dict-html-symbol-entities-4.0.0.tgz",
+ "integrity": "sha512-HGRu+48ErJjoweR5IbcixxETRewrBb0uxQBd6xFGcxbEYCX8CnQFTAmKI5xNaIt2PKaZiJH3ijodGSqbKdsxhw=="
+ },
+ "@cspell/dict-java": {
+ "version": "5.0.5",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-java/-/dict-java-5.0.5.tgz",
+ "integrity": "sha512-X19AoJgWIBwJBSWGFqSgHaBR/FEykBHTMjL6EqOnhIGEyE9nvuo32tsSHjXNJ230fQxQptEvRZoaldNLtKxsRg=="
+ },
+ "@cspell/dict-k8s": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-k8s/-/dict-k8s-1.0.1.tgz",
+ "integrity": "sha512-gc5y4Nm3hVdMZNBZfU2M1AsAmObZsRWjCUk01NFPfGhFBXyVne41T7E62rpnzu5330FV/6b/TnFcPgRmak9lLw=="
+ },
+ "@cspell/dict-latex": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-latex/-/dict-latex-4.0.0.tgz",
+ "integrity": "sha512-LPY4y6D5oI7D3d+5JMJHK/wxYTQa2lJMSNxps2JtuF8hbAnBQb3igoWEjEbIbRRH1XBM0X8dQqemnjQNCiAtxQ=="
+ },
+ "@cspell/dict-lorem-ipsum": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-lorem-ipsum/-/dict-lorem-ipsum-3.0.0.tgz",
+ "integrity": "sha512-msEV24qEpzWZs2kcEicqYlhyBpR0amfDkJOs+iffC07si9ftqtQ+yP3lf1VFLpgqw3SQh1M1vtU7RD4sPrNlcQ=="
+ },
+ "@cspell/dict-lua": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.1.tgz",
+ "integrity": "sha512-j0MFmeCouSoC6EdZTbvGe1sJ9V+ruwKSeF+zRkNNNload7R72Co5kX1haW2xLHGdlq0kqSy1ODRZKdVl0e+7hg=="
+ },
+ "@cspell/dict-node": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-node/-/dict-node-4.0.2.tgz",
+ "integrity": "sha512-FEQJ4TnMcXEFslqBQkXa5HposMoCGsiBv2ux4IZuIXgadXeHKHUHk60iarWpjhzNzQLyN2GD7NoRMd12bK3Llw=="
+ },
+ "@cspell/dict-npm": {
+ "version": "5.0.7",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.7.tgz",
+ "integrity": "sha512-6SegF0HsVaBTl6PlHjeErG8Av+tRYkUG1yaXUQIGWXU0A8oxhI0o4PuL65UWH5lkCKhJyGai69Cd0iytL0oVFg=="
+ },
+ "@cspell/dict-php": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.1.tgz",
+ "integrity": "sha512-XaQ/JkSyq2c07MfRG54DjLi2CV+HHwS99DDCAao9Fq2JfkWroTQsUeek7wYZXJATrJVOULoV3HKih12x905AtQ=="
+ },
+ "@cspell/dict-powershell": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.2.tgz",
+ "integrity": "sha512-IHfWLme3FXE7vnOmMncSBxOsMTdNWd1Vcyhag03WS8oANSgX8IZ+4lMI00mF0ptlgchf16/OU8WsV4pZfikEFw=="
+ },
+ "@cspell/dict-public-licenses": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.2.tgz",
+ "integrity": "sha512-baKkbs/WGEV2lCWZoL0KBPh3uiPcul5GSDwmXEBAsR5McEW52LF94/b7xWM0EmSAc/y8ODc5LnPYC7RDRLi6LQ=="
+ },
+ "@cspell/dict-python": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.1.2.tgz",
+ "integrity": "sha512-Whcn4K8R0Ux/hcx/P9Fbx6i29GwTaXgT3LTt95AuCnV5RRLrzsqoyZkz851hcg5z4kjUQVMduDl3HECGgW/FNw==",
+ "requires": {
+ "@cspell/dict-data-science": "^1.0.0"
+ }
+ },
+ "@cspell/dict-r": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-r/-/dict-r-2.0.1.tgz",
+ "integrity": "sha512-KCmKaeYMLm2Ip79mlYPc8p+B2uzwBp4KMkzeLd5E6jUlCL93Y5Nvq68wV5fRLDRTf7N1LvofkVFWfDcednFOgA=="
+ },
+ "@cspell/dict-ruby": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.0.tgz",
+ "integrity": "sha512-ssb96QxLZ76yPqFrikWxItnCbUKhYXJ2owkoIYzUGNFl2CHSoHCb5a6Zetum9mQ/oUA3gNeUhd28ZUlXs0la2A=="
+ },
+ "@cspell/dict-rust": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.1.tgz",
+ "integrity": "sha512-xJSSzHDK2z6lSVaOmMxl3PTOtfoffaxMo7fTcbZUF+SCJzfKbO6vnN9TCGX2sx1RHFDz66Js6goz6SAZQdOwaw=="
+ },
+ "@cspell/dict-scala": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-scala/-/dict-scala-5.0.0.tgz",
+ "integrity": "sha512-ph0twaRoV+ylui022clEO1dZ35QbeEQaKTaV2sPOsdwIokABPIiK09oWwGK9qg7jRGQwVaRPEq0Vp+IG1GpqSQ=="
+ },
+ "@cspell/dict-software-terms": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-3.2.0.tgz",
+ "integrity": "sha512-RI6sv4Bc4i42YH/ofVelv8lXpJRhCyS9IhI2BtejUoMXKhKA9gC01ATXOylx+oaQmj3t5ark4R50xKFRvC7ENA=="
+ },
+ "@cspell/dict-sql": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.0.tgz",
+ "integrity": "sha512-Bb+TNWUrTNNABO0bmfcYXiTlSt0RD6sB2MIY+rNlaMyIwug43jUjeYmkLz2tPkn3+2uvySeFEOMVYhMVfcuDKg=="
+ },
+ "@cspell/dict-svelte": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-svelte/-/dict-svelte-1.0.2.tgz",
+ "integrity": "sha512-rPJmnn/GsDs0btNvrRBciOhngKV98yZ9SHmg8qI6HLS8hZKvcXc0LMsf9LLuMK1TmS2+WQFAan6qeqg6bBxL2Q=="
+ },
+ "@cspell/dict-swift": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-swift/-/dict-swift-2.0.1.tgz",
+ "integrity": "sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw=="
+ },
+ "@cspell/dict-typescript": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.1.tgz",
+ "integrity": "sha512-N9vNJZoOXmmrFPR4ir3rGvnqqwmQGgOYoL1+y6D4oIhyr7FhaYiyF/d7QT61RmjZQcATMa6PSL+ZisCeRLx9+A=="
+ },
+ "@cspell/dict-vue": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@cspell/dict-vue/-/dict-vue-3.0.0.tgz",
+ "integrity": "sha512-niiEMPWPV9IeRBRzZ0TBZmNnkK3olkOPYxC1Ny2AX4TGlYRajcW0WUtoSHmvvjZNfWLSg2L6ruiBeuPSbjnG6A=="
+ },
+ "@cspell/dynamic-import": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-6.31.1.tgz",
+ "integrity": "sha512-uliIUv9uZlnyYmjUlcw/Dm3p0xJOEnWJNczHAfqAl4Ytg6QZktw0GtUA9b1umbRXLv0KRTPtSC6nMq3cR7rRmQ==",
+ "requires": {
+ "import-meta-resolve": "^2.2.2"
+ }
+ },
+ "@cspell/strong-weak-map": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-6.31.1.tgz",
+ "integrity": "sha512-z8AuWvUuSnugFKJOA9Ke0aiFuehcqLFqia9bk8XaQNEWr44ahPVn3sEWnAncTxPbpWuUw5UajoJa0egRAE1CCg=="
+ },
+ "@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "requires": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ }
+ },
+ "@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A=="
+ },
+ "@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "requires": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ }
+ },
+ "ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
+ },
+ "array-timsort": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/array-timsort/-/array-timsort-1.0.3.tgz",
+ "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ=="
+ },
+ "balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "requires": {
+ "fill-range": "^7.1.1"
+ }
+ },
+ "callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "clear-module": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/clear-module/-/clear-module-4.1.2.tgz",
+ "integrity": "sha512-LWAxzHqdHsAZlPlEyJ2Poz6AIs384mPeqLVCru2p0BrP9G/kVGuhNyZYClLO6cXlnuJjzC8xtsJIuMjKqLXoAw==",
+ "requires": {
+ "parent-module": "^2.0.0",
+ "resolve-from": "^5.0.0"
+ }
+ },
+ "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==",
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "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=="
+ },
+ "commander": {
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
+ "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug=="
+ },
+ "comment-json": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz",
+ "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==",
+ "requires": {
+ "array-timsort": "^1.0.3",
+ "core-util-is": "^1.0.3",
+ "esprima": "^4.0.1",
+ "has-own-prop": "^2.0.0",
+ "repeat-string": "^1.6.1"
+ }
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
+ },
+ "configstore": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz",
+ "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==",
+ "requires": {
+ "dot-prop": "^5.2.0",
+ "graceful-fs": "^4.1.2",
+ "make-dir": "^3.0.0",
+ "unique-string": "^2.0.0",
+ "write-file-atomic": "^3.0.0",
+ "xdg-basedir": "^4.0.0"
+ }
+ },
+ "core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
+ },
+ "cosmiconfig": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.0.0.tgz",
+ "integrity": "sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ==",
+ "requires": {
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0"
+ }
+ },
+ "crypto-random-string": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
+ "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA=="
+ },
+ "cspell": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell/-/cspell-6.31.2.tgz",
+ "integrity": "sha512-HJcQ8jqL/1N3Mj5dufFnIZCX3ACuRoFTSVY6h3Bo5wBqd2iiJTyeQ1SY9Zymlxtb2KyJ6jQRiFmkWeFx2HVs7w==",
+ "requires": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "@cspell/dynamic-import": "6.31.1",
+ "chalk": "^4.1.2",
+ "commander": "^10.0.0",
+ "cspell-gitignore": "6.31.2",
+ "cspell-glob": "6.31.2",
+ "cspell-io": "6.31.2",
+ "cspell-lib": "6.31.2",
+ "fast-glob": "^3.2.12",
+ "fast-json-stable-stringify": "^2.1.0",
+ "file-entry-cache": "^6.0.1",
+ "get-stdin": "^8.0.0",
+ "imurmurhash": "^0.1.4",
+ "semver": "^7.3.8",
+ "strip-ansi": "^6.0.1",
+ "vscode-uri": "^3.0.7"
+ }
+ },
+ "cspell-dictionary": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-6.31.1.tgz",
+ "integrity": "sha512-7+K7aQGarqbpucky26wled7QSCJeg6VkLUWS+hLjyf0Cqc9Zew5xsLa4QjReExWUJx+a97jbiflITZNuWxgMrg==",
+ "requires": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "cspell-trie-lib": "6.31.1",
+ "fast-equals": "^4.0.3",
+ "gensequence": "^5.0.2"
+ }
+ },
+ "cspell-gitignore": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-6.31.2.tgz",
+ "integrity": "sha512-B1i8aiXCIbb/08u0K3xnDyXtg0qD+lb5B2itOOXi7KXlPkKvIuN4hWyXxhVDweWyYWEzyXD5wBpPrqICVrStHQ==",
+ "requires": {
+ "cspell-glob": "6.31.2",
+ "find-up": "^5.0.0"
+ }
+ },
+ "cspell-glob": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-6.31.2.tgz",
+ "integrity": "sha512-ceTjHM4HaBgvG5S3oiB+PTPYq58EQYG6MmYpycDHzpR5I2H1NurK9lxWHfANmLbi0DsHn58tIZNDMUnnQj19Jw==",
+ "requires": {
+ "micromatch": "^4.0.5"
+ }
+ },
+ "cspell-grammar": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-6.31.1.tgz",
+ "integrity": "sha512-AsRVP0idcNFVSb9+p9XjMumFj3BUV67WIPWApaAzJl/dYyiIygQObRE+si0/QtFWGNw873b7hNhWZiKjqIdoaQ==",
+ "requires": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1"
+ }
+ },
+ "cspell-io": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-6.31.2.tgz",
+ "integrity": "sha512-Lp7LsF/f35LaOneROb/9mWiprShz2ONxjYFAt3bYP7gIxq41lWi8QhO+SN6spoqPp/wQXjSqJ7MuTZsemxPRnA==",
+ "requires": {
+ "@cspell/cspell-service-bus": "6.31.1",
+ "node-fetch": "^2.6.9"
+ }
+ },
+ "cspell-lib": {
+ "version": "6.31.2",
+ "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-6.31.2.tgz",
+ "integrity": "sha512-LqaB2ZfVfQHKL5aZzYoKU6/UxxAtWeXAYwpC9l+satXmajYyXtAh4kWmuW+y7kKRH2jA79rJQS3QE6ToeSqgQQ==",
+ "requires": {
+ "@cspell/cspell-bundled-dicts": "6.31.2",
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "@cspell/strong-weak-map": "6.31.1",
+ "clear-module": "^4.1.2",
+ "comment-json": "^4.2.3",
+ "configstore": "^5.0.1",
+ "cosmiconfig": "8.0.0",
+ "cspell-dictionary": "6.31.1",
+ "cspell-glob": "6.31.2",
+ "cspell-grammar": "6.31.1",
+ "cspell-io": "6.31.2",
+ "cspell-trie-lib": "6.31.1",
+ "fast-equals": "^4.0.3",
+ "find-up": "^5.0.0",
+ "gensequence": "^5.0.2",
+ "import-fresh": "^3.3.0",
+ "resolve-from": "^5.0.0",
+ "resolve-global": "^1.0.0",
+ "vscode-languageserver-textdocument": "^1.0.8",
+ "vscode-uri": "^3.0.7"
+ }
+ },
+ "cspell-trie-lib": {
+ "version": "6.31.1",
+ "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-6.31.1.tgz",
+ "integrity": "sha512-MtYh7s4Sbr1rKT31P2BK6KY+YfOy3dWsuusq9HnqCXmq6aZ1HyFgjH/9p9uvqGi/TboMqn1KOV8nifhXK3l3jg==",
+ "requires": {
+ "@cspell/cspell-pipe": "6.31.1",
+ "@cspell/cspell-types": "6.31.1",
+ "gensequence": "^5.0.2"
+ }
+ },
+ "dot-prop": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
+ "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
+ "requires": {
+ "is-obj": "^2.0.0"
+ }
+ },
+ "error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
+ "requires": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="
+ },
+ "esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="
+ },
+ "fast-equals": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz",
+ "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg=="
+ },
+ "fast-glob": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz",
+ "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==",
+ "requires": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ }
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
+ },
+ "fastq": {
+ "version": "1.15.0",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
+ "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
+ "requires": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "file-entry-cache": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+ "requires": {
+ "flat-cache": "^3.0.4"
+ }
+ },
+ "fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "requires": {
+ "to-regex-range": "^5.0.1"
+ }
+ },
+ "find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "requires": {
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
+ }
+ },
+ "flat-cache": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
+ "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+ "requires": {
+ "flatted": "^3.1.0",
+ "rimraf": "^3.0.2"
+ }
+ },
+ "flatted": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
+ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
+ },
+ "gensequence": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/gensequence/-/gensequence-5.0.2.tgz",
+ "integrity": "sha512-JlKEZnFc6neaeSVlkzBGGgkIoIaSxMgvdamRoPN8r3ozm2r9dusqxeKqYQ7lhzmj2UhFQP8nkyfCaiLQxiLrDA=="
+ },
+ "get-stdin": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz",
+ "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg=="
+ },
+ "glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ },
+ "global-dirs": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
+ "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==",
+ "requires": {
+ "ini": "^1.3.4"
+ }
+ },
+ "graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
+ },
+ "has-own-prop": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/has-own-prop/-/has-own-prop-2.0.0.tgz",
+ "integrity": "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ=="
+ },
+ "import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "requires": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "dependencies": {
+ "parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "requires": {
+ "callsites": "^3.0.0"
+ }
+ },
+ "resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
+ }
+ }
+ },
+ "import-meta-resolve": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-2.2.2.tgz",
+ "integrity": "sha512-f8KcQ1D80V7RnqVm+/lirO9zkOxjGxhaTC1IPrBGd3MEfNgmNG67tSUO9gTi2F3Blr2Az6g1vocaxzkVnWl9MA=="
+ },
+ "imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
+ },
+ "ini": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
+ },
+ "is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="
+ },
+ "is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "requires": {
+ "is-extglob": "^2.1.1"
+ }
+ },
+ "is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
+ },
+ "is-obj": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w=="
+ },
+ "is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA=="
+ },
+ "js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
+ },
+ "js-yaml": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "requires": {
+ "argparse": "^2.0.1"
+ }
+ },
+ "json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
+ },
+ "lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
+ },
+ "locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "requires": {
+ "p-locate": "^5.0.0"
+ }
+ },
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "requires": {
+ "yallist": "^4.0.0"
+ }
+ },
+ "make-dir": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
+ "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
+ "requires": {
+ "semver": "^6.0.0"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="
+ }
+ }
+ },
+ "merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
+ },
+ "micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
+ "requires": {
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ }
+ },
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "node-fetch": {
+ "version": "2.6.12",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz",
+ "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==",
+ "requires": {
+ "whatwg-url": "^5.0.0"
+ }
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "requires": {
+ "yocto-queue": "^0.1.0"
+ }
+ },
+ "p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "requires": {
+ "p-limit": "^3.0.2"
+ }
+ },
+ "parent-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-2.0.0.tgz",
+ "integrity": "sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==",
+ "requires": {
+ "callsites": "^3.1.0"
+ }
+ },
+ "parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
+ "requires": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ }
+ },
+ "path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
+ },
+ "path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
+ },
+ "picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
+ },
+ "queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
+ },
+ "repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
+ "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w=="
+ },
+ "resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw=="
+ },
+ "resolve-global": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz",
+ "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==",
+ "requires": {
+ "global-dirs": "^0.1.1"
+ }
+ },
+ "reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
+ },
+ "rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "requires": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "semver": {
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "requires": {
+ "lru-cache": "^6.0.0"
+ }
+ },
+ "signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="
+ },
+ "strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ }
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ },
+ "to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "requires": {
+ "is-number": "^7.0.0"
+ }
+ },
+ "tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
+ },
+ "typedarray-to-buffer": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
+ "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
+ "requires": {
+ "is-typedarray": "^1.0.0"
+ }
+ },
+ "unique-string": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz",
+ "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==",
+ "requires": {
+ "crypto-random-string": "^2.0.0"
+ }
+ },
+ "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=="
+ },
+ "vscode-uri": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.7.tgz",
+ "integrity": "sha512-eOpPHogvorZRobNqJGhapa0JdwaxpjVvyBp0QIUMRMSf8ZAlqOdEquKuRmw9Qwu0qXtJIWqFtMkmvJjUZmMjVA=="
+ },
+ "webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
+ },
+ "whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "requires": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
+ },
+ "write-file-atomic": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
+ "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
+ "requires": {
+ "imurmurhash": "^0.1.4",
+ "is-typedarray": "^1.0.0",
+ "signal-exit": "^3.0.2",
+ "typedarray-to-buffer": "^3.1.5"
+ }
+ },
+ "xdg-basedir": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz",
+ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q=="
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
+ },
+ "yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
+ }
+ }
+}
From a8bb758bb80110fc51cc63aa02d77eb966370b14 Mon Sep 17 00:00:00 2001
From: ChenxiJiang333 <119990644+ChenxiJiang333@users.noreply.github.com>
Date: Wed, 8 Jan 2025 14:50:51 +0800
Subject: [PATCH 064/128] [Compute] Update readme.python.md (#32016)
* Update readme.md
* Update readme.python.md
* Fix tag name in readme.md
* Remove outdated package tags from readme.python.md
* Remove outdated package tags from readme.python.md
* update readme.python.md
* update readme.python.md
* fix cspell
* fix cspell
* update readme.python.md
* update readme.python.md
---------
Co-authored-by: Yuchao Yan
Co-authored-by: msyyc <70930885+msyyc@users.noreply.github.com>
---
cSpell.json | 13 +
.../compute/resource-manager/readme.md | 10 +
.../compute/resource-manager/readme.python.md | 348 +-----------------
3 files changed, 35 insertions(+), 336 deletions(-)
diff --git a/cSpell.json b/cSpell.json
index 307d4998e2d8..f51a7b8dc4b6 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1769,6 +1769,19 @@
"webapi",
"genevametrics"
]
+ },
+ {
+ "filename": "**/specification/compute/resource-manager/readme.md",
+ "words": [
+ "Cloudservice"
+ ]
+ },
+ {
+ "filename": "**/specification/compute/resource-manager/readme.python.md",
+ "words": [
+ "multiapiscript",
+ "modelerfour"
+ ]
}
],
"enableFiletypes": [
diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md
index 1638b442685e..2624853140e9 100644
--- a/specification/compute/resource-manager/readme.md
+++ b/specification/compute/resource-manager/readme.md
@@ -323,6 +323,16 @@ input-file:
- Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json
```
+### Tag: package-2024-11-04-only
+
+These settings apply only when `--tag=package-2024-11-04-only` is specified on the command line.
+
+``` yaml $(tag) == 'package-2024-11-04-only'
+input-file:
+ - Microsoft.Compute/common-types/v1/common.json
+ - Microsoft.Compute/CloudserviceRP/stable/2024-11-04/cloudService.json
+```
+
### Tag: package-2024-10-01
These settings apply only when `--tag=package-2024-10-01` is specified on the command line.
diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md
index 227d170b8821..a3b66eed3b40 100644
--- a/specification/compute/resource-manager/readme.python.md
+++ b/specification/compute/resource-manager/readme.python.md
@@ -1,7 +1,5 @@
## Python
-These settings apply only when `--track2` is specified on the command line.
-
``` yaml
azure-arm: true
license-header: MICROSOFT_MIT_NO_VERSION
@@ -37,58 +35,29 @@ Generate all API versions currently shipped for this package
```yaml $(python)
multiapi: true
-default-api-version: "2024-07-01"
+default-api-version: "2024-11-04"
clear-output-folder: true
batch:
+ - tag: package-2024-11-04-only
- tag: package-2024-07-01-only
- - tag: package-2024-03-03-only
- tag: package-2024-03-02-only
- - tag: package-2024-03-01-only
- tag: package-2023-10-02-only
- - tag: package-2023-09-01-only
- tag: package-2023-07-03-only
- - tag: package-2023-07-01-only
- tag: package-2023-04-02-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-03-only
- - tag: package-2022-08-01-only
- - tag: package-2022-07-02-only
- - tag: package-2022-04-04-only
- - tag: package-2022-03-03-only
- tag: package-2022-03-02-only
- - tag: package-2022-03-01-only
- tag: package-2022-01-03-only
- - tag: package-2021-12-01-only
- - tag: package-2021-11-01-only
- tag: package-2021-10-01-only
- - tag: package-2021-08-01-only
- tag: package-2021-07-01-only
- - tag: package-2021-04-01-only
- - tag: package-2021-03-01-only
- - tag: package-2020-12-01-only
- - tag: package-2020-10-01-preview-only
- - tag: package-2020-09-30-only
- - tag: package-2020-06-30-only
- tag: package-2020-06-01-only
- tag: package-2020-05-01-only
- tag: package-2019-12-01-only
- - tag: package-2019-11-01-only
- tag: package-2019-07-01-only
- tag: package-2019-04-01-only
- - tag: package-2019-03-01-only
- - tag: package-2018-10-01-only
- - tag: package-2018-09-30-only
- - tag: package-compute-only-2018-06
- - tag: package-compute-2018-04
- tag: package-compute-only-2017-12
- tag: package-skus-2017-09
- tag: package-compute-2017-03
- - tag: package-compute-2016-04-preview
- tag: package-compute-2016-03
- - tag: package-compute-2015-06
- multiapiscript: true
```
@@ -98,24 +67,24 @@ perform-load: false
clear-output-folder: false
```
-### Tag: package-2024-07-01-only
+### Tag: package-2024-11-04-only
-These settings apply only when `--tag=package-2024-07-01-only --python` is specified on the command line.
+These settings apply only when `--tag=package-2024-11-04-only --python` is specified on the command line.
Please also specify `--python-sdks-folder=`.
-``` yaml $(tag) == 'package-2024-07-01-only'
-namespace: azure.mgmt.compute.v2024_07_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2024_07_01
+``` yaml $(tag) == 'package-2024-11-04-only'
+namespace: azure.mgmt.compute.v2024_11_04
+output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2024_11_04
```
-### Tag: package-2024-03-03-only
+### Tag: package-2024-07-01-only
-These settings apply only when `--tag=package-2024-03-03-only --python` is specified on the command line.
+These settings apply only when `--tag=package-2024-07-01-only --python` is specified on the command line.
Please also specify `--python-sdks-folder=`.
-``` yaml $(tag) == 'package-2024-03-03-only'
-namespace: azure.mgmt.compute.v2024_03_03
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2024_03_03
+``` yaml $(tag) == 'package-2024-07-01-only'
+namespace: azure.mgmt.compute.v2024_07_01
+output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2024_07_01
```
### Tag: package-2024-03-02-only
@@ -128,15 +97,6 @@ namespace: azure.mgmt.compute.v2024_03_02
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2024_03_02
```
-### Tag: package-2024-03-01-only
-
-These settings apply only when `--tag=package-2024-03-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2024-03-01-only'
-namespace: azure.mgmt.compute.v2024_03_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2024_03_01
-```
### Tag: package-2023-10-02-only
@@ -148,16 +108,6 @@ namespace: azure.mgmt.compute.v2023_10_02
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_10_02
```
-### Tag: package-2023-09-01-only
-
-These settings apply only when `--tag=package-2023-09-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-09-01-only'
-namespace: azure.mgmt.compute.v2023_09_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_09_01
-```
-
### Tag: package-2023-07-03-only
These settings apply only when `--tag=package-2023-07-03-only --python` is specified on the command line.
@@ -168,16 +118,6 @@ namespace: azure.mgmt.compute.v2023_07_03
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_07_03
```
-### 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-04-02-only
These settings apply only when `--tag=package-2023-04-02-only --python` is specified on the command line.
@@ -188,36 +128,6 @@ namespace: azure.mgmt.compute.v2023_04_02
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2023_04_02
```
-### Tag: package-2023-03-01-only
-
-These settings apply only when `--tag=package-2023-03-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-03-01-only'
-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.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-11-01-only'
-namespace: azure.mgmt.compute.v2022_11_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_11_01
-```
-
### Tag: package-2022-09-04-only
These settings apply only when `--tag=package-2022-09-04-only --python` is specified on the command line.
@@ -228,56 +138,6 @@ namespace: azure.mgmt.compute.v2022_09_04
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_09_04
```
-### Tag: package-2022-08-03-only
-
-These settings apply only when `--tag=package-2022-08-03-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-08-03-only'
-namespace: azure.mgmt.compute.v2022_08_03
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_08_03
-```
-
-### Tag: package-2022-08-01-only
-
-These settings apply only when `--tag=package-2022-08-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-08-01-only'
-namespace: azure.mgmt.compute.v2022_08_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_08_01
-```
-
-### Tag: package-2022-07-02-only
-
-These settings apply only when `--tag=package-2022-07-02-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-07-02-only'
-namespace: azure.mgmt.compute.v2022_07_02
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_07_02
-```
-
-### Tag: package-2022-04-04-only
-
-These settings apply only when `--tag=package-2022-04-04-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-04-04-only'
-namespace: azure.mgmt.compute.v2022_04_04
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_04_04
-```
-
-### Tag: package-2022-03-03-only
-
-These settings apply only when `--tag=package-2022-03-03-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-03-03-only'
-namespace: azure.mgmt.compute.v2022_03_03
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_03_03
-```
-
### Tag: package-2022-03-02-only
These settings apply only when `--tag=package-2022-03-02-only --python` is specified on the command line.
@@ -288,16 +148,6 @@ namespace: azure.mgmt.compute.v2022_03_02
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_03_02
```
-### Tag: package-2022-03-01-only
-
-These settings apply only when `--tag=package-2022-03-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-03-01-only'
-namespace: azure.mgmt.compute.v2022_03_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_03_01
-```
-
### Tag: package-2022-01-03-only
These settings apply only when `--tag=package-2022-01-03-only --python` is specified on the command line.
@@ -308,26 +158,6 @@ namespace: azure.mgmt.compute.v2022_01_03
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2022_01_03
```
-### Tag: package-2021-12-01-only
-
-These settings apply only when `--tag=package-2021-12-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2021-12-01-only'
-namespace: azure.mgmt.compute.v2021_12_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_12_01
-```
-
-### Tag: package-2021-11-01-only
-
-These settings apply only when `--tag=package-2021-11-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2021-11-01-only'
-namespace: azure.mgmt.compute.v2021_11_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_11_01
-```
-
### Tag: package-2021-10-01-only
These settings apply only when `--tag=package-2021-10-01-only --python` is specified on the command line.
@@ -338,16 +168,6 @@ namespace: azure.mgmt.compute.v2021_10_01
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_10_01
```
-### Tag: package-2021-08-01-only
-
-These settings apply only when `--tag=package-2021-08-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2021-08-01-only'
-namespace: azure.mgmt.compute.v2021_08_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_08_01
-```
-
### Tag: package-2021-07-01-only
These settings apply only when `--tag=package-2021-07-01-only --python` is specified on the command line.
@@ -358,70 +178,6 @@ namespace: azure.mgmt.compute.v2021_07_01
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_07_01
```
-
-### Tag: package-2021-04-01-only
-
-These settings apply only when `--tag=package-2021-04-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2021-04-01-only'
-namespace: azure.mgmt.compute.v2021_04_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_04_01
-```
-
-### Tag: package-2021-03-01-only
-
-These settings apply only when `--tag=package-2021-03-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2021-03-01-only'
-namespace: azure.mgmt.compute.v2021_03_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2021_03_01
-```
-
-### Tag: package-2020-12-01-only and python
-
-These settings apply only when `--tag=package-2020-12-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2020-12-01-only'
-namespace: azure.mgmt.compute.v2020_12_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_12_01
-python:
- namespace: azure.mgmt.compute.v2020_12_01
- output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_12_01
-```
-
-### Tag: package-2020-10-01-preview-only and python
-
-These settings apply only when `--tag=package-2020-10-01-preview-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2020-10-01-preview-only'
-namespace: azure.mgmt.compute.v2020_10_01_preview
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_10_01_preview
-```
-
-### Tag: package-2020-09-30-only and python
-
-These settings apply only when `--tag=package-2020-09-30-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2020-09-30-only'
-namespace: azure.mgmt.compute.v2020_09_30
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_09_30
-```
-
-### Tag: package-2020-06-30-only and python
-
-These settings apply only when `--tag=package-2020-06-30-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2020-06-30-only'
-namespace: azure.mgmt.compute.v2020_06_30
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2020_06_30
-```
-
### Tag: package-2020-06-01-only and python
These settings apply only when `--tag=package-2020-06-01-only --python` is specified on the command line.
@@ -452,16 +208,6 @@ namespace: azure.mgmt.compute.v2019_12_01
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_12_01
```
-### Tag: package-2019-11-01-only and python
-
-These settings apply only when `--tag=package-2019-11-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2019-11-01-only'
-namespace: azure.mgmt.compute.v2019_11_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_11_01
-```
-
### Tag: package-2019-07-01-only and python
These settings apply only when `--tag=package-2019-07-01-only --python` is specified on the command line.
@@ -482,56 +228,6 @@ namespace: azure.mgmt.compute.v2019_04_01
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_04_01
```
-### Tag: package-2019-03-01-only and python
-
-These settings apply only when `--tag=package-2019-03-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2019-03-01-only'
-namespace: azure.mgmt.compute.v2019_03_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_03_01
-```
-
-### Tag: package-2018-10-01-only and python
-
-These settings apply only when `--tag=package-2018-10-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2018-10-01-only'
-namespace: azure.mgmt.compute.v2018_10_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01
-```
-
-### Tag: package-2018-09-30-only and python
-
-These settings apply only when `--tag=package-2018-09-30-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2018-09-30-only'
-namespace: azure.mgmt.compute.v2018_09_30
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_09_30
-```
-
-### Tag: package-compute-only-2018-06 and python
-
-These settings apply only when `--tag=package-compute-only-2018-06 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-compute-only-2018-06'
-namespace: azure.mgmt.compute.v2018_06_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01
-```
-
-### Tag: package-compute-2018-04 and python
-
-These settings apply only when `--tag=package-compute-2018-04 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-compute-2018-04'
-namespace: azure.mgmt.compute.v2018_04_01
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01
-```
-
### Tag: package-compute-only-2017-12 and python
These settings apply only when `--tag=package-compute-only-2017-12 --python` is specified on the command line.
@@ -562,16 +258,6 @@ namespace: azure.mgmt.compute.v2017_03_30
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30
```
-### Tag: package-compute-2016-04-preview and python
-
-These settings apply only when `--tag=package-compute-2016-04-preview --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-compute-2016-04-preview'
-namespace: azure.mgmt.compute.v2016_04_30_preview
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview
-```
-
### Tag: package-compute-2016-03 and python
These settings apply only when `--tag=package-compute-2016-03 --python` is specified on the command line.
@@ -581,13 +267,3 @@ Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-compute-2015-06'
-namespace: azure.mgmt.compute.v2015_06_15
-output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15
-```
From a5e15ea76b123c1fed61c2b3464688edb8d84788 Mon Sep 17 00:00:00 2001
From: Sethuram S <58911945+SethuramS@users.noreply.github.com>
Date: Wed, 8 Jan 2025 12:50:01 +0530
Subject: [PATCH 065/128] Add list of allowed classifications in description
for Maintenance Configuration (#31941)
Co-authored-by: Sethuram S
---
.../preview/2021-04-01-preview/Maintenance.json | 4 ++--
.../preview/2021-09-01-preview/Maintenance.json | 4 ++--
.../preview/2022-07-01-preview/Maintenance.json | 4 ++--
.../preview/2022-11-01-preview/Maintenance.json | 4 ++--
.../preview/2023-09-01-preview/Maintenance.json | 4 ++--
.../preview/2023-10-01-preview/Maintenance.json | 4 ++--
.../Microsoft.Maintenance/stable/2023-04-01/Maintenance.json | 4 ++--
7 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-04-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-04-01-preview/Maintenance.json
index 9e48bd0e9936..b11a8b5336fc 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-04-01-preview/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-04-01-preview/Maintenance.json
@@ -2101,7 +2101,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2132,7 +2132,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine."
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-09-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-09-01-preview/Maintenance.json
index fc3e636e354a..0e4c43c7d0f5 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-09-01-preview/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2021-09-01-preview/Maintenance.json
@@ -2102,7 +2102,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2133,7 +2133,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine. This property only applies to Guest (InGuestPatch) scope."
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-07-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-07-01-preview/Maintenance.json
index 7668274b43c2..f7466d991542 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-07-01-preview/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-07-01-preview/Maintenance.json
@@ -2107,7 +2107,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2138,7 +2138,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine. This property only applies to Guest (InGuestPatch) scope."
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-11-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-11-01-preview/Maintenance.json
index 93779ab3b25b..154050b31062 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-11-01-preview/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2022-11-01-preview/Maintenance.json
@@ -2155,7 +2155,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2186,7 +2186,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine."
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-09-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-09-01-preview/Maintenance.json
index 2647b960a252..d61a638be06e 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-09-01-preview/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-09-01-preview/Maintenance.json
@@ -2782,7 +2782,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2813,7 +2813,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine."
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-10-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-10-01-preview/Maintenance.json
index ec75225db9d6..6fb07ba2f545 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-10-01-preview/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2023-10-01-preview/Maintenance.json
@@ -2856,7 +2856,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2887,7 +2887,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine."
diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2023-04-01/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2023-04-01/Maintenance.json
index 733f43d10a2b..344528944bc5 100644
--- a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2023-04-01/Maintenance.json
+++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2023-04-01/Maintenance.json
@@ -2582,7 +2582,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', and 'Updates'."
},
"excludeKbsRequiringReboot": {
"type": "boolean",
@@ -2613,7 +2613,7 @@
"items": {
"type": "string"
},
- "description": "Classification category of patches to be patched"
+ "description": "Classification category of patches to be patched. Allowed values are 'Critical', 'Security', and 'Other'."
}
},
"description": "Input properties for patching a Linux machine."
From 898ea5c3fac1ef8041ef6339ae00072058b06285 Mon Sep 17 00:00:00 2001
From: Yuchao Yan
Date: Wed, 8 Jan 2025 17:21:28 +0800
Subject: [PATCH 066/128] [compute] Update readme.python.md (#32036)
---
specification/compute/resource-manager/readme.python.md | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md
index a3b66eed3b40..57a2649c5adc 100644
--- a/specification/compute/resource-manager/readme.python.md
+++ b/specification/compute/resource-manager/readme.python.md
@@ -8,6 +8,7 @@ no-namespace-folders: true
package-version: 1.0.0b1
combine-operation-files: true
only-path-and-body-params-positional: true
+clear-output-folder: true
modelerfour:
lenient-model-deduplication: true
@@ -36,7 +37,6 @@ Generate all API versions currently shipped for this package
```yaml $(python)
multiapi: true
default-api-version: "2024-11-04"
-clear-output-folder: true
batch:
- tag: package-2024-11-04-only
- tag: package-2024-07-01-only
@@ -64,7 +64,6 @@ batch:
``` yaml $(multiapiscript)
output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/
perform-load: false
-clear-output-folder: false
```
### Tag: package-2024-11-04-only
From 04b59b53c73bd192087de428bfa0332300a47f9a Mon Sep 17 00:00:00 2001
From: Jingshu918 <138486531+Jingshu918@users.noreply.github.com>
Date: Wed, 8 Jan 2025 20:09:28 +0800
Subject: [PATCH 067/128] [Synapse]Sync IR Features From DataFactory (#31774)
* [Synapse]Sync IR Features From DataFactory
* fix
* fix
---------
Co-authored-by: Frey-Wang
---
.../integrationRuntime.json | 77 +++++++++++++++++++
1 file changed, 77 insertions(+)
diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-06-01-preview/integrationRuntime.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-06-01-preview/integrationRuntime.json
index 473dc86db3be..2e2ac7d7540c 100644
--- a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-06-01-preview/integrationRuntime.json
+++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2021-06-01-preview/integrationRuntime.json
@@ -1640,6 +1640,14 @@
"vNetProperties": {
"description": "VNet properties for managed integration runtime.",
"$ref": "#/definitions/IntegrationRuntimeVNetProperties"
+ },
+ "copyComputeScaleProperties": {
+ "description": "CopyComputeScale properties for managed integration runtime.",
+ "$ref": "#/definitions/CopyComputeScaleProperties"
+ },
+ "pipelineExternalComputeScaleProperties": {
+ "description": "PipelineExternalComputeScale properties for managed integration runtime.",
+ "$ref": "#/definitions/PipelineExternalComputeScaleProperties"
}
},
"additionalProperties": {
@@ -1683,6 +1691,50 @@
"type": "object"
}
},
+ "CopyComputeScaleProperties": {
+ "description": "CopyComputeScale properties for managed integration runtime.",
+ "type": "object",
+ "properties": {
+ "dataIntegrationUnit": {
+ "description": "DIU number setting reserved for copy activity execution. Supported values are multiples of 4 in range 4-256.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 4
+ },
+ "timeToLive": {
+ "description": "Time to live (in minutes) setting of integration runtime which will execute copy activity.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 5
+ }
+ }
+ },
+ "PipelineExternalComputeScaleProperties": {
+ "description": "PipelineExternalComputeScale properties for managed integration runtime.",
+ "type": "object",
+ "properties": {
+ "timeToLive": {
+ "description": "Time to live (in minutes) setting of integration runtime which will execute pipeline and external activity.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 5
+ },
+ "numberOfPipelineNodes": {
+ "description": "Number of the pipeline nodes, which should be greater than 0 and less than 11.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 10
+ },
+ "numberOfExternalNodes": {
+ "description": "Number of the the external nodes, which should be greater than 0 and less than 11.",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 1,
+ "maximum": 10
+ }
+ }
+ },
"IntegrationRuntimeVNetProperties": {
"description": "VNet properties for managed integration runtime.",
"type": "object",
@@ -2042,6 +2094,18 @@
"linkedInfo": {
"$ref": "#/definitions/LinkedIntegrationRuntimeType",
"description": "Linked integration runtime type from data factory"
+ },
+ "selfContainedInteractiveAuthoringEnabled": {
+ "type": "boolean",
+ "description": "An alternative option to ensure interactive authoring function when your self-hosted integration runtime is unable to establish a connection with Azure Relay.",
+ "enum": [
+ true,
+ false
+ ],
+ "x-ms-enum": {
+ "name": "SelfContainedInteractiveAuthoringState",
+ "modelAsString": false
+ }
}
}
},
@@ -2470,6 +2534,19 @@
"type": "integer",
"format": "int32",
"readOnly": true
+ },
+ "selfContainedInteractiveAuthoringEnabled": {
+ "type": "boolean",
+ "readOnly": true,
+ "description": "An alternative option to ensure interactive authoring function when your self-hosted integration runtime is unable to establish a connection with Azure Relay.",
+ "enum": [
+ true,
+ false
+ ],
+ "x-ms-enum": {
+ "name": "SelfContainedInteractiveAuthoringState",
+ "modelAsString": false
+ }
}
}
},
From 95913728a15eef6714bcb8644a16209fd85a89d4 Mon Sep 17 00:00:00 2001
From: Brent Rusinow <44413020+brrusino@users.noreply.github.com>
Date: Wed, 8 Jan 2025 10:12:01 -0800
Subject: [PATCH 068/128] Microsoft.Chaos TypeSpec migration (#31664)
* sorted existing swagger
* initial autogenerated typespec
* initial TypeSpec updates to resolve warnings
* added generated files
* changed inputs to typespec-generated openapi
* Revert "added generated files"
This reverts commit c09b60a602d003f22606a64d26dd4e077963038d.
Revert "initial TypeSpec updates to resolve warnings"
This reverts commit 805007d2f9a078a8553853b638b246f1580dab07.
* added new typespec migration api version
* file format updates
* reverted back unintentionally changed spec from previous api version
* various modelvalidation fixes
* fix
* model validation fixes
* linting fixes
* fixes for linting
* fixing swagger avocado
* fixed x-ms-example for privatelink list
* updated readme
* fixed tspconfig formatting
* updated tspconfig
* updates to try to fix breaking sdk changes
* trying to fix typescript client generation
* updated tspconfig
* another attempted fix for typescript sdk
* updates to client.tsp
* attempted ts fix
* updated tspconfig
* changed tspconfig back to original values
* update to tspconfig for ts sdk
* reverted back tspconfig
* attempted javascript replacement for SDK operation
* LintDiff fix
* LintDiff fix
* updated client.tsp
* updated client.tsp for csharp replacements
* updating metadata types for csharp client
* updated csharp client replacements
* updating target location visibility
* updates to fix net sdk breaking changes
* updated for net sdk
* fixing net sdk failures
* fixed client.tsp format
* updated visibility for readonly properties
* updated managed identity model reference
* updated readme directives based on feedback
* breaking change fix
* split up models into separate files
* changed file casing
* fixed bad file reference
* fixed spelling failure
* fixed tsp formatting
---
.../Chaos.Management/capability.models.tsp | 77 +
.../chaos/Chaos.Management/capability.tsp | 61 +
.../capabilityType.models.tsp | 110 +
.../chaos/Chaos.Management/capabilityType.tsp | 42 +
.../chaos/Chaos.Management/client.tsp | 55 +
.../chaos/Chaos.Management/common.models.tsp | 100 +
.../Capabilities_CreateOrUpdate.json | 55 +
.../Capabilities_Delete.json | 18 +
.../2024-11-01-preview/Capabilities_Get.json | 34 +
.../2024-11-01-preview/Capabilities_List.json | 38 +
.../CapabilityTypes_Get.json | 32 +
.../CapabilityTypes_List.json | 36 +
.../Experiments_Cancel.json | 18 +
.../Experiments_CreateOrUpdate.json | 208 +
.../Experiments_Delete.json | 19 +
.../Experiments_ExecutionDetails.json | 66 +
.../2024-11-01-preview/Experiments_Get.json | 76 +
.../Experiments_GetExecution.json | 26 +
.../2024-11-01-preview/Experiments_List.json | 81 +
.../Experiments_ListAll.json | 80 +
.../Experiments_ListAllExecutions.json | 40 +
.../2024-11-01-preview/Experiments_Start.json | 18 +
.../Experiments_Update.json | 104 +
.../OperationStatuses_Get.json | 20 +
.../2024-11-01-preview/Operations_List.json | 27 +
...e_Or_Update_A_Private_Access_Resource.json | 54 +
...s_Resource_With_Public_Network_Access.json | 58 +
.../PrivateAccesses_Delete.json | 19 +
...sses_DeleteAPrivateEndpointConnection.json | 20 +
...ccesses_GetAPrivateEndpointConnection.json | 31 +
...ivateAccesses_GetPrivateLinkResources.json | 33 +
...ses_Get_Get_A_Private_Access_Resource.json | 28 +
...Access_Resource_With_Private_Endpoint.json | 48 +
.../PrivateAccesses_List.json | 61 +
.../PrivateAccesses_ListAll.json | 60 +
...cesses_ListPrivateEndpointConnections.json | 34 +
.../PrivateAccesses_Update.json | 44 +
.../2024-11-01-preview/TargetTypes_Get.json | 29 +
.../2024-11-01-preview/TargetTypes_List.json | 34 +
.../Targets_CreateOrUpdate.json | 44 +
.../2024-11-01-preview/Targets_Delete.json | 17 +
.../2024-11-01-preview/Targets_Get.json | 37 +
.../2024-11-01-preview/Targets_List.json | 42 +
.../Chaos.Management/experiment.models.tsp | 388 ++
.../chaos/Chaos.Management/experiment.tsp | 98 +
.../experimentExecution.models.tsp | 304 ++
.../Chaos.Management/experimentExecution.tsp | 51 +
specification/chaos/Chaos.Management/main.tsp | 49 +
.../Chaos.Management/operationStatus.tsp | 39 +
.../Chaos.Management/privateAccess.models.tsp | 79 +
.../chaos/Chaos.Management/privateAccess.tsp | 92 +
.../privateEndpointConnection.models.tsp | 162 +
.../privateEndpointConnection.tsp | 46 +
.../chaos/Chaos.Management/target.models.tsp | 41 +
.../chaos/Chaos.Management/target.tsp | 58 +
.../Chaos.Management/targetType.models.tsp | 64 +
.../chaos/Chaos.Management/targetType.tsp | 42 +
.../chaos/Chaos.Management/tspconfig.yaml | 42 +
.../examples/Capabilities_CreateOrUpdate.json | 55 +
.../examples/Capabilities_Delete.json | 18 +
.../examples/Capabilities_Get.json | 34 +
.../examples/Capabilities_List.json | 38 +
.../examples/CapabilityTypes_Get.json | 32 +
.../examples/CapabilityTypes_List.json | 36 +
.../examples/Experiments_Cancel.json | 18 +
.../examples/Experiments_CreateOrUpdate.json | 208 +
.../examples/Experiments_Delete.json | 19 +
.../Experiments_ExecutionDetails.json | 66 +
.../examples/Experiments_Get.json | 76 +
.../examples/Experiments_GetExecution.json | 26 +
.../examples/Experiments_List.json | 81 +
.../examples/Experiments_ListAll.json | 80 +
.../Experiments_ListAllExecutions.json | 40 +
.../examples/Experiments_Start.json | 18 +
.../examples/Experiments_Update.json | 104 +
.../examples/OperationStatuses_Get.json | 20 +
.../examples/Operations_List.json | 27 +
...e_Or_Update_A_Private_Access_Resource.json | 54 +
...s_Resource_With_Public_Network_Access.json | 58 +
.../examples/PrivateAccesses_Delete.json | 19 +
...sses_DeleteAPrivateEndpointConnection.json | 20 +
...ccesses_GetAPrivateEndpointConnection.json | 31 +
...ivateAccesses_GetPrivateLinkResources.json | 33 +
...ses_Get_Get_A_Private_Access_Resource.json | 28 +
...Access_Resource_With_Private_Endpoint.json | 48 +
.../examples/PrivateAccesses_List.json | 61 +
.../examples/PrivateAccesses_ListAll.json | 60 +
...cesses_ListPrivateEndpointConnections.json | 34 +
.../examples/PrivateAccesses_Update.json | 44 +
.../examples/TargetTypes_Get.json | 29 +
.../examples/TargetTypes_List.json | 34 +
.../examples/Targets_CreateOrUpdate.json | 44 +
.../examples/Targets_Delete.json | 17 +
.../examples/Targets_Get.json | 37 +
.../examples/Targets_List.json | 42 +
.../preview/2024-11-01-preview/openapi.json | 3728 +++++++++++++++++
.../chaos/resource-manager/readme.md | 61 +-
97 files changed, 9153 insertions(+), 14 deletions(-)
create mode 100644 specification/chaos/Chaos.Management/capability.models.tsp
create mode 100644 specification/chaos/Chaos.Management/capability.tsp
create mode 100644 specification/chaos/Chaos.Management/capabilityType.models.tsp
create mode 100644 specification/chaos/Chaos.Management/capabilityType.tsp
create mode 100644 specification/chaos/Chaos.Management/client.tsp
create mode 100644 specification/chaos/Chaos.Management/common.models.tsp
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_CreateOrUpdate.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Delete.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Get.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_List.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_Get.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_List.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Cancel.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_CreateOrUpdate.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Delete.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ExecutionDetails.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Get.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_GetExecution.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_List.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAll.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAllExecutions.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Start.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Update.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/OperationStatuses_Get.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Operations_List.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Delete.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_DeleteAPrivateEndpointConnection.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetAPrivateEndpointConnection.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetPrivateLinkResources.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_List.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListAll.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListPrivateEndpointConnections.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Update.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_Get.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_List.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_CreateOrUpdate.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Delete.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Get.json
create mode 100644 specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_List.json
create mode 100644 specification/chaos/Chaos.Management/experiment.models.tsp
create mode 100644 specification/chaos/Chaos.Management/experiment.tsp
create mode 100644 specification/chaos/Chaos.Management/experimentExecution.models.tsp
create mode 100644 specification/chaos/Chaos.Management/experimentExecution.tsp
create mode 100644 specification/chaos/Chaos.Management/main.tsp
create mode 100644 specification/chaos/Chaos.Management/operationStatus.tsp
create mode 100644 specification/chaos/Chaos.Management/privateAccess.models.tsp
create mode 100644 specification/chaos/Chaos.Management/privateAccess.tsp
create mode 100644 specification/chaos/Chaos.Management/privateEndpointConnection.models.tsp
create mode 100644 specification/chaos/Chaos.Management/privateEndpointConnection.tsp
create mode 100644 specification/chaos/Chaos.Management/target.models.tsp
create mode 100644 specification/chaos/Chaos.Management/target.tsp
create mode 100644 specification/chaos/Chaos.Management/targetType.models.tsp
create mode 100644 specification/chaos/Chaos.Management/targetType.tsp
create mode 100644 specification/chaos/Chaos.Management/tspconfig.yaml
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_CreateOrUpdate.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Delete.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Get.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_Get.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Cancel.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_CreateOrUpdate.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Delete.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ExecutionDetails.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Get.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_GetExecution.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAll.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAllExecutions.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Start.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Update.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/OperationStatuses_Get.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Operations_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Delete.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_DeleteAPrivateEndpointConnection.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetAPrivateEndpointConnection.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetPrivateLinkResources.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListAll.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListPrivateEndpointConnections.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Update.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_Get.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_CreateOrUpdate.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Delete.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Get.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_List.json
create mode 100644 specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/openapi.json
diff --git a/specification/chaos/Chaos.Management/capability.models.tsp b/specification/chaos/Chaos.Management/capability.models.tsp
new file mode 100644
index 000000000000..7357cb6642b9
--- /dev/null
+++ b/specification/chaos/Chaos.Management/capability.models.tsp
@@ -0,0 +1,77 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "./common.models.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+/**
+ * Model that represents a Capability resource.
+ */
+@parentResource(Target)
+model Capability is Azure.ResourceManager.ProxyResource {
+ ...ResourceNameParameter<
+ Resource = Capability,
+ KeyName = "capabilityName",
+ SegmentName = "capabilities",
+ NamePattern = "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$"
+ >;
+}
+
+alias CapabilityParentResourceParameters = BaseParameters &
+ ParentResourceParameters;
+
+/**
+ * Model that represents the Capability properties model.
+ */
+model CapabilityProperties {
+ /**
+ * String of the Publisher that this Capability extends.
+ */
+ @visibility("read")
+ publisher?: string;
+
+ /**
+ * String of the Target Type that this Capability extends.
+ */
+ @visibility("read")
+ targetType?: string;
+
+ /**
+ * Localized string of the description.
+ */
+ @visibility("read")
+ description?: string;
+
+ /**
+ * URL to retrieve JSON schema of the Capability parameters.
+ */
+ @visibility("read")
+ @maxLength(2048)
+ parametersSchema?: string;
+
+ /**
+ * String of the URN for this Capability Type.
+ */
+ @visibility("read")
+ @maxLength(2048)
+ urn?: string;
+
+ /**
+ * Resource provisioning state. Not currently in use because resource is created synchronously.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+}
+
+/**
+ * Model that represents a list of Capability resources and a link for pagination.
+ */
+model CapabilityListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/capability.tsp b/specification/chaos/Chaos.Management/capability.tsp
new file mode 100644
index 000000000000..0de251d4d6b4
--- /dev/null
+++ b/specification/chaos/Chaos.Management/capability.tsp
@@ -0,0 +1,61 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./capability.models.tsp";
+import "./target.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface Capabilities {
+ /**
+ * Get a Capability resource that extends a Target resource.
+ */
+ get is ArmResourceRead;
+
+ /**
+ * Create or update a Capability resource that extends a Target resource.
+ */
+ createOrUpdate is ArmResourceCreateOrReplaceSync<
+ Capability,
+ CapabilityParentResourceParameters
+ >;
+
+ /**
+ * Delete a Capability that extends a Target resource.
+ */
+ delete is ArmResourceDeleteSync<
+ Capability,
+ CapabilityParentResourceParameters
+ >;
+
+ /**
+ * Get a list of Capability resources that extend a Target resource.
+ */
+ list is ArmResourceListByParent<
+ Capability,
+ {
+ ...CapabilityParentResourceParameters;
+
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = CapabilityListResult
+ >;
+}
+
+@@doc(Capability.name, "String that represents a Capability resource name.");
+@@doc(Capability.properties, "The properties of a capability resource.");
+@@doc(Capabilities.createOrUpdate::parameters.resource,
+ "Capability resource to be created or updated."
+);
diff --git a/specification/chaos/Chaos.Management/capabilityType.models.tsp b/specification/chaos/Chaos.Management/capabilityType.models.tsp
new file mode 100644
index 000000000000..2557a04c2dc9
--- /dev/null
+++ b/specification/chaos/Chaos.Management/capabilityType.models.tsp
@@ -0,0 +1,110 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+/**
+ * Model that represents a Capability Type resource.
+ */
+@parentResource(TargetType)
+model CapabilityType
+ is Azure.ResourceManager.ProxyResource {
+ ...ResourceNameParameter<
+ Resource = CapabilityType,
+ KeyName = "capabilityTypeName",
+ SegmentName = "capabilityTypes",
+ NamePattern = "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$"
+ >;
+}
+
+/**
+ * Model that represents the Capability Type properties model.
+ */
+#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "Read-only metadata resource."
+model CapabilityTypeProperties {
+ /**
+ * String of the Publisher that this Capability Type extends.
+ */
+ @visibility("read")
+ publisher?: string;
+
+ /**
+ * String of the Target Type that this Capability Type extends.
+ */
+ @visibility("read")
+ targetType?: string;
+
+ /**
+ * Localized string of the display name.
+ */
+ @visibility("read")
+ displayName?: string;
+
+ /**
+ * Localized string of the description.
+ */
+ @visibility("read")
+ description?: string;
+
+ /**
+ * URL to retrieve JSON schema of the Capability Type parameters.
+ */
+ @visibility("read")
+ @maxLength(2048)
+ parametersSchema?: string;
+
+ /**
+ * String of the URN for this Capability Type.
+ */
+ @visibility("read")
+ @maxLength(2048)
+ urn?: string;
+
+ /**
+ * String of the kind of this Capability Type.
+ */
+ @visibility("read")
+ kind?: string;
+
+ /**
+ * Control plane actions necessary to execute capability type.
+ */
+ @visibility("read")
+ azureRbacActions?: string[];
+
+ /**
+ * Data plane actions necessary to execute capability type.
+ */
+ @visibility("read")
+ azureRbacDataActions?: string[];
+
+ /**
+ * Runtime properties of this Capability Type.
+ */
+ @visibility("read")
+ runtimeProperties?: CapabilityTypePropertiesRuntimeProperties;
+}
+
+/**
+ * Runtime properties of this Capability Type.
+ */
+model CapabilityTypePropertiesRuntimeProperties {
+ /**
+ * String of the kind of the resource's action type (continuous or discrete).
+ */
+ @visibility("read")
+ kind?: string;
+}
+
+/**
+ * Model that represents a list of Capability Type resources and a link for pagination.
+ */
+model CapabilityTypeListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/capabilityType.tsp b/specification/chaos/Chaos.Management/capabilityType.tsp
new file mode 100644
index 000000000000..1db39b94ba78
--- /dev/null
+++ b/specification/chaos/Chaos.Management/capabilityType.tsp
@@ -0,0 +1,42 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./capabilityType.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface CapabilityTypes {
+ /**
+ * Get a Capability Type resource for given Target Type and location.
+ */
+ get is ArmResourceRead;
+
+ /**
+ * Get a list of Capability Type resources for given Target Type and location.
+ */
+ list is ArmResourceListByParent<
+ CapabilityType,
+ Parameters = {
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = CapabilityTypeListResult
+ >;
+}
+
+@@doc(CapabilityType.name,
+ "String that represents a Capability Type resource name."
+);
+@@doc(CapabilityType.properties,
+ "The properties of the capability type resource."
+);
diff --git a/specification/chaos/Chaos.Management/client.tsp b/specification/chaos/Chaos.Management/client.tsp
new file mode 100644
index 000000000000..43540b6ccc95
--- /dev/null
+++ b/specification/chaos/Chaos.Management/client.tsp
@@ -0,0 +1,55 @@
+import "./main.tsp";
+import "@azure-tools/typespec-client-generator-core";
+
+using Azure.ClientGenerator.Core;
+using Microsoft.Chaos;
+
+// csharp
+@@clientName(ExperimentExecution, "ChaosExperimentExecution", "csharp");
+@@clientName(Experiment, "ChaosExperiment", "csharp");
+@@clientName(ExperimentExecution, "ChaosExperimentExecution", "csharp");
+@@clientName(Target, "ChaosTarget", "csharp");
+@@clientName(TargetType, "ChaosTargetMetadata", "csharp");
+@@clientName(Capability, "ChaosCapability", "csharp");
+@@clientName(CapabilityType, "ChaosCapabilityMetadata", "csharp");
+@@clientName(TargetReference, "ChaosTargetReference", "csharp");
+@@clientName(TargetReferenceType, "ChaosTargetReferenceType", "csharp");
+@@clientName(ProvisioningState, "ChaosProvisioningState", "csharp");
+@@clientName(KeyValuePair, "ChaosKeyValuePair", "csharp");
+@@clientName(StepStatus, "ChaosExperimentRunStepStatus", "csharp");
+@@clientName(BranchStatus, "ChaosExperimentRunBranchStatus", "csharp");
+@@clientName(ActionStatus, "ChaosExperimentRunActionStatus", "csharp");
+@@clientName(ContinuousAction, "ChaosContinuousAction", "csharp");
+@@clientName(DiscreteAction, "ChaosDiscreteAction", "csharp");
+@@clientName(DelayAction, "ChaosDelayAction", "csharp");
+@@clientName(CapabilityTypePropertiesRuntimeProperties,
+ "ChaosCapabilityMetadataRuntimeProperties",
+ "csharp"
+);
+@@clientName(TargetReference.type, "ReferenceType", "csharp");
+@@clientName(ExperimentExecutions.getExecutionDetails,
+ "ExecutionDetails",
+ "csharp"
+);
+
+// typescript
+@@clientName(Microsoft.Chaos, "ChaosManagementClient", "javascript");
+
+// python
+@@clientName(Microsoft.Chaos, "ChaosManagementClient", "python");
+
+// java
+@@clientName(Microsoft.Chaos, "ChaosManagementClient", "java");
+
+#suppress "deprecated" "property flatten for SDK backward compatibility"
+@@flattenProperty(Experiment.properties);
+#suppress "deprecated" "property flatten for SDK backward compatibility"
+@@flattenProperty(ExperimentExecution.properties);
+#suppress "deprecated" "property flatten for SDK backward compatibility"
+@@flattenProperty(TargetType.properties);
+#suppress "deprecated" "property flatten for SDK backward compatibility"
+@@flattenProperty(Capability.properties);
+#suppress "deprecated" "property flatten for SDK backward compatibility"
+@@flattenProperty(CapabilityType.properties);
+#suppress "deprecated" "property flatten for SDK backward compatibility"
+@@flattenProperty(ExperimentExecutionDetails.properties);
diff --git a/specification/chaos/Chaos.Management/common.models.tsp b/specification/chaos/Chaos.Management/common.models.tsp
new file mode 100644
index 000000000000..169bee71fe22
--- /dev/null
+++ b/specification/chaos/Chaos.Management/common.models.tsp
@@ -0,0 +1,100 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+interface Operations extends Azure.ResourceManager.Operations {}
+#suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to avoid breaking SDK change"
+@@operationId(Operations.list, "Operations_ListAll");
+
+alias ParentResourceParameters = {
+ /**
+ * The parent resource provider namespace.
+ */
+ @path
+ @segment("providers")
+ @maxLength(63)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$")
+ parentProviderNamespace: string;
+
+ /**
+ * The parent resource type.
+ */
+ @path
+ @maxLength(63)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$")
+ parentResourceType: string;
+
+ /**
+ * The parent resource name.
+ */
+ @path
+ @maxLength(63)
+ @pattern("^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$")
+ parentResourceName: string;
+};
+
+/**
+ * Current provisioning state for a given Azure Chaos resource.
+ */
+@Azure.Core.lroStatus
+union ProvisioningState {
+ string,
+ ResourceProvisioningState,
+
+ /**
+ * Initial creation in progress.
+ */
+ Creating: "Creating",
+
+ /**
+ * Update in progress.
+ */
+ Updating: "Updating",
+
+ /**
+ * Deletion in progress.
+ */
+ Deleting: "Deleting",
+}
+
+/**
+ * The status of operation.
+ */
+#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility"
+model OperationStatus extends ErrorResponse {
+ /**
+ * The operation Id.
+ */
+ id?: string;
+
+ /**
+ * The operation name.
+ */
+ name?: string;
+
+ /**
+ * The start time of the operation.
+ */
+ @visibility("read")
+ startTime?: utcDateTime;
+
+ /**
+ * The end time of the operation.
+ */
+ @visibility("read")
+ endTime?: utcDateTime;
+
+ /**
+ * The status of the operation.
+ */
+ status?: string;
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_CreateOrUpdate.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_CreateOrUpdate.json
new file mode 100644
index 000000000000..7c795f1ef542
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_CreateOrUpdate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "properties": {}
+ },
+ "capabilityName": "Shutdown-1.0",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ }
+ },
+ "operationId": "Capabilities_CreateOrUpdate",
+ "title": "Create/update a Capability that extends a virtual machine Target resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Delete.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Delete.json
new file mode 100644
index 000000000000..3a2a71363a4b
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "capabilityName": "Shutdown-1.0",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ },
+ "operationId": "Capabilities_Delete",
+ "title": "Delete a Capability that extends a virtual machine Target resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Get.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Get.json
new file mode 100644
index 000000000000..c24d50303058
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_Get.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "capabilityName": "Shutdown-1.0",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ }
+ },
+ "operationId": "Capabilities_Get",
+ "title": "Get a Capability that extends a virtual machine Target resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_List.json
new file mode 100644
index 000000000000..e64aa32c3650
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Capabilities_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "Capabilities_List",
+ "title": "List all Capabilities that extend a virtual machine Target resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_Get.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_Get.json
new file mode 100644
index 000000000000..07015ac28ed8
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "capabilityTypeName": "Shutdown-1.0",
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetTypeName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "displayName": "Shutdown VM",
+ "kind": "fault",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "runtimeProperties": {
+ "kind": "continuous"
+ },
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ }
+ }
+ }
+ },
+ "operationId": "CapabilityTypes_Get",
+ "title": "Get a Capability Type for a virtual machine Target resource on westus2 location."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_List.json
new file mode 100644
index 000000000000..0b7c67fd77c9
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/CapabilityTypes_List.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetTypeName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "displayName": "Shutdown VM",
+ "kind": "fault",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "runtimeProperties": {
+ "kind": "continuous"
+ },
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "CapabilityTypes_List",
+ "title": "List all Capability Types for a virtual machine Target resource on westus2 location."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Cancel.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Cancel.json
new file mode 100644
index 000000000000..9f1756e0fbcf
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Cancel.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_Cancel",
+ "title": "Cancel a running Experiment."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_CreateOrUpdate.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_CreateOrUpdate.json
new file mode 100644
index 000000000000..c5a02b85ba61
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_CreateOrUpdate.json
@@ -0,0 +1,208 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "tags": {
+ "key7131": "ryohwcoiccwsnewjigfmijz",
+ "key2138": "fjaeecgnvqd"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "tags": {
+ "key7131": "ryohwcoiccwsnewjigfmijz",
+ "key2138": "fjaeecgnvqd"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "provisioningState": "Updating",
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/experiments/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "tags": {
+ "key7131": "ryohwcoiccwsnewjigfmijz",
+ "key2138": "fjaeecgnvqd"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "provisioningState": "Creating",
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/experiments/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_CreateOrUpdate",
+ "title": "Create/update a Experiment in a resource group."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Delete.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Delete.json
new file mode 100644
index 000000000000..4924ef8efa3c
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Delete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "204": {}
+ },
+ "operationId": "Experiments_Delete",
+ "title": "Delete a Experiment in a resource group."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ExecutionDetails.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ExecutionDetails.json
new file mode 100644
index 000000000000..a103b628f5bc
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ExecutionDetails.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "executionId": "f24500ad-744e-4a26-864b-b76199eac333",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "f24500ad-744e-4a26-864b-b76199eac333",
+ "type": "Microsoft.Chaos/experiments/executions/getExecutionDetails",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/f24500ad-744e-4a26-864b-b76199eac333/getExecutionDetails",
+ "properties": {
+ "failureReason": "Dependency failure",
+ "lastActionAt": "2020-12-14T21:52:52.2552574Z",
+ "runInformation": {
+ "steps": [
+ {
+ "branches": [
+ {
+ "actions": [
+ {
+ "actionId": "59499d33-6751-4b6e-a1f6-58f4d56a040a",
+ "actionName": "urn:provider:agent-v2:Microsoft.Azure.Chaos.Fault.CPUPressureAllProcessors",
+ "endTime": "2020-12-14T13:56:13.6270153-08:00",
+ "startTime": "2020-12-14T13:56:13.6270153-08:00",
+ "status": "failed",
+ "targets": [
+ {
+ "status": "succeeded",
+ "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1",
+ "targetCompletedTime": "2021-04-02T17:30:55+00:00",
+ "targetFailedTime": "2021-04-02T16:30:55+00:00"
+ },
+ {
+ "status": "failed",
+ "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1",
+ "targetCompletedTime": "2021-04-02T17:30:55+00:00",
+ "targetFailedTime": "2021-04-02T16:30:55+00:00"
+ }
+ ]
+ }
+ ],
+ "branchId": "FirstBranch",
+ "branchName": "FirstBranch",
+ "status": "failed"
+ }
+ ],
+ "status": "failed",
+ "stepId": "FirstStep",
+ "stepName": "FirstStep"
+ }
+ ]
+ },
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "failed",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ }
+ }
+ },
+ "operationId": "Experiments_ExecutionDetails",
+ "title": "Get experiment execution details."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Get.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Get.json
new file mode 100644
index 000000000000..7caafe637f85
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Get.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_Get",
+ "title": "Get a Experiment in a resource group."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_GetExecution.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_GetExecution.json
new file mode 100644
index 000000000000..62f3798fdb0c
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_GetExecution.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "executionId": "f24500ad-744e-4a26-864b-b76199eac333",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "f24500ad-744e-4a26-864b-b76199eac333",
+ "type": "Microsoft.Chaos/experiments/executions",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/f24500ad-744e-4a26-864b-b76199eac333",
+ "properties": {
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "failed",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_GetExecution",
+ "title": "Get the execution of a Experiment."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_List.json
new file mode 100644
index 000000000000..88029a8a641b
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_List.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_List",
+ "title": "List all Experiments in a resource group."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAll.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAll.json
new file mode 100644
index 000000000000..143a2f3a5345
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAll.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/experiments?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_ListAll",
+ "title": "List all Experiments in a subscription."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAllExecutions.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAllExecutions.json
new file mode 100644
index 000000000000..7b48b33f1608
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_ListAllExecutions.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executionDetails?continuationToken=&api-version=2025-01-01",
+ "value": [
+ {
+ "name": "f24500ad-744e-4a26-864b-b76199eac333",
+ "type": "Microsoft.Chaos/experiments/executions",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/f24500ad-744e-4a26-864b-b76199eac333",
+ "properties": {
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "failed",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ },
+ {
+ "name": "14d98367-52ef-4596-be4f-53fc81bbfc33",
+ "type": "Microsoft.Chaos/experiments/executions",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/14d98367-52ef-4596-be4f-53fc81bbfc33",
+ "properties": {
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "success",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_ListAllExecutions",
+ "title": "List all executions of an Experiment."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Start.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Start.json
new file mode 100644
index 000000000000..9a68b03582ed
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Start.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_Start",
+ "title": "Start a Experiment."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Update.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Update.json
new file mode 100644
index 000000000000..7f7464f8f76f
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Experiments_Update.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "properties": {
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.ManagedIdentity/userAssignedIdentity/exampleUMI": {}
+ }
+ },
+ "tags": {
+ "key1": "value1",
+ "key2": "value2"
+ }
+ },
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "UserAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6",
+ "userAssignedIdentities": {
+ "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.ManagedIdentity/userAssignedIdentity/exampleUMI": {}
+ }
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ },
+ "tags": {
+ "key1": "value1",
+ "key2": "value2"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_Update",
+ "title": "Update an Experiment in a resource group."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/OperationStatuses_Get.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/OperationStatuses_Get.json
new file mode 100644
index 000000000000..79a6af7eabd9
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/OperationStatuses_Get.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "subscriptionId": "e25c0d12-0335-4fec-8ef8-3b4f9a10649e",
+ "location": "westus2",
+ "operationId": "4bdadd97-207c-4de8-9bba-08339ae099c7"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/e25c0d12-0335-4fec-8ef8-3b4f9a10649e/providers/Microsoft.Chaos/locations/westus2/operationStatuses/4bdadd97-207c-4de8-9bba-08339ae099c7",
+ "name": "4bdadd97-207c-4de8-9bba-08339ae099c7",
+ "startTime": "2024-11-14T21:52:52.2552574Z",
+ "status": "Creating"
+ }
+ }
+ },
+ "operationId": "OperationStatuses_Get",
+ "title": "Gets Chaos Studio async operation status."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Operations_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Operations_List.json
new file mode 100644
index 000000000000..fd9d6a21cec4
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Operations_List.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/providers/Microsoft.Chaos/operations?continuationToken=myContinuationToken&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Microsoft.Chaos/experiments/read",
+ "display": {
+ "provider": "Microsoft Chaos",
+ "resource": "Chaos Experiment",
+ "operation": "Gets all Chaos Experiments.",
+ "description": "Gets all Chaos Experiments in a resource group."
+ },
+ "isDataAction": false,
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "Operations_ListAll",
+ "title": "Lists all Chaos Studio operations."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json
new file mode 100644
index 000000000000..aeefb41c67f6
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "location": "centraluseuap",
+ "properties": {}
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Updating"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Creating"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_CreateOrUpdate",
+ "title": "Create or Update a private access resource"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json
new file mode 100644
index 000000000000..a2160ef6d481
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "location": "centraluseuap",
+ "properties": {
+ "publicNetworkAccess": "Enabled"
+ }
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Updating",
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Creating",
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_CreateOrUpdate",
+ "title": "Create or Update a private access resource with publicNetworkAccess"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Delete.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Delete.json
new file mode 100644
index 000000000000..863b73090e9a
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Delete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "204": {}
+ },
+ "operationId": "PrivateAccesses_Delete",
+ "title": "Delete a private access resource"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_DeleteAPrivateEndpointConnection.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_DeleteAPrivateEndpointConnection.json
new file mode 100644
index 000000000000..918d0e468865
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_DeleteAPrivateEndpointConnection.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "204": {}
+ },
+ "operationId": "PrivateAccesses_DeleteAPrivateEndpointConnection",
+ "title": "Delete a private endpoint connection under a private access resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetAPrivateEndpointConnection.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetAPrivateEndpointConnection.json
new file mode 100644
index 000000000000..87323c558482
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetAPrivateEndpointConnection.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateEndpointConnection",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateEndpointConnection",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_GetAPrivateEndpointConnection",
+ "title": "Get information about a private endpoint connection under a private access resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetPrivateLinkResources.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetPrivateLinkResources.json
new file mode 100644
index 000000000000..6061df9c8fd2
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_GetPrivateLinkResources.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "agents",
+ "type": "Microsoft.Chaos/privateAccesses/privateLinkResources",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateLinkResources/agents",
+ "location": "centraluseuap",
+ "properties": {
+ "groupId": "agents",
+ "requiredMembers": [
+ "privateAccess_1"
+ ],
+ "requiredZoneNames": [
+ "privatelink.agents.core.windows.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_GetPrivateLinkResources",
+ "title": "List all possible private link resources under private access resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource.json
new file mode 100644
index 000000000000..ea241460b416
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccess": {
+ "location": "centraluseuap"
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_Get",
+ "title": "Get a private access resource"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json
new file mode 100644
index 000000000000..1ed76e7dc7df
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccess": {
+ "location": "centraluseuap"
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myprivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "privateEndpointConnections": [
+ {
+ "name": "myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ],
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_Get",
+ "title": "Get a private access resource with private endpoint"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_List.json
new file mode 100644
index 000000000000..efd80c1e9db6
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_List.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "myPrivateAccess2",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess2",
+ "location": "centraluseuap",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "privateEndpointConnections": [
+ {
+ "name": "myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ }
+ }
+ }
+ ],
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-08-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-08-01T00:00:00.0Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "PrivateAccesses_List",
+ "title": "List all private access in a resource group."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListAll.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListAll.json
new file mode 100644
index 000000000000..30ba4d1b2020
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListAll.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/privateAccesses?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "myPrivateAccess2",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess2",
+ "location": "centraluseuap",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup2/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "privateEndpointConnections": [
+ {
+ "name": "myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup2/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup2/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ }
+ }
+ }
+ ],
+ "publicNetworkAccess": "Disabled"
+ },
+ "systemData": {
+ "createdAt": "2021-08-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-08-01T00:00:00.0Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "PrivateAccesses_ListAll",
+ "title": "List all private accesses in a subscription."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListPrivateEndpointConnections.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListPrivateEndpointConnections.json
new file mode 100644
index 000000000000..67b7aa77c9a0
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_ListPrivateEndpointConnections.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myPrivateEndpointConnection",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateEndpointConnection",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_ListPrivateEndpointConnections",
+ "title": "List all private endpoint connections under a private access resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Update.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Update.json
new file mode 100644
index 000000000000..b36d4a84e3a7
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/PrivateAccesses_Update.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "properties": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ },
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ },
+ "headers": {}
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_Update",
+ "title": "Update a private access resource's tags"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_Get.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_Get.json
new file mode 100644
index 000000000000..af955b51e062
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetTypeName": "Microsoft-Agent"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/locations/targetTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-Agent",
+ "properties": {
+ "description": "A target represents Chaos Agent.",
+ "displayName": "Chaos Agent",
+ "propertiesSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine.json",
+ "resourceTypes": [
+ "Microsoft.Compute/virtualMachines",
+ "Microsoft.Compute/virtualMachineScaleSets"
+ ]
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "TargetTypes_Get",
+ "title": "Get a Target Type for westus2 location"
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_List.json
new file mode 100644
index 000000000000..492aa68949b0
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/TargetTypes_List.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/locations/targetTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-Agent",
+ "properties": {
+ "description": "A target represents Chaos Agent.",
+ "displayName": "Chaos Agent",
+ "propertiesSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine.json",
+ "resourceTypes": [
+ "Microsoft.Compute/virtualMachines",
+ "Microsoft.Compute/virtualMachineScaleSets"
+ ]
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "TargetTypes_List",
+ "title": "List all Target Types for westus2 location."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_CreateOrUpdate.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_CreateOrUpdate.json
new file mode 100644
index 000000000000..08ebc03da8ef
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_CreateOrUpdate.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "resource": {
+ "properties": {}
+ },
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Microsoft-VirtualMachine",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "headers": {}
+ },
+ "201": {
+ "body": {
+ "name": "Microsoft-VirtualMachine",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Targets_CreateOrUpdate",
+ "title": "Create/update a Target that extends a virtual machine resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Delete.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Delete.json
new file mode 100644
index 000000000000..a0b0b0e241c7
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-Agent"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ },
+ "operationId": "Targets_Delete",
+ "title": "Delete a Target that extends a virtual machine resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Get.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Get.json
new file mode 100644
index 000000000000..dd8a8c27670e
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_Get.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-Agent"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent",
+ "location": "centraluseuap",
+ "properties": {
+ "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf",
+ "identities": [
+ {
+ "type": "CertificateSubjectIssuer",
+ "subject": "CN=example.subject"
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Targets_Get",
+ "title": "Get a Target that extends a virtual machine resource."
+}
diff --git a/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_List.json b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_List.json
new file mode 100644
index 000000000000..0f2686b7b39f
--- /dev/null
+++ b/specification/chaos/Chaos.Management/examples/2024-11-01-preview/Targets_List.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent",
+ "location": "centraluseuap",
+ "properties": {
+ "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf",
+ "identities": [
+ {
+ "type": "CertificateSubjectIssuer",
+ "subject": "CN=example.subject"
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Targets_List",
+ "title": "List all Targets that extend a virtual machine resource."
+}
diff --git a/specification/chaos/Chaos.Management/experiment.models.tsp b/specification/chaos/Chaos.Management/experiment.models.tsp
new file mode 100644
index 000000000000..631c9d87bc2f
--- /dev/null
+++ b/specification/chaos/Chaos.Management/experiment.models.tsp
@@ -0,0 +1,388 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "./common.models.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+/**
+ * Model that represents a Experiment resource.
+ */
+#suppress "@azure-tools/typespec-azure-core/no-private-usage" "Required implementation to avoid breaking .NET SDK changes"
+#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Required implementation to avoid breaking .NET SDK changes"
+@Azure.ResourceManager.Private.armResourceInternal(ExperimentProperties)
+@includeInapplicableMetadataInPayload(false)
+model Experiment extends Azure.ResourceManager.Foundations.TrackedResource {
+ ...ResourceNameParameter<
+ Resource = Experiment,
+ KeyName = "experimentName",
+ SegmentName = "experiments",
+ NamePattern = "^[^<>%&:?#/\\\\]+$"
+ >;
+ ...Azure.ResourceManager.ManagedServiceIdentityProperty;
+
+ #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "Required implementation to avoid breaking .NET SDK changes"
+ @doc("The resource-specific properties for this resource.")
+ @Azure.ResourceManager.Private.conditionalClientFlatten
+ @Azure.ResourceManager.Private.armResourcePropertiesOptionality(false)
+ properties?: ExperimentProperties;
+}
+
+/**
+ * Enum of the selector type.
+ */
+union SelectorType {
+ string,
+
+ /**
+ * List selector type.
+ */
+ List: "List",
+
+ /**
+ * Query selector type.
+ */
+ Query: "Query",
+}
+
+/**
+ * Enum that discriminates between filter types. Currently only `Simple` type is supported.
+ */
+union FilterType {
+ string,
+
+ /**
+ * Simple filter type.
+ */
+ Simple: "Simple",
+}
+
+/**
+ * Enum of the Target reference type.
+ */
+union TargetReferenceType {
+ string,
+
+ /**
+ * Chaos target reference type.
+ */
+ ChaosTarget: "ChaosTarget",
+}
+
+/**
+ * Enum union of Chaos experiment action types.
+ */
+union ExperimentActionType {
+ string,
+ delay: "delay",
+ discrete: "discrete",
+ continuous: "continuous",
+}
+
+/**
+ * Model that represents a list of Experiment resources and a link for pagination.
+ */
+model ExperimentListResult is Azure.Core.Page;
+
+/**
+ * Model that represents the Experiment properties model.
+ */
+model ExperimentProperties {
+ /**
+ * Most recent provisioning state for the given experiment resource.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+
+ /**
+ * List of steps.
+ */
+ @OpenAPI.extension("x-ms-identifiers", ["name"])
+ steps: ChaosExperimentStep[];
+
+ /**
+ * List of selectors.
+ */
+ selectors: ChaosTargetSelector[];
+
+ /**
+ * Optional customer-managed Storage account where Experiment schema will be stored.
+ */
+ customerDataStorage?: CustomerDataStorageProperties;
+}
+
+/**
+ * Model that represents a step in the Experiment resource.
+ */
+model ChaosExperimentStep {
+ /**
+ * String of the step name.
+ */
+ @minLength(1)
+ name: string;
+
+ /**
+ * List of branches.
+ */
+ @OpenAPI.extension("x-ms-identifiers", ["name"])
+ branches: ChaosExperimentBranch[];
+}
+
+/**
+ * Model that represents a branch in the step. 9 total per experiment.
+ */
+model ChaosExperimentBranch {
+ /**
+ * String of the branch name.
+ */
+ @minLength(1)
+ name: string;
+
+ /**
+ * List of actions.
+ */
+ @OpenAPI.extension("x-ms-identifiers", ["name"])
+ actions: ChaosExperimentAction[];
+}
+
+/**
+ * Model that represents the base action model. 9 total per experiment.
+ */
+@discriminator("type")
+model ChaosExperimentAction {
+ /**
+ * String that represents a Capability URN.
+ */
+ @maxLength(2048)
+ name: string;
+
+ /**
+ * Chaos experiment action discriminator type
+ */
+ type: ExperimentActionType;
+}
+
+/**
+ * Model that represents a selector in the Experiment resource.
+ */
+@discriminator("type")
+model ChaosTargetSelector {
+ /**
+ * String of the selector ID.
+ */
+ @minLength(1)
+ id: string;
+
+ /**
+ * Chaos target selector discriminator type
+ */
+ type: SelectorType;
+
+ /**
+ * Model that represents available filter types that can be applied to a targets list.
+ */
+ filter?: ChaosTargetFilter;
+}
+
+/**
+ * Model that represents available filter types that can be applied to a targets list.
+ */
+@discriminator("type")
+model ChaosTargetFilter {
+ /**
+ * Chaos target filter discriminator type
+ */
+ type: FilterType;
+}
+
+/**
+ * Model that represents the Customer Managed Storage for an Experiment.
+ */
+model CustomerDataStorageProperties {
+ /**
+ * ARM Resource ID of the Storage account to use for Customer Data storage.
+ */
+ storageAccountResourceId?: Azure.Core.armResourceIdentifier<[
+ {
+ type: "Microsoft.Storage/storageAccounts";
+ }
+ ]>;
+
+ /**
+ * Name of the Azure Blob Storage container to use or create.
+ */
+ @maxLength(63)
+ @minLength(3)
+ @pattern("^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$")
+ blobContainerName?: string;
+}
+
+/**
+ * Describes an experiment update.
+ */
+model ExperimentUpdate {
+ ...Azure.ResourceManager.Foundations.TagsUpdateModel;
+ ...Azure.ResourceManager.ManagedServiceIdentityProperty;
+}
+
+/**
+ * Model that represents a continuous action.
+ */
+model ContinuousAction extends ChaosExperimentAction {
+ /**
+ * ISO8601 formatted string that represents a duration.
+ */
+ duration: duration;
+
+ /**
+ * List of key value pairs.
+ */
+ @OpenAPI.extension("x-ms-identifiers", ["key"])
+ parameters: KeyValuePair[];
+
+ /**
+ * String that represents a selector.
+ */
+ @minLength(1)
+ selectorId: string;
+
+ /**
+ * Enum that discriminates between action models.
+ */
+ type: "continuous";
+}
+
+/**
+ * A map to describe the settings of an action.
+ */
+model KeyValuePair {
+ /**
+ * The name of the setting for the action.
+ */
+ @minLength(1)
+ key: string;
+
+ /**
+ * The value of the setting for the action.
+ */
+ @minLength(1)
+ value: string;
+}
+
+/**
+ * Model that represents a delay action.
+ */
+model DelayAction extends ChaosExperimentAction {
+ /**
+ * ISO8601 formatted string that represents a duration.
+ */
+ duration: duration;
+
+ /**
+ * Enum that discriminates between action models.
+ */
+ type: "delay";
+}
+
+/**
+ * Model that represents a discrete action.
+ */
+model DiscreteAction extends ChaosExperimentAction {
+ /**
+ * List of key value pairs.
+ */
+ @OpenAPI.extension("x-ms-identifiers", ["key"])
+ parameters: KeyValuePair[];
+
+ /**
+ * String that represents a selector.
+ */
+ @minLength(1)
+ selectorId: string;
+
+ /**
+ * Enum that discriminates between action models.
+ */
+ type: "discrete";
+}
+
+/**
+ * Model that represents a list selector.
+ */
+model ChaosTargetListSelector extends ChaosTargetSelector {
+ /**
+ * List of Target references.
+ */
+ targets: TargetReference[];
+
+ /**
+ * Enum of the selector type.
+ */
+ type: "List";
+}
+
+/**
+ * Model that represents a reference to a Target in the selector.
+ */
+model TargetReference {
+ /**
+ * Enum of the Target reference type.
+ */
+ type: TargetReferenceType;
+
+ /**
+ * String of the resource ID of a Target resource.
+ */
+ id: Azure.Core.armResourceIdentifier;
+}
+
+/**
+ * Model that represents a query selector.
+ */
+model ChaosTargetQuerySelector extends ChaosTargetSelector {
+ /**
+ * Azure Resource Graph (ARG) Query Language query for target resources.
+ */
+ queryString: string;
+
+ /**
+ * Subscription id list to scope resource query.
+ */
+ subscriptionIds: string[];
+
+ /**
+ * Enum of the selector type.
+ */
+ type: "Query";
+}
+
+/**
+ * Model that represents a simple target filter.
+ */
+model ChaosTargetSimpleFilter extends ChaosTargetFilter {
+ /**
+ * Model that represents the Simple filter parameters.
+ */
+ parameters?: ChaosTargetSimpleFilterParameters;
+
+ /**
+ * Enum that discriminates between filter types. Currently only `Simple` type is supported.
+ */
+ type: "Simple";
+}
+
+/**
+ * Model that represents the Simple filter parameters.
+ */
+model ChaosTargetSimpleFilterParameters {
+ /**
+ * List of Azure availability zones to filter targets by.
+ */
+ zones?: string[];
+}
diff --git a/specification/chaos/Chaos.Management/experiment.tsp b/specification/chaos/Chaos.Management/experiment.tsp
new file mode 100644
index 000000000000..97144fd131b0
--- /dev/null
+++ b/specification/chaos/Chaos.Management/experiment.tsp
@@ -0,0 +1,98 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./experiment.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface Experiments {
+ /**
+ * Get a Experiment resource.
+ */
+ get is ArmResourceRead;
+
+ /**
+ * Create or update a Experiment resource.
+ */
+ createOrUpdate is ArmResourceCreateOrReplaceAsync;
+
+ /**
+ * The operation to update an experiment.
+ */
+ @parameterVisibility
+ update is ArmCustomPatchAsync;
+
+ /**
+ * Delete a Experiment resource.
+ */
+ delete is ArmResourceDeleteWithoutOkAsync;
+
+ /**
+ * Get a list of Experiment resources in a resource group.
+ */
+ list is ArmResourceListByParent<
+ Experiment,
+ Parameters = {
+ /**
+ * Optional value that indicates whether to filter results based on if the Experiment is currently running. If null, then the results will not be filtered.
+ */
+ @query("running")
+ running?: boolean;
+
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = ExperimentListResult
+ >;
+
+ /**
+ * Get a list of Experiment resources in a subscription.
+ */
+ listAll is ArmListBySubscription<
+ Experiment,
+ Parameters = {
+ /**
+ * Optional value that indicates whether to filter results based on if the Experiment is currently running. If null, then the results will not be filtered.
+ */
+ @query("running")
+ running?: boolean;
+
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = ExperimentListResult
+ >;
+
+ /**
+ * Cancel a running Experiment resource.
+ */
+ cancel is ArmResourceActionNoResponseContentAsync;
+
+ /**
+ * Start a Experiment resource.
+ */
+ start is ArmResourceActionNoResponseContentAsync;
+}
+
+@@minLength(Experiment.name, 1);
+@@doc(Experiment.name, "String that represents a Experiment resource name.");
+@@doc(Experiment.properties, "The properties of the experiment resource.");
+@@doc(Experiments.createOrUpdate::parameters.resource,
+ "Experiment resource to be created or updated."
+);
+@@doc(Experiments.update::parameters.properties,
+ "Parameters supplied to the Update experiment operation."
+);
diff --git a/specification/chaos/Chaos.Management/experimentExecution.models.tsp b/specification/chaos/Chaos.Management/experimentExecution.models.tsp
new file mode 100644
index 000000000000..3c05a918440e
--- /dev/null
+++ b/specification/chaos/Chaos.Management/experimentExecution.models.tsp
@@ -0,0 +1,304 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "./experiment.models.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+/**
+ * Model that represents the execution of a Experiment.
+ */
+@parentResource(Experiment)
+model ExperimentExecution
+ is Azure.ResourceManager.ProxyResource {
+ ...ResourceNameParameter<
+ Resource = ExperimentExecution,
+ KeyName = "executionId",
+ SegmentName = "executions",
+ NamePattern = "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$"
+ >;
+}
+
+/**
+ * Model that represents the execution properties of an Experiment.
+ */
+model ExperimentExecutionProperties {
+ /**
+ * The status of the execution.
+ */
+ @visibility("read")
+ status?: string;
+
+ /**
+ * String that represents the start date time.
+ */
+ @visibility("read")
+ startedAt?: utcDateTime;
+
+ /**
+ * String that represents the stop date time.
+ */
+ @visibility("read")
+ stoppedAt?: utcDateTime;
+
+ /**
+ * Resource provisioning state. Not currently in use for executions.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+}
+
+/**
+ * Model that represents the execution details of an Experiment.
+ */
+model ExperimentExecutionDetails {
+ /**
+ * String of the resource type.
+ */
+ @visibility("read")
+ type?: string;
+
+ /**
+ * String of the fully qualified resource ID.
+ */
+ @visibility("read")
+ id?: string;
+
+ /**
+ * String of the resource name.
+ */
+ @visibility("read")
+ name?: string;
+
+ /**
+ * The properties of the experiment execution details.
+ */
+ @visibility("read")
+ properties?: ExperimentExecutionDetailsProperties;
+}
+
+/**
+ * Model that represents the extended properties of an experiment execution.
+ */
+#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility"
+model ExperimentExecutionDetailsProperties {
+ /**
+ * The status of the execution.
+ */
+ @visibility("read")
+ status?: string;
+
+ /**
+ * String that represents the start date time.
+ */
+ @visibility("read")
+ startedAt?: utcDateTime;
+
+ /**
+ * String that represents the stop date time.
+ */
+ @visibility("read")
+ stoppedAt?: utcDateTime;
+
+ /**
+ * Resource provisioning state. Not currently in use for executions.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+
+ /**
+ * The reason why the execution failed.
+ */
+ @visibility("read")
+ failureReason?: string;
+
+ /**
+ * String that represents the last action date time.
+ */
+ @visibility("read")
+ lastActionAt?: utcDateTime;
+
+ /**
+ * The information of the experiment run.
+ */
+ @visibility("read")
+ runInformation?: ExperimentExecutionDetailsPropertiesRunInformation;
+}
+
+/**
+ * The information of the experiment run.
+ */
+model ExperimentExecutionDetailsPropertiesRunInformation {
+ /**
+ * The steps of the experiment run.
+ */
+ @visibility("read")
+ @OpenAPI.extension("x-ms-identifiers", ["stepName"])
+ steps?: StepStatus[];
+}
+
+/**
+ * Model that represents the a list of branches and branch statuses.
+ */
+model StepStatus {
+ /**
+ * The name of the step.
+ */
+ @visibility("read")
+ stepName?: string;
+
+ /**
+ * The id of the step.
+ */
+ @visibility("read")
+ stepId?: string;
+
+ /**
+ * The value of the status of the step.
+ */
+ @visibility("read")
+ status?: string;
+
+ /**
+ * The array of branches.
+ */
+ @visibility("read")
+ @OpenAPI.extension("x-ms-identifiers", ["branchName"])
+ branches?: BranchStatus[];
+}
+
+/**
+ * Model that represents the a list of actions and action statuses.
+ */
+model BranchStatus {
+ /**
+ * The name of the branch status.
+ */
+ @visibility("read")
+ branchName?: string;
+
+ /**
+ * The id of the branch status.
+ */
+ @visibility("read")
+ branchId?: string;
+
+ /**
+ * The status of the branch.
+ */
+ @visibility("read")
+ status?: string;
+
+ /**
+ * The array of actions.
+ */
+ @visibility("read")
+ @OpenAPI.extension("x-ms-identifiers", ["actionId"])
+ actions?: ActionStatus[];
+}
+
+/**
+ * Model that represents the an action and its status.
+ */
+model ActionStatus {
+ /**
+ * The name of the action status.
+ */
+ @visibility("read")
+ actionName?: string;
+
+ /**
+ * The id of the action status.
+ */
+ @visibility("read")
+ actionId?: string;
+
+ /**
+ * The status of the action.
+ */
+ @visibility("read")
+ status?: string;
+
+ /**
+ * String that represents the start time of the action.
+ */
+ @visibility("read")
+ startTime?: utcDateTime;
+
+ /**
+ * String that represents the end time of the action.
+ */
+ @visibility("read")
+ endTime?: utcDateTime;
+
+ /**
+ * The array of targets.
+ */
+ @visibility("read")
+ @OpenAPI.extension("x-ms-identifiers", [])
+ targets?: ExperimentExecutionActionTargetDetailsProperties[];
+}
+
+/**
+ * Model that represents the Experiment action target details properties model.
+ */
+model ExperimentExecutionActionTargetDetailsProperties {
+ /**
+ * The status of the execution.
+ */
+ @visibility("read")
+ status?: string;
+
+ /**
+ * The target for the action.
+ */
+ @visibility("read")
+ target?: string;
+
+ /**
+ * String that represents the failed date time.
+ */
+ @visibility("read")
+ targetFailedTime?: utcDateTime;
+
+ /**
+ * String that represents the completed date time.
+ */
+ @visibility("read")
+ targetCompletedTime?: utcDateTime;
+
+ /**
+ * The error of the action.
+ */
+ @visibility("read")
+ error?: ExperimentExecutionActionTargetDetailsError;
+}
+
+/**
+ * Model that represents the Experiment action target details error model.
+ */
+model ExperimentExecutionActionTargetDetailsError {
+ /**
+ * The error code.
+ */
+ @visibility("read")
+ code?: string;
+
+ /**
+ * The error message
+ */
+ @visibility("read")
+ message?: string;
+}
+
+/**
+ * Model that represents a list of Experiment executions and a link for pagination.
+ */
+model ExperimentExecutionListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/experimentExecution.tsp b/specification/chaos/Chaos.Management/experimentExecution.tsp
new file mode 100644
index 000000000000..48ca911c6641
--- /dev/null
+++ b/specification/chaos/Chaos.Management/experimentExecution.tsp
@@ -0,0 +1,51 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./experiment.tsp";
+import "./experimentExecution.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface ExperimentExecutions {
+ /**
+ * Get an execution of an Experiment resource.
+ */
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("Experiments_GetExecution")
+ getExecution is ArmResourceRead;
+
+ /**
+ * Get a list of executions of an Experiment resource.
+ */
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("Experiments_ListAllExecutions")
+ listAllExecutions is ArmResourceListByParent<
+ ExperimentExecution,
+ Response = ExperimentExecutionListResult
+ >;
+
+ /**
+ * Execution details of an experiment resource.
+ */
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("Experiments_ExecutionDetails")
+ getExecutionDetails is ArmResourceActionSync<
+ ExperimentExecution,
+ void,
+ ExperimentExecutionDetails
+ >;
+}
+
+@@doc(ExperimentExecution.name,
+ "GUID that represents a Experiment execution detail."
+);
+@@doc(ExperimentExecution.properties,
+ "The properties of experiment execution status."
+);
diff --git a/specification/chaos/Chaos.Management/main.tsp b/specification/chaos/Chaos.Management/main.tsp
new file mode 100644
index 000000000000..efc4110303f3
--- /dev/null
+++ b/specification/chaos/Chaos.Management/main.tsp
@@ -0,0 +1,49 @@
+/**
+ * PLEASE DO NOT REMOVE - USED FOR CONVERTER METRICS
+ * Generated by package: @autorest/openapi-to-typespec
+ * Version: 0.10.3
+ * Date: 2024-11-25T19:03:17.069Z
+ */
+import "@typespec/rest";
+import "@typespec/versioning";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "./capability.tsp";
+import "./capabilityType.tsp";
+import "./experiment.tsp";
+import "./experimentExecution.tsp";
+import "./privateAccess.tsp";
+import "./privateEndpointConnection.tsp";
+import "./target.tsp";
+import "./targetType.tsp";
+import "./operationStatus.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager.Foundations;
+using Azure.Core;
+using Azure.ResourceManager;
+using TypeSpec.Versioning;
+/**
+ * Chaos Management Client
+ */
+@armProviderNamespace
+@service({
+ title: "ChaosManagementClient",
+ description: "Chaos Management Client",
+})
+@versioned(Versions)
+@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5)
+namespace Microsoft.Chaos;
+
+/**
+ * The available API versions.
+ */
+enum Versions {
+ /**
+ * The 2024-11-01-preview API version.
+ */
+ @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1)
+ @useDependency(Azure.Core.Versions.v1_0_Preview_1)
+ v2024_11_01_preview: "2024-11-01-preview",
+}
diff --git a/specification/chaos/Chaos.Management/operationStatus.tsp b/specification/chaos/Chaos.Management/operationStatus.tsp
new file mode 100644
index 000000000000..5354d99a3737
--- /dev/null
+++ b/specification/chaos/Chaos.Management/operationStatus.tsp
@@ -0,0 +1,39 @@
+import "@azure-tools/typespec-azure-core";
+import "@typespec/rest";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "./common.models.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+/**
+ * Chaos Studio async operation status resource operations.
+ */
+@armResourceOperations
+interface OperationStatuses {
+ /**
+ * Returns the current status of an async operation.
+ */
+ @autoRoute
+ get(
+ ...ApiVersionParameter,
+ ...SubscriptionIdParameter,
+
+ /**
+ * The provider namespace (this parameter will not show up in operations).
+ */
+ @path
+ @segment("providers")
+ provider: "Microsoft.Chaos",
+
+ ...LocationParameter,
+ ...Foundations.OperationIdParameter,
+ ): ArmResponse | ErrorResponse;
+}
+
+@@segment(OperationStatuses.get::parameters.operationId, "operationStatuses");
diff --git a/specification/chaos/Chaos.Management/privateAccess.models.tsp b/specification/chaos/Chaos.Management/privateAccess.models.tsp
new file mode 100644
index 000000000000..369ff94232a0
--- /dev/null
+++ b/specification/chaos/Chaos.Management/privateAccess.models.tsp
@@ -0,0 +1,79 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+/**
+ * PrivateAccesses tracked resource.
+ */
+model PrivateAccess
+ is Azure.ResourceManager.TrackedResource {
+ ...ResourceNameParameter<
+ Resource = PrivateAccess,
+ KeyName = "privateAccessName",
+ SegmentName = "privateAccesses",
+ NamePattern = "^[^<>%&:?#/\\\\]+$"
+ >;
+}
+
+/**
+ * Describes a private access update.
+ */
+model PrivateAccessPatch {
+ /**
+ * The tags of the private access resource.
+ */
+ ...Azure.ResourceManager.Foundations.TagsUpdateModel;
+}
+
+/**
+ * The properties of a private access resource
+ */
+model PrivateAccessProperties {
+ /**
+ * Most recent provisioning state for the given privateAccess resource.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+
+ /**
+ * A readonly collection of private endpoint connection. Currently only one endpoint connection is supported.
+ */
+ @visibility("read")
+ privateEndpointConnections?: PrivateEndpointConnection[];
+
+ /**
+ * Public Network Access Control for PrivateAccess resource.
+ */
+ publicNetworkAccess?: PublicNetworkAccessOption;
+}
+
+/**
+ * Public Network Access Control for PrivateAccess resource.
+ */
+union PublicNetworkAccessOption {
+ string,
+
+ /**
+ * Enabled access.
+ */
+ Enabled: "Enabled",
+
+ /**
+ * Disabled access.
+ */
+ Disabled: "Disabled",
+}
+
+/**
+ * Model that represents a list of private access resources and a link for pagination.
+ */
+model PrivateAccessListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/privateAccess.tsp b/specification/chaos/Chaos.Management/privateAccess.tsp
new file mode 100644
index 000000000000..a640514ac77e
--- /dev/null
+++ b/specification/chaos/Chaos.Management/privateAccess.tsp
@@ -0,0 +1,92 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./privateAccess.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface PrivateAccesses {
+ /**
+ * Get a private access resource
+ */
+ get is ArmResourceRead;
+
+ /**
+ * Create or update a private access
+ */
+ createOrUpdate is ArmResourceCreateOrReplaceAsync;
+
+ /**
+ * Patch a private access tags
+ */
+ @parameterVisibility
+ update is ArmCustomPatchAsync;
+
+ /**
+ * Delete a private access
+ */
+ delete is ArmResourceDeleteWithoutOkAsync;
+
+ /**
+ * Get a list of private access resources in a resource group.
+ */
+ list is ArmResourceListByParent<
+ PrivateAccess,
+ Parameters = {
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = PrivateAccessListResult
+ >;
+
+ /**
+ * Get a list of private access resources in a subscription.
+ */
+ listAll is ArmListBySubscription<
+ PrivateAccess,
+ Parameters = {
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = PrivateAccessListResult
+ >;
+
+ /**
+ * Gets the private link resources possible under private access resource
+ */
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("PrivateAccesses_GetPrivateLinkResources")
+ @get
+ privateLinkResources is ArmResourceActionSync<
+ PrivateAccess,
+ void,
+ PrivateLinkResourceListResult
+ >;
+}
+
+@@minLength(PrivateAccess.name, 1);
+@@doc(PrivateAccess.name,
+ "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters."
+);
+@@doc(PrivateAccess.properties,
+ "The resource-specific properties for this resource."
+);
+@@doc(PrivateAccesses.createOrUpdate::parameters.resource,
+ "private access resource to be created or updated."
+);
+@@doc(PrivateAccesses.update::parameters.properties,
+ "private access resource's tags to be updated."
+);
diff --git a/specification/chaos/Chaos.Management/privateEndpointConnection.models.tsp b/specification/chaos/Chaos.Management/privateEndpointConnection.models.tsp
new file mode 100644
index 000000000000..304a66dd3a92
--- /dev/null
+++ b/specification/chaos/Chaos.Management/privateEndpointConnection.models.tsp
@@ -0,0 +1,162 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "./privateAccess.models.tsp";
+import "./common.models.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+/**
+ * The private endpoint connection resource.
+ */
+@parentResource(PrivateAccess)
+model PrivateEndpointConnection
+ is Azure.ResourceManager.ProxyResource {
+ ...ResourceNameParameter<
+ Resource = PrivateEndpointConnection,
+ KeyName = "privateEndpointConnectionName",
+ SegmentName = "privateEndpointConnections",
+ NamePattern = "^[^<>%&:?#/\\\\]+$"
+ >;
+}
+
+/**
+ * Properties of the private endpoint connection.
+ */
+model PrivateEndpointConnectionProperties {
+ /**
+ * The group ids for the private endpoint resource.
+ */
+ @visibility("read")
+ groupIds?: string[];
+
+ /**
+ * The private endpoint resource.
+ */
+ privateEndpoint?: PrivateEndpoint;
+
+ /**
+ * A collection of information about the state of the connection between service consumer and provider.
+ */
+ privateLinkServiceConnectionState: PrivateLinkServiceConnectionState;
+
+ /**
+ * The provisioning state of the private endpoint connection resource.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+}
+
+/**
+ * The private endpoint resource.
+ */
+model PrivateEndpoint {
+ /**
+ * The ARM identifier for private endpoint.
+ */
+ @visibility("read")
+ id?: string;
+}
+
+/**
+ * A collection of information about the state of the connection between service consumer and provider.
+ */
+model PrivateLinkServiceConnectionState {
+ /**
+ * Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
+ */
+ status?: PrivateEndpointServiceConnectionStatus;
+
+ /**
+ * The reason for approval/rejection of the connection.
+ */
+ description?: string;
+
+ /**
+ * A message indicating if changes on the service provider require any updates on the consumer.
+ */
+ actionsRequired?: string;
+}
+
+/**
+ * The private endpoint connection status.
+ */
+union PrivateEndpointServiceConnectionStatus {
+ string,
+
+ /**
+ * Pending status.
+ */
+ Pending: "Pending",
+
+ /**
+ * Approved status.
+ */
+ Approved: "Approved",
+
+ /**
+ * Rejected status.
+ */
+ Rejected: "Rejected",
+}
+
+/**
+ * A list of private link resources
+ */
+model PrivateEndpointConnectionListResult
+ is Azure.Core.Page;
+
+/**
+ * A private link resource.
+ */
+model PrivateLinkResource
+ is Azure.ResourceManager.TrackedResource<
+ PrivateLinkResourceProperties,
+ false
+ > {
+ ...ResourceNameParameter<
+ Resource = PrivateLinkResource,
+ KeyName = "privateLinkName",
+ SegmentName = "privateLinkResources",
+ NamePattern = "^[^<>%&:?#/\\\\]+$"
+ >;
+}
+
+/**
+ * Properties of a private link resource.
+ */
+model PrivateLinkResourceProperties {
+ /**
+ * The private link resource group id.
+ */
+ @visibility("read")
+ groupId?: string;
+
+ /**
+ * The private link resource required member names.
+ */
+ @visibility("read")
+ requiredMembers?: string[];
+
+ /**
+ * The private link resource private link DNS zone name.
+ */
+ requiredZoneNames?: string[];
+
+ /**
+ * Resource provisioning state. Not currently in use.
+ */
+ @visibility("read")
+ provisioningState?: ProvisioningState;
+}
+
+/**
+ * A list of private link resources
+ */
+model PrivateLinkResourceListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/privateEndpointConnection.tsp b/specification/chaos/Chaos.Management/privateEndpointConnection.tsp
new file mode 100644
index 000000000000..5c053e8d2085
--- /dev/null
+++ b/specification/chaos/Chaos.Management/privateEndpointConnection.tsp
@@ -0,0 +1,46 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./privateEndpointConnection.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface PrivateEndpointConnections {
+ /**
+ * Gets information about a private endpoint connection under a private access resource.
+ */
+ #suppress "@azure-tools/typespec-azure-core/casing-style" "Linting error - is actually camel-case."
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("PrivateAccesses_GetAPrivateEndpointConnection")
+ getAPrivateEndpointConnection is ArmResourceRead;
+
+ /**
+ * Deletes a private endpoint connection under a private access resource.
+ */
+ #suppress "@azure-tools/typespec-azure-core/casing-style" "Linting error - is actually camel-case."
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("PrivateAccesses_DeleteAPrivateEndpointConnection")
+ deleteAPrivateEndpointConnection is ArmResourceDeleteWithoutOkAsync;
+
+ /**
+ * List information about private endpoint connections under a private access resource
+ */
+ #suppress "@azure-tools/typespec-azure-core/no-openapi" "Required to not break existing SDKs"
+ @operationId("PrivateAccesses_ListPrivateEndpointConnections")
+ listPrivateEndpointConnections is ArmResourceListByParent<
+ PrivateEndpointConnection,
+ Response = PrivateEndpointConnectionListResult
+ >;
+}
+
+@@doc(PrivateEndpointConnection.name,
+ "The name of the private endpoint connection."
+);
+@@doc(PrivateEndpointConnection.properties, "Resource properties.");
diff --git a/specification/chaos/Chaos.Management/target.models.tsp b/specification/chaos/Chaos.Management/target.models.tsp
new file mode 100644
index 000000000000..f15a2310e2a4
--- /dev/null
+++ b/specification/chaos/Chaos.Management/target.models.tsp
@@ -0,0 +1,41 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./common.models.tsp";
+import "./capabilityType.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+using Azure.Core;
+
+namespace Microsoft.Chaos;
+
+/**
+ * Model that represents a Target resource.
+ */
+model Target is Azure.ResourceManager.ProxyResource> {
+ ...ResourceNameParameter<
+ Resource = Target,
+ KeyName = "targetName",
+ SegmentName = "targets",
+ NamePattern = "^[a-zA-Z0-9_\\-\\.]+$"
+ >;
+
+ /**
+ * Azure resource location.
+ */
+ #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "Required to avoid SDK breaking change."
+ location?: azureLocation;
+}
+
+alias TargetParentResourceParameters = BaseParameters &
+ ParentResourceParameters;
+
+/**
+ * Model that represents a list of Target resources and a link for pagination.
+ */
+model TargetListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/target.tsp b/specification/chaos/Chaos.Management/target.tsp
new file mode 100644
index 000000000000..f329fd2b7ed2
--- /dev/null
+++ b/specification/chaos/Chaos.Management/target.tsp
@@ -0,0 +1,58 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./target.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+using Azure.Core;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface Targets {
+ /**
+ * Get a Target resource that extends a tracked regional resource.
+ */
+ get is ArmResourceRead;
+
+ /**
+ * Create or update a Target resource that extends a tracked regional resource.
+ */
+ createOrUpdate is ArmResourceCreateOrReplaceSync<
+ Target,
+ TargetParentResourceParameters
+ >;
+
+ /**
+ * Delete a Target resource that extends a tracked regional resource.
+ */
+ delete is ArmResourceDeleteSync;
+
+ /**
+ * Get a list of Target resources that extend a tracked regional resource.
+ */
+ list is ArmResourceListByParent<
+ Target,
+ {
+ ...TargetParentResourceParameters;
+
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = TargetListResult
+ >;
+}
+
+@@doc(Target.name, "String that represents a Target resource name.");
+@@doc(Target.properties, "The properties of the target resource.");
+@@doc(Targets.createOrUpdate::parameters.resource,
+ "Target resource to be created or updated."
+);
diff --git a/specification/chaos/Chaos.Management/targetType.models.tsp b/specification/chaos/Chaos.Management/targetType.models.tsp
new file mode 100644
index 000000000000..5e20fcc0d42a
--- /dev/null
+++ b/specification/chaos/Chaos.Management/targetType.models.tsp
@@ -0,0 +1,64 @@
+import "@typespec/rest";
+import "@typespec/http";
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "./experiment.models.tsp";
+
+using TypeSpec.Rest;
+using TypeSpec.Http;
+using Azure.ResourceManager;
+using Azure.ResourceManager.Foundations;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+/**
+ * Model that represents a Target Type resource.
+ */
+@subscriptionResource
+@parentResource(SubscriptionLocationResource)
+model TargetType
+ is Azure.ResourceManager.ProxyResource {
+ ...ResourceNameParameter<
+ Resource = TargetType,
+ KeyName = "targetTypeName",
+ SegmentName = "targetTypes",
+ NamePattern = "^[a-zA-Z0-9_\\-\\.]+$"
+ >;
+}
+
+/**
+ * Model that represents the base Target Type properties model.
+ */
+#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "Read-only metadata resource."
+model TargetTypeProperties {
+ /**
+ * Localized string of the display name.
+ */
+ @visibility("read")
+ displayName?: string;
+
+ /**
+ * Localized string of the description.
+ */
+ @visibility("read")
+ description?: string;
+
+ /**
+ * URL to retrieve JSON schema of the Target Type properties.
+ */
+ @visibility("read")
+ @maxLength(2048)
+ propertiesSchema?: string;
+
+ /**
+ * List of resource types this Target Type can extend.
+ */
+ @visibility("read")
+ resourceTypes?: string[];
+}
+
+/**
+ * Model that represents a list of Target Type resources and a link for pagination.
+ */
+model TargetTypeListResult is Azure.Core.Page;
diff --git a/specification/chaos/Chaos.Management/targetType.tsp b/specification/chaos/Chaos.Management/targetType.tsp
new file mode 100644
index 000000000000..742f07b3daf5
--- /dev/null
+++ b/specification/chaos/Chaos.Management/targetType.tsp
@@ -0,0 +1,42 @@
+import "@azure-tools/typespec-azure-core";
+import "@azure-tools/typespec-azure-resource-manager";
+import "@typespec/openapi";
+import "@typespec/rest";
+import "./targetType.models.tsp";
+
+using TypeSpec.Rest;
+using Azure.ResourceManager;
+using TypeSpec.Http;
+using TypeSpec.OpenAPI;
+
+namespace Microsoft.Chaos;
+
+@armResourceOperations
+interface TargetTypes {
+ /**
+ * Get a Target Type resources for given location.
+ */
+ get is ArmResourceRead<
+ TargetType,
+ Azure.ResourceManager.Foundations.SubscriptionBaseParameters
+ >;
+
+ /**
+ * Get a list of Target Type resources for given location.
+ */
+ list is ArmResourceListByParent<
+ TargetType,
+ Azure.ResourceManager.Foundations.SubscriptionBaseParameters,
+ Parameters = {
+ /**
+ * String that sets the continuation token.
+ */
+ @query("continuationToken")
+ continuationToken?: string;
+ },
+ Response = TargetTypeListResult
+ >;
+}
+
+@@doc(TargetType.name, "String that represents a Target Type resource name.");
+@@doc(TargetType.properties, "The properties of the target type resource.");
diff --git a/specification/chaos/Chaos.Management/tspconfig.yaml b/specification/chaos/Chaos.Management/tspconfig.yaml
new file mode 100644
index 000000000000..65dee593e807
--- /dev/null
+++ b/specification/chaos/Chaos.Management/tspconfig.yaml
@@ -0,0 +1,42 @@
+parameters:
+ "service-dir":
+ default: "sdk/chaos"
+emit:
+ - "@azure-tools/typespec-autorest"
+options:
+ "@azure-tools/typespec-autorest":
+ azure-resource-provider-folder: "resource-manager"
+ emit-common-types-schema: "never"
+ # `arm-resource-flattening` is only used for back-compat for specs existed on July 2024. All new service spec should NOT use this flag
+ arm-resource-flattening: true
+ emitter-output-dir: "{project-root}/.."
+ output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json"
+ omit-unreachable-types: true
+ use-read-only-status-schema: true
+ "@azure-tools/typespec-ts":
+ azureSdkForJs: true
+ isModularLibrary: true
+ generateMetadata: true
+ hierarchyClient: false
+ experimentalExtensibleEnums: true
+ enableOperationGroup: true
+ clear-output-folder: true
+ package-dir: "arm-chaos"
+ flavor: "azure"
+ packageDetails:
+ name: "@azure/arm-chaos"
+ "@azure-tools/typespec-python":
+ package-dir: "azure-mgmt-chaos"
+ package-name: "{package-dir}"
+ flavor: "azure"
+ generate-test: true
+ generate-sample: true
+ "@azure-tools/typespec-csharp":
+ flavor: azure
+ package-dir: "Azure.ResourceManager.Chaos"
+ clear-output-folder: true
+ model-namespace: false
+ namespace: "{package-dir}"
+linter:
+ extends:
+ - "@azure-tools/typespec-azure-rulesets/resource-manager"
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_CreateOrUpdate.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_CreateOrUpdate.json
new file mode 100644
index 000000000000..7c795f1ef542
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_CreateOrUpdate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "properties": {}
+ },
+ "capabilityName": "Shutdown-1.0",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ }
+ },
+ "operationId": "Capabilities_CreateOrUpdate",
+ "title": "Create/update a Capability that extends a virtual machine Target resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Delete.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Delete.json
new file mode 100644
index 000000000000..3a2a71363a4b
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Delete.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "capabilityName": "Shutdown-1.0",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ },
+ "operationId": "Capabilities_Delete",
+ "title": "Delete a Capability that extends a virtual machine Target resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Get.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Get.json
new file mode 100644
index 000000000000..c24d50303058
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_Get.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "capabilityName": "Shutdown-1.0",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ }
+ },
+ "operationId": "Capabilities_Get",
+ "title": "Get a Capability that extends a virtual machine Target resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_List.json
new file mode 100644
index 000000000000..e64aa32c3650
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Capabilities_List.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/targets/capabilities",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ },
+ "systemData": {
+ "createdAt": "2020-05-14T05:08:38.4662189Z",
+ "lastModifiedAt": "2020-05-14T05:08:38.4662189Z"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "Capabilities_List",
+ "title": "List all Capabilities that extend a virtual machine Target resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_Get.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_Get.json
new file mode 100644
index 000000000000..07015ac28ed8
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_Get.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "capabilityTypeName": "Shutdown-1.0",
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetTypeName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "displayName": "Shutdown VM",
+ "kind": "fault",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "runtimeProperties": {
+ "kind": "continuous"
+ },
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ }
+ }
+ }
+ },
+ "operationId": "CapabilityTypes_Get",
+ "title": "Get a Capability Type for a virtual machine Target resource on westus2 location."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_List.json
new file mode 100644
index 000000000000..0b7c67fd77c9
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/CapabilityTypes_List.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetTypeName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Shutdown-1.0",
+ "type": "Microsoft.Chaos/locations/targetTypes/capabilityTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-VirtualMachine/capabilityTypes/Shutdown-1.0",
+ "properties": {
+ "description": "Shutdown an Azure Virtual Machine for a defined period of time.",
+ "displayName": "Shutdown VM",
+ "kind": "fault",
+ "parametersSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine/capabilities/Shutdown-1.0.json",
+ "publisher": "Microsoft",
+ "runtimeProperties": {
+ "kind": "continuous"
+ },
+ "targetType": "VirtualMachine",
+ "urn": "urn:csci:microsoft:virtualMachine:shutdown/1.0"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "CapabilityTypes_List",
+ "title": "List all Capability Types for a virtual machine Target resource on westus2 location."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Cancel.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Cancel.json
new file mode 100644
index 000000000000..9f1756e0fbcf
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Cancel.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_Cancel",
+ "title": "Cancel a running Experiment."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_CreateOrUpdate.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_CreateOrUpdate.json
new file mode 100644
index 000000000000..c5a02b85ba61
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_CreateOrUpdate.json
@@ -0,0 +1,208 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "tags": {
+ "key7131": "ryohwcoiccwsnewjigfmijz",
+ "key2138": "fjaeecgnvqd"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "tags": {
+ "key7131": "ryohwcoiccwsnewjigfmijz",
+ "key2138": "fjaeecgnvqd"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "provisioningState": "Updating",
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/experiments/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "tags": {
+ "key7131": "ryohwcoiccwsnewjigfmijz",
+ "key2138": "fjaeecgnvqd"
+ },
+ "location": "eastus2euap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "provisioningState": "Creating",
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:microsoft:virtualMachine:shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/experiments/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_CreateOrUpdate",
+ "title": "Create/update a Experiment in a resource group."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Delete.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Delete.json
new file mode 100644
index 000000000000..4924ef8efa3c
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Delete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "204": {}
+ },
+ "operationId": "Experiments_Delete",
+ "title": "Delete a Experiment in a resource group."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ExecutionDetails.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ExecutionDetails.json
new file mode 100644
index 000000000000..a103b628f5bc
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ExecutionDetails.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "executionId": "f24500ad-744e-4a26-864b-b76199eac333",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "f24500ad-744e-4a26-864b-b76199eac333",
+ "type": "Microsoft.Chaos/experiments/executions/getExecutionDetails",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/f24500ad-744e-4a26-864b-b76199eac333/getExecutionDetails",
+ "properties": {
+ "failureReason": "Dependency failure",
+ "lastActionAt": "2020-12-14T21:52:52.2552574Z",
+ "runInformation": {
+ "steps": [
+ {
+ "branches": [
+ {
+ "actions": [
+ {
+ "actionId": "59499d33-6751-4b6e-a1f6-58f4d56a040a",
+ "actionName": "urn:provider:agent-v2:Microsoft.Azure.Chaos.Fault.CPUPressureAllProcessors",
+ "endTime": "2020-12-14T13:56:13.6270153-08:00",
+ "startTime": "2020-12-14T13:56:13.6270153-08:00",
+ "status": "failed",
+ "targets": [
+ {
+ "status": "succeeded",
+ "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1",
+ "targetCompletedTime": "2021-04-02T17:30:55+00:00",
+ "targetFailedTime": "2021-04-02T16:30:55+00:00"
+ },
+ {
+ "status": "failed",
+ "target": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/VM1",
+ "targetCompletedTime": "2021-04-02T17:30:55+00:00",
+ "targetFailedTime": "2021-04-02T16:30:55+00:00"
+ }
+ ]
+ }
+ ],
+ "branchId": "FirstBranch",
+ "branchName": "FirstBranch",
+ "status": "failed"
+ }
+ ],
+ "status": "failed",
+ "stepId": "FirstStep",
+ "stepName": "FirstStep"
+ }
+ ]
+ },
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "failed",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ }
+ }
+ },
+ "operationId": "Experiments_ExecutionDetails",
+ "title": "Get experiment execution details."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Get.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Get.json
new file mode 100644
index 000000000000..7caafe637f85
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Get.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_Get",
+ "title": "Get a Experiment in a resource group."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_GetExecution.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_GetExecution.json
new file mode 100644
index 000000000000..62f3798fdb0c
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_GetExecution.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "executionId": "f24500ad-744e-4a26-864b-b76199eac333",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "f24500ad-744e-4a26-864b-b76199eac333",
+ "type": "Microsoft.Chaos/experiments/executions",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/f24500ad-744e-4a26-864b-b76199eac333",
+ "properties": {
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "failed",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_GetExecution",
+ "title": "Get the execution of a Experiment."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_List.json
new file mode 100644
index 000000000000..88029a8a641b
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_List.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_List",
+ "title": "List all Experiments in a resource group."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAll.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAll.json
new file mode 100644
index 000000000000..143a2f3a5345
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAll.json
@@ -0,0 +1,80 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/experiments?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "SystemAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6"
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_ListAll",
+ "title": "List all Experiments in a subscription."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAllExecutions.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAllExecutions.json
new file mode 100644
index 000000000000..7b48b33f1608
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_ListAllExecutions.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executionDetails?continuationToken=&api-version=2025-01-01",
+ "value": [
+ {
+ "name": "f24500ad-744e-4a26-864b-b76199eac333",
+ "type": "Microsoft.Chaos/experiments/executions",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/f24500ad-744e-4a26-864b-b76199eac333",
+ "properties": {
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "failed",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ },
+ {
+ "name": "14d98367-52ef-4596-be4f-53fc81bbfc33",
+ "type": "Microsoft.Chaos/experiments/executions",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment/executions/14d98367-52ef-4596-be4f-53fc81bbfc33",
+ "properties": {
+ "startedAt": "2020-12-14T21:52:52.2552574Z",
+ "status": "success",
+ "stoppedAt": "2020-12-14T21:56:18.9281956Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Experiments_ListAllExecutions",
+ "title": "List all executions of an Experiment."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Start.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Start.json
new file mode 100644
index 000000000000..9a68b03582ed
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Start.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_Start",
+ "title": "Start a Experiment."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Update.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Update.json
new file mode 100644
index 000000000000..7f7464f8f76f
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Experiments_Update.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "properties": {
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.ManagedIdentity/userAssignedIdentity/exampleUMI": {}
+ }
+ },
+ "tags": {
+ "key1": "value1",
+ "key2": "value2"
+ }
+ },
+ "experimentName": "exampleExperiment",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "exampleExperiment",
+ "type": "Microsoft.Chaos/experiments",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Chaos/experiments/exampleExperiment",
+ "identity": {
+ "type": "UserAssigned",
+ "principalId": "d04ab567-2c07-43ef-a7f4-4527626b7f56",
+ "tenantId": "8c3e2fb2-fe7a-4bf1-b779-d73990782fe6",
+ "userAssignedIdentities": {
+ "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.ManagedIdentity/userAssignedIdentity/exampleUMI": {}
+ }
+ },
+ "location": "centraluseuap",
+ "properties": {
+ "customerDataStorage": {
+ "blobContainerName": "azurechaosstudioexperiments",
+ "storageAccountResourceId": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Storage/storageAccounts/exampleStorage"
+ },
+ "selectors": [
+ {
+ "type": "List",
+ "id": "selector1",
+ "targets": [
+ {
+ "type": "ChaosTarget",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine"
+ }
+ ]
+ }
+ ],
+ "steps": [
+ {
+ "name": "step1",
+ "branches": [
+ {
+ "name": "branch1",
+ "actions": [
+ {
+ "name": "urn:csci:provider:providername:Shutdown/1.0",
+ "type": "continuous",
+ "duration": "PT10M",
+ "parameters": [
+ {
+ "key": "abruptShutdown",
+ "value": "false"
+ }
+ ],
+ "selectorId": "selector1"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "createdBy": "User",
+ "createdByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedBy": "User",
+ "lastModifiedByType": "b3a41dba-4415-4d36-9ee8-e5eaa86db976"
+ },
+ "tags": {
+ "key1": "value1",
+ "key2": "value2"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatuses/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "Experiments_Update",
+ "title": "Update an Experiment in a resource group."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/OperationStatuses_Get.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/OperationStatuses_Get.json
new file mode 100644
index 000000000000..79a6af7eabd9
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/OperationStatuses_Get.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "subscriptionId": "e25c0d12-0335-4fec-8ef8-3b4f9a10649e",
+ "location": "westus2",
+ "operationId": "4bdadd97-207c-4de8-9bba-08339ae099c7"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/e25c0d12-0335-4fec-8ef8-3b4f9a10649e/providers/Microsoft.Chaos/locations/westus2/operationStatuses/4bdadd97-207c-4de8-9bba-08339ae099c7",
+ "name": "4bdadd97-207c-4de8-9bba-08339ae099c7",
+ "startTime": "2024-11-14T21:52:52.2552574Z",
+ "status": "Creating"
+ }
+ }
+ },
+ "operationId": "OperationStatuses_Get",
+ "title": "Gets Chaos Studio async operation status."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Operations_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Operations_List.json
new file mode 100644
index 000000000000..fd9d6a21cec4
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Operations_List.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/providers/Microsoft.Chaos/operations?continuationToken=myContinuationToken&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Microsoft.Chaos/experiments/read",
+ "display": {
+ "provider": "Microsoft Chaos",
+ "resource": "Chaos Experiment",
+ "operation": "Gets all Chaos Experiments.",
+ "description": "Gets all Chaos Experiments in a resource group."
+ },
+ "isDataAction": false,
+ "origin": "user,system"
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "Operations_ListAll",
+ "title": "Lists all Chaos Studio operations."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json
new file mode 100644
index 000000000000..aeefb41c67f6
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "location": "centraluseuap",
+ "properties": {}
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Updating"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Creating"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_CreateOrUpdate",
+ "title": "Create or Update a private access resource"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json
new file mode 100644
index 000000000000..a2160ef6d481
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "resource": {
+ "location": "centraluseuap",
+ "properties": {
+ "publicNetworkAccess": "Enabled"
+ }
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Updating",
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "201": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Creating",
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "header": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_CreateOrUpdate",
+ "title": "Create or Update a private access resource with publicNetworkAccess"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Delete.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Delete.json
new file mode 100644
index 000000000000..863b73090e9a
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Delete.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "204": {}
+ },
+ "operationId": "PrivateAccesses_Delete",
+ "title": "Delete a private access resource"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_DeleteAPrivateEndpointConnection.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_DeleteAPrivateEndpointConnection.json
new file mode 100644
index 000000000000..918d0e468865
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_DeleteAPrivateEndpointConnection.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ },
+ "204": {}
+ },
+ "operationId": "PrivateAccesses_DeleteAPrivateEndpointConnection",
+ "title": "Delete a private endpoint connection under a private access resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetAPrivateEndpointConnection.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetAPrivateEndpointConnection.json
new file mode 100644
index 000000000000..87323c558482
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetAPrivateEndpointConnection.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "privateEndpointConnectionName": "myPrivateEndpointConnection",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateEndpointConnection",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateEndpointConnection",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_GetAPrivateEndpointConnection",
+ "title": "Get information about a private endpoint connection under a private access resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetPrivateLinkResources.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetPrivateLinkResources.json
new file mode 100644
index 000000000000..6061df9c8fd2
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_GetPrivateLinkResources.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "agents",
+ "type": "Microsoft.Chaos/privateAccesses/privateLinkResources",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateLinkResources/agents",
+ "location": "centraluseuap",
+ "properties": {
+ "groupId": "agents",
+ "requiredMembers": [
+ "privateAccess_1"
+ ],
+ "requiredZoneNames": [
+ "privatelink.agents.core.windows.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_GetPrivateLinkResources",
+ "title": "List all possible private link resources under private access resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource.json
new file mode 100644
index 000000000000..ea241460b416
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccess": {
+ "location": "centraluseuap"
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_Get",
+ "title": "Get a private access resource"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json
new file mode 100644
index 000000000000..1ed76e7dc7df
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccess": {
+ "location": "centraluseuap"
+ },
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myprivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "privateEndpointConnections": [
+ {
+ "name": "myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ],
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_Get",
+ "title": "Get a private access resource with private endpoint"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_List.json
new file mode 100644
index 000000000000..efd80c1e9db6
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_List.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "myPrivateAccess2",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess2",
+ "location": "centraluseuap",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "privateEndpointConnections": [
+ {
+ "name": "myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ }
+ }
+ }
+ ],
+ "publicNetworkAccess": "Enabled"
+ },
+ "systemData": {
+ "createdAt": "2021-08-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-08-01T00:00:00.0Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "PrivateAccesses_List",
+ "title": "List all private access in a resource group."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListAll.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListAll.json
new file mode 100644
index 000000000000..30ba4d1b2020
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListAll.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/privateAccesses?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "myPrivateAccess2",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess2",
+ "location": "centraluseuap",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup2/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "privateEndpointConnections": [
+ {
+ "name": "myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup2/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateAccess.d4914cfa-6bc2-4049-a57c-3d1f622d8eef",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup2/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ }
+ }
+ }
+ ],
+ "publicNetworkAccess": "Disabled"
+ },
+ "systemData": {
+ "createdAt": "2021-08-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-08-01T00:00:00.0Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "PrivateAccesses_ListAll",
+ "title": "List all private accesses in a subscription."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListPrivateEndpointConnections.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListPrivateEndpointConnections.json
new file mode 100644
index 000000000000..67b7aa77c9a0
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_ListPrivateEndpointConnections.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "myPrivateEndpointConnection",
+ "type": "Microsoft.Chaos/privateAccesses/PrivateEndpointConnections",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess/privateEndpoinConnections/myPrivateEndpointConnection",
+ "properties": {
+ "privateEndpoint": {
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "description": "Auto-Approved",
+ "actionsRequired": "None",
+ "status": "Approved"
+ },
+ "provisioningState": "Succeeded"
+ }
+ }
+ ]
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_ListPrivateEndpointConnections",
+ "title": "List all private endpoint connections under a private access resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Update.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Update.json
new file mode 100644
index 000000000000..b36d4a84e3a7
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/PrivateAccesses_Update.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "privateAccessName": "myPrivateAccess",
+ "properties": {
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ },
+ "resourceGroupName": "myResourceGroup",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "myPrivateAccess",
+ "type": "Microsoft.Chaos/privateAccesses",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourcegroup/providers/Microsoft.Chaos/privateAccesses/myPrivateAccess",
+ "location": "centraluseuap",
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ },
+ "tags": {
+ "tag1": "value1",
+ "tag2": "value2"
+ }
+ },
+ "headers": {}
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview",
+ "Location": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/myResourceGroup/providers/Microsoft.Chaos/locations/eastus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2024-11-01-preview"
+ }
+ }
+ },
+ "operationId": "PrivateAccesses_Update",
+ "title": "Update a private access resource's tags"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_Get.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_Get.json
new file mode 100644
index 000000000000..af955b51e062
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetTypeName": "Microsoft-Agent"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/locations/targetTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-Agent",
+ "properties": {
+ "description": "A target represents Chaos Agent.",
+ "displayName": "Chaos Agent",
+ "propertiesSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine.json",
+ "resourceTypes": [
+ "Microsoft.Compute/virtualMachines",
+ "Microsoft.Compute/virtualMachineScaleSets"
+ ]
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "TargetTypes_Get",
+ "title": "Get a Target Type for westus2 location"
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_List.json
new file mode 100644
index 000000000000..492aa68949b0
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/TargetTypes_List.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "location": "westus2",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/locations/targetTypes",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/providers/Microsoft.Chaos/locations/westus2/targetTypes/Microsoft-Agent",
+ "properties": {
+ "description": "A target represents Chaos Agent.",
+ "displayName": "Chaos Agent",
+ "propertiesSchema": "https://schema.centralus.chaos-prod.azure.com/targets/Microsoft-VirtualMachine.json",
+ "resourceTypes": [
+ "Microsoft.Compute/virtualMachines",
+ "Microsoft.Compute/virtualMachineScaleSets"
+ ]
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "TargetTypes_List",
+ "title": "List all Target Types for westus2 location."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_CreateOrUpdate.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_CreateOrUpdate.json
new file mode 100644
index 000000000000..08ebc03da8ef
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_CreateOrUpdate.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "resource": {
+ "properties": {}
+ },
+ "targetName": "Microsoft-VirtualMachine"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Microsoft-VirtualMachine",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "headers": {}
+ },
+ "201": {
+ "body": {
+ "name": "Microsoft-VirtualMachine",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-VirtualMachine",
+ "properties": {},
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Targets_CreateOrUpdate",
+ "title": "Create/update a Target that extends a virtual machine resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Delete.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Delete.json
new file mode 100644
index 000000000000..a0b0b0e241c7
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-Agent"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ },
+ "operationId": "Targets_Delete",
+ "title": "Delete a Target that extends a virtual machine resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Get.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Get.json
new file mode 100644
index 000000000000..dd8a8c27670e
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_Get.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291",
+ "targetName": "Microsoft-Agent"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent",
+ "location": "centraluseuap",
+ "properties": {
+ "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf",
+ "identities": [
+ {
+ "type": "CertificateSubjectIssuer",
+ "subject": "CN=example.subject"
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Targets_Get",
+ "title": "Get a Target that extends a virtual machine resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_List.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_List.json
new file mode 100644
index 000000000000..0f2686b7b39f
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/examples/Targets_List.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01-preview",
+ "continuationToken": null,
+ "parentProviderNamespace": "Microsoft.Compute",
+ "parentResourceName": "exampleVM",
+ "parentResourceType": "virtualMachines",
+ "resourceGroupName": "exampleRG",
+ "subscriptionId": "6b052e15-03d3-4f17-b2e1-be7f07588291"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nextLink": "https://management.azure.com/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets?continuationToken=&api-version=2024-11-01-preview",
+ "value": [
+ {
+ "name": "Microsoft-Agent",
+ "type": "Microsoft.Chaos/targets",
+ "id": "/subscriptions/6b052e15-03d3-4f17-b2e1-be7f07588291/resourceGroups/exampleRG/providers/Microsoft.Compute/virtualMachines/exampleVM/providers/Microsoft.Chaos/targets/Microsoft-Agent",
+ "location": "centraluseuap",
+ "properties": {
+ "agentProfileId": "ac4e8251-fdc9-4277-8e87-dc57fe5794cf",
+ "identities": [
+ {
+ "type": "CertificateSubjectIssuer",
+ "subject": "CN=example.subject"
+ }
+ ]
+ },
+ "systemData": {
+ "createdAt": "2021-07-01T00:00:00.0Z",
+ "lastModifiedAt": "2021-07-01T00:00:00.0Z"
+ }
+ }
+ ]
+ },
+ "headers": {}
+ }
+ },
+ "operationId": "Targets_List",
+ "title": "List all Targets that extend a virtual machine resource."
+}
diff --git a/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/openapi.json b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/openapi.json
new file mode 100644
index 000000000000..76bb1a796296
--- /dev/null
+++ b/specification/chaos/resource-manager/Microsoft.Chaos/preview/2024-11-01-preview/openapi.json
@@ -0,0 +1,3728 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "ChaosManagementClient",
+ "version": "2024-11-01-preview",
+ "description": "Chaos Management Client",
+ "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": "Capabilities"
+ },
+ {
+ "name": "Operations"
+ },
+ {
+ "name": "Targets"
+ },
+ {
+ "name": "CapabilityTypes"
+ },
+ {
+ "name": "Experiments"
+ },
+ {
+ "name": "ExperimentExecutions"
+ },
+ {
+ "name": "PrivateAccesses"
+ },
+ {
+ "name": "PrivateEndpointConnections"
+ },
+ {
+ "name": "TargetTypes"
+ },
+ {
+ "name": "OperationStatuses"
+ }
+ ],
+ "paths": {
+ "/providers/Microsoft.Chaos/operations": {
+ "get": {
+ "operationId": "Operations_ListAll",
+ "tags": [
+ "Operations"
+ ],
+ "description": "List the operations for the provider",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Lists all Chaos Studio operations.": {
+ "$ref": "./examples/Operations_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/experiments": {
+ "get": {
+ "operationId": "Experiments_ListAll",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Get a list of Experiment resources in a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "running",
+ "in": "query",
+ "description": "Optional value that indicates whether to filter results based on if the Experiment is currently running. If null, then the results will not be filtered.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ExperimentListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all Experiments in a subscription.": {
+ "$ref": "./examples/Experiments_ListAll.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{location}/operationStatuses/{operationId}": {
+ "get": {
+ "operationId": "OperationStatuses_Get",
+ "tags": [
+ "OperationStatuses"
+ ],
+ "description": "Returns the current status of an async operation.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/OperationIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationStatusResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Gets Chaos Studio async operation status.": {
+ "$ref": "./examples/OperationStatuses_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{location}/targetTypes": {
+ "get": {
+ "operationId": "TargetTypes_List",
+ "tags": [
+ "TargetTypes"
+ ],
+ "description": "Get a list of Target Type resources for given location.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/TargetTypeListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all Target Types for westus2 location.": {
+ "$ref": "./examples/TargetTypes_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{location}/targetTypes/{targetTypeName}": {
+ "get": {
+ "operationId": "TargetTypes_Get",
+ "tags": [
+ "TargetTypes"
+ ],
+ "description": "Get a Target Type resources for given location.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "name": "targetTypeName",
+ "in": "path",
+ "description": "String that represents a Target Type resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/TargetType"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Target Type for westus2 location": {
+ "$ref": "./examples/TargetTypes_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{location}/targetTypes/{targetTypeName}/capabilityTypes": {
+ "get": {
+ "operationId": "CapabilityTypes_List",
+ "tags": [
+ "CapabilityTypes"
+ ],
+ "description": "Get a list of Capability Type resources for given Target Type and location.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "name": "targetTypeName",
+ "in": "path",
+ "description": "String that represents a Target Type resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/CapabilityTypeListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all Capability Types for a virtual machine Target resource on westus2 location.": {
+ "$ref": "./examples/CapabilityTypes_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/locations/{location}/targetTypes/{targetTypeName}/capabilityTypes/{capabilityTypeName}": {
+ "get": {
+ "operationId": "CapabilityTypes_Get",
+ "tags": [
+ "CapabilityTypes"
+ ],
+ "description": "Get a Capability Type resource for given Target Type and location.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "name": "targetTypeName",
+ "in": "path",
+ "description": "String that represents a Target Type resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ },
+ {
+ "name": "capabilityTypeName",
+ "in": "path",
+ "description": "String that represents a Capability Type resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/CapabilityType"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Capability Type for a virtual machine Target resource on westus2 location.": {
+ "$ref": "./examples/CapabilityTypes_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Chaos/privateAccesses": {
+ "get": {
+ "operationId": "PrivateAccesses_ListAll",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Get a list of private access resources in a subscription.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PrivateAccessListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all private accesses in a subscription.": {
+ "$ref": "./examples/PrivateAccesses_ListAll.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets": {
+ "get": {
+ "operationId": "Targets_List",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Get a list of Target resources that extend a tracked regional resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/TargetListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all Targets that extend a virtual machine resource.": {
+ "$ref": "./examples/Targets_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}": {
+ "get": {
+ "operationId": "Targets_Get",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Get a Target resource that extends a tracked regional resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Target that extends a virtual machine resource.": {
+ "$ref": "./examples/Targets_Get.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Targets_CreateOrUpdate",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Create or update a Target resource that extends a tracked regional resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Target resource to be created or updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Target' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "201": {
+ "description": "Resource 'Target' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/update a Target that extends a virtual machine resource.": {
+ "$ref": "./examples/Targets_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Targets_Delete",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Delete a Target resource that extends a tracked regional resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource deleted successfully."
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a Target that extends a virtual machine resource.": {
+ "$ref": "./examples/Targets_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities": {
+ "get": {
+ "operationId": "Capabilities_List",
+ "tags": [
+ "Capabilities"
+ ],
+ "description": "Get a list of Capability resources that extend a Target resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/CapabilityListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all Capabilities that extend a virtual machine Target resource.": {
+ "$ref": "./examples/Capabilities_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}/capabilities/{capabilityName}": {
+ "get": {
+ "operationId": "Capabilities_Get",
+ "tags": [
+ "Capabilities"
+ ],
+ "description": "Get a Capability resource that extends a Target resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ },
+ {
+ "name": "capabilityName",
+ "in": "path",
+ "description": "String that represents a Capability resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Capability"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Capability that extends a virtual machine Target resource.": {
+ "$ref": "./examples/Capabilities_Get.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Capabilities_CreateOrUpdate",
+ "tags": [
+ "Capabilities"
+ ],
+ "description": "Create or update a Capability resource that extends a Target resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ },
+ {
+ "name": "capabilityName",
+ "in": "path",
+ "description": "String that represents a Capability resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Capability resource to be created or updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Capability"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Capability' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Capability"
+ }
+ },
+ "201": {
+ "description": "Resource 'Capability' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Capability"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/update a Capability that extends a virtual machine Target resource.": {
+ "$ref": "./examples/Capabilities_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Capabilities_Delete",
+ "tags": [
+ "Capabilities"
+ ],
+ "description": "Delete a Capability that extends a Target resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "parentProviderNamespace",
+ "in": "path",
+ "description": "The parent resource provider namespace.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceType",
+ "in": "path",
+ "description": "The parent resource type.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "parentResourceName",
+ "in": "path",
+ "description": "The parent resource name.",
+ "required": true,
+ "type": "string",
+ "maxLength": 63,
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "String that represents a Target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9_\\-\\.]+$"
+ },
+ {
+ "name": "capabilityName",
+ "in": "path",
+ "description": "String that represents a Capability resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9\\-\\.]+-\\d\\.\\d$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource deleted successfully."
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a Capability that extends a virtual machine Target resource.": {
+ "$ref": "./examples/Capabilities_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments": {
+ "get": {
+ "operationId": "Experiments_List",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Get a list of Experiment resources in a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "running",
+ "in": "query",
+ "description": "Optional value that indicates whether to filter results based on if the Experiment is currently running. If null, then the results will not be filtered.",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ExperimentListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all Experiments in a resource group.": {
+ "$ref": "./examples/Experiments_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}": {
+ "get": {
+ "operationId": "Experiments_Get",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Get a Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Experiment"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a Experiment in a resource group.": {
+ "$ref": "./examples/Experiments_Get.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Experiments_CreateOrUpdate",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Create or update a Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Experiment resource to be created or updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Experiment"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Experiment' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Experiment"
+ }
+ },
+ "201": {
+ "description": "Resource 'Experiment' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Experiment"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "A link to the status monitor"
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create/update a Experiment in a resource group.": {
+ "$ref": "./examples/Experiments_CreateOrUpdate.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "Experiments_Update",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "The operation to update an experiment.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "Parameters supplied to the Update experiment operation.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ExperimentUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Experiment"
+ }
+ },
+ "202": {
+ "description": "Resource update request accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update an Experiment in a resource group.": {
+ "$ref": "./examples/Experiments_Update.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "Experiments_Delete",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Delete a Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a Experiment in a resource group.": {
+ "$ref": "./examples/Experiments_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/cancel": {
+ "post": {
+ "operationId": "Experiments_Cancel",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Cancel a running Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource operation accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Cancel a running Experiment.": {
+ "$ref": "./examples/Experiments_Cancel.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/executions": {
+ "get": {
+ "operationId": "Experiments_ListAllExecutions",
+ "tags": [
+ "ExperimentExecutions"
+ ],
+ "description": "Get a list of executions of an Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/ExperimentExecutionListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all executions of an Experiment.": {
+ "$ref": "./examples/Experiments_ListAllExecutions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/executions/{executionId}": {
+ "get": {
+ "operationId": "Experiments_GetExecution",
+ "tags": [
+ "ExperimentExecutions"
+ ],
+ "description": "Get an execution of an Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "executionId",
+ "in": "path",
+ "description": "GUID that represents a Experiment execution detail.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ExperimentExecution"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get the execution of a Experiment.": {
+ "$ref": "./examples/Experiments_GetExecution.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/executions/{executionId}/getExecutionDetails": {
+ "post": {
+ "operationId": "Experiments_ExecutionDetails",
+ "tags": [
+ "ExperimentExecutions"
+ ],
+ "description": "Execution details of an experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "executionId",
+ "in": "path",
+ "description": "GUID that represents a Experiment execution detail.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/ExperimentExecutionDetails"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get experiment execution details.": {
+ "$ref": "./examples/Experiments_ExecutionDetails.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/experiments/{experimentName}/start": {
+ "post": {
+ "operationId": "Experiments_Start",
+ "tags": [
+ "Experiments"
+ ],
+ "description": "Start a Experiment resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "experimentName",
+ "in": "path",
+ "description": "String that represents a Experiment resource name.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource operation accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Start a Experiment.": {
+ "$ref": "./examples/Experiments_Start.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/privateAccesses": {
+ "get": {
+ "operationId": "PrivateAccesses_List",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Get a list of private access resources in a resource group.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "continuationToken",
+ "in": "query",
+ "description": "String that sets the continuation token.",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PrivateAccessListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all private access in a resource group.": {
+ "$ref": "./examples/PrivateAccesses_List.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/privateAccesses/{privateAccessName}": {
+ "get": {
+ "operationId": "PrivateAccesses_Get",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Get a private access resource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateAccess"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a private access resource": {
+ "$ref": "./examples/PrivateAccesses_Get_Get_A_Private_Access_Resource.json"
+ },
+ "Get a private access resource with private endpoint": {
+ "$ref": "./examples/PrivateAccesses_Get_Get_A_Private_Access_Resource_With_Private_Endpoint.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "PrivateAccesses_CreateOrUpdate",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Create or update a private access",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "private access resource to be created or updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateAccess"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'PrivateAccess' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/PrivateAccess"
+ }
+ },
+ "201": {
+ "description": "Resource 'PrivateAccess' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/PrivateAccess"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string",
+ "description": "A link to the status monitor"
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create or Update a private access resource": {
+ "$ref": "./examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource.json"
+ },
+ "Create or Update a private access resource with publicNetworkAccess": {
+ "$ref": "./examples/PrivateAccesses_CreateOrUpdate_Create_Or_Update_A_Private_Access_Resource_With_Public_Network_Access.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "PrivateAccesses_Update",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Patch a private access tags",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "private access resource's tags to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateAccessPatch"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateAccess"
+ }
+ },
+ "202": {
+ "description": "Resource update request accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a private access resource's tags": {
+ "$ref": "./examples/PrivateAccesses_Update.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "PrivateAccesses_Delete",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Delete a private access",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a private access resource": {
+ "$ref": "./examples/PrivateAccesses_Delete.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/privateAccesses/{privateAccessName}/privateEndpointConnections": {
+ "get": {
+ "operationId": "PrivateAccesses_ListPrivateEndpointConnections",
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "List information about private endpoint connections under a private access resource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all private endpoint connections under a private access resource.": {
+ "$ref": "./examples/PrivateAccesses_ListPrivateEndpointConnections.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/privateAccesses/{privateAccessName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "operationId": "PrivateAccesses_GetAPrivateEndpointConnection",
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Gets information about a private endpoint connection under a private access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "description": "The name of the private endpoint connection.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get information about a private endpoint connection under a private access resource.": {
+ "$ref": "./examples/PrivateAccesses_GetAPrivateEndpointConnection.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "PrivateAccesses_DeleteAPrivateEndpointConnection",
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "description": "Deletes a private endpoint connection under a private access resource.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ },
+ {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "description": "The name of the private endpoint connection.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a private endpoint connection under a private access resource.": {
+ "$ref": "./examples/PrivateAccesses_DeleteAPrivateEndpointConnection.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Chaos/privateAccesses/{privateAccessName}/privateLinkResources": {
+ "get": {
+ "operationId": "PrivateAccesses_GetPrivateLinkResources",
+ "tags": [
+ "PrivateAccesses"
+ ],
+ "description": "Gets the private link resources possible under private access resource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "privateAccessName",
+ "in": "path",
+ "description": "The name of the private access resource that is being created. Supported characters for the name are a-z, A-Z, 0-9, _ and -. The maximum name length is 80 characters.",
+ "required": true,
+ "type": "string",
+ "minLength": 1,
+ "pattern": "^[^<>%&:?#/\\\\]+$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourceListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List all possible private link resources under private access resource.": {
+ "$ref": "./examples/PrivateAccesses_GetPrivateLinkResources.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ActionStatus": {
+ "type": "object",
+ "description": "Model that represents the an action and its status.",
+ "properties": {
+ "actionName": {
+ "type": "string",
+ "description": "The name of the action status.",
+ "readOnly": true
+ },
+ "actionId": {
+ "type": "string",
+ "description": "The id of the action status.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the action.",
+ "readOnly": true
+ },
+ "startTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the start time of the action.",
+ "readOnly": true
+ },
+ "endTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the end time of the action.",
+ "readOnly": true
+ },
+ "targets": {
+ "type": "array",
+ "description": "The array of targets.",
+ "items": {
+ "$ref": "#/definitions/ExperimentExecutionActionTargetDetailsProperties"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "Azure.Core.azureLocation": {
+ "type": "string",
+ "description": "Represents an Azure geography region where supported resource providers live."
+ },
+ "BranchStatus": {
+ "type": "object",
+ "description": "Model that represents the a list of actions and action statuses.",
+ "properties": {
+ "branchName": {
+ "type": "string",
+ "description": "The name of the branch status.",
+ "readOnly": true
+ },
+ "branchId": {
+ "type": "string",
+ "description": "The id of the branch status.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of the branch.",
+ "readOnly": true
+ },
+ "actions": {
+ "type": "array",
+ "description": "The array of actions.",
+ "items": {
+ "$ref": "#/definitions/ActionStatus"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "actionId"
+ ]
+ }
+ }
+ },
+ "Capability": {
+ "type": "object",
+ "description": "Model that represents a Capability resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CapabilityProperties",
+ "description": "The properties of a capability resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "CapabilityListResult": {
+ "type": "object",
+ "description": "Model that represents a list of Capability resources and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Capability items on this page",
+ "items": {
+ "$ref": "#/definitions/Capability"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "CapabilityProperties": {
+ "type": "object",
+ "description": "Model that represents the Capability properties model.",
+ "properties": {
+ "publisher": {
+ "type": "string",
+ "description": "String of the Publisher that this Capability extends.",
+ "readOnly": true
+ },
+ "targetType": {
+ "type": "string",
+ "description": "String of the Target Type that this Capability extends.",
+ "readOnly": true
+ },
+ "description": {
+ "type": "string",
+ "description": "Localized string of the description.",
+ "readOnly": true
+ },
+ "parametersSchema": {
+ "type": "string",
+ "description": "URL to retrieve JSON schema of the Capability parameters.",
+ "maxLength": 2048,
+ "readOnly": true
+ },
+ "urn": {
+ "type": "string",
+ "description": "String of the URN for this Capability Type.",
+ "maxLength": 2048,
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Resource provisioning state. Not currently in use because resource is created synchronously.",
+ "readOnly": true
+ }
+ }
+ },
+ "CapabilityType": {
+ "type": "object",
+ "description": "Model that represents a Capability Type resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CapabilityTypeProperties",
+ "description": "The properties of the capability type resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "CapabilityTypeListResult": {
+ "type": "object",
+ "description": "Model that represents a list of Capability Type resources and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The CapabilityType items on this page",
+ "items": {
+ "$ref": "#/definitions/CapabilityType"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "CapabilityTypeProperties": {
+ "type": "object",
+ "description": "Model that represents the Capability Type properties model.",
+ "properties": {
+ "publisher": {
+ "type": "string",
+ "description": "String of the Publisher that this Capability Type extends.",
+ "readOnly": true
+ },
+ "targetType": {
+ "type": "string",
+ "description": "String of the Target Type that this Capability Type extends.",
+ "readOnly": true
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Localized string of the display name.",
+ "readOnly": true
+ },
+ "description": {
+ "type": "string",
+ "description": "Localized string of the description.",
+ "readOnly": true
+ },
+ "parametersSchema": {
+ "type": "string",
+ "description": "URL to retrieve JSON schema of the Capability Type parameters.",
+ "maxLength": 2048,
+ "readOnly": true
+ },
+ "urn": {
+ "type": "string",
+ "description": "String of the URN for this Capability Type.",
+ "maxLength": 2048,
+ "readOnly": true
+ },
+ "kind": {
+ "type": "string",
+ "description": "String of the kind of this Capability Type.",
+ "readOnly": true
+ },
+ "azureRbacActions": {
+ "type": "array",
+ "description": "Control plane actions necessary to execute capability type.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "azureRbacDataActions": {
+ "type": "array",
+ "description": "Data plane actions necessary to execute capability type.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "runtimeProperties": {
+ "$ref": "#/definitions/CapabilityTypePropertiesRuntimeProperties",
+ "description": "Runtime properties of this Capability Type.",
+ "readOnly": true
+ }
+ }
+ },
+ "CapabilityTypePropertiesRuntimeProperties": {
+ "type": "object",
+ "description": "Runtime properties of this Capability Type.",
+ "properties": {
+ "kind": {
+ "type": "string",
+ "description": "String of the kind of the resource's action type (continuous or discrete).",
+ "readOnly": true
+ }
+ }
+ },
+ "ChaosExperimentAction": {
+ "type": "object",
+ "description": "Model that represents the base action model. 9 total per experiment.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "String that represents a Capability URN.",
+ "maxLength": 2048
+ },
+ "type": {
+ "$ref": "#/definitions/ExperimentActionType",
+ "description": "Chaos experiment action discriminator type"
+ }
+ },
+ "discriminator": "type",
+ "required": [
+ "name",
+ "type"
+ ]
+ },
+ "ChaosExperimentBranch": {
+ "type": "object",
+ "description": "Model that represents a branch in the step. 9 total per experiment.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "String of the branch name.",
+ "minLength": 1
+ },
+ "actions": {
+ "type": "array",
+ "description": "List of actions.",
+ "items": {
+ "$ref": "#/definitions/ChaosExperimentAction"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "name",
+ "actions"
+ ]
+ },
+ "ChaosExperimentStep": {
+ "type": "object",
+ "description": "Model that represents a step in the Experiment resource.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "String of the step name.",
+ "minLength": 1
+ },
+ "branches": {
+ "type": "array",
+ "description": "List of branches.",
+ "items": {
+ "$ref": "#/definitions/ChaosExperimentBranch"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "required": [
+ "name",
+ "branches"
+ ]
+ },
+ "ChaosTargetFilter": {
+ "type": "object",
+ "description": "Model that represents available filter types that can be applied to a targets list.",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/FilterType",
+ "description": "Chaos target filter discriminator type"
+ }
+ },
+ "discriminator": "type",
+ "required": [
+ "type"
+ ]
+ },
+ "ChaosTargetListSelector": {
+ "type": "object",
+ "description": "Model that represents a list selector.",
+ "properties": {
+ "targets": {
+ "type": "array",
+ "description": "List of Target references.",
+ "items": {
+ "$ref": "#/definitions/TargetReference"
+ }
+ }
+ },
+ "required": [
+ "targets"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChaosTargetSelector"
+ }
+ ],
+ "x-ms-discriminator-value": "List"
+ },
+ "ChaosTargetQuerySelector": {
+ "type": "object",
+ "description": "Model that represents a query selector.",
+ "properties": {
+ "queryString": {
+ "type": "string",
+ "description": "Azure Resource Graph (ARG) Query Language query for target resources."
+ },
+ "subscriptionIds": {
+ "type": "array",
+ "description": "Subscription id list to scope resource query.",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "queryString",
+ "subscriptionIds"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChaosTargetSelector"
+ }
+ ],
+ "x-ms-discriminator-value": "Query"
+ },
+ "ChaosTargetSelector": {
+ "type": "object",
+ "description": "Model that represents a selector in the Experiment resource.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "String of the selector ID.",
+ "minLength": 1
+ },
+ "type": {
+ "$ref": "#/definitions/SelectorType",
+ "description": "Chaos target selector discriminator type"
+ },
+ "filter": {
+ "$ref": "#/definitions/ChaosTargetFilter",
+ "description": "Model that represents available filter types that can be applied to a targets list."
+ }
+ },
+ "discriminator": "type",
+ "required": [
+ "id",
+ "type"
+ ]
+ },
+ "ChaosTargetSimpleFilter": {
+ "type": "object",
+ "description": "Model that represents a simple target filter.",
+ "properties": {
+ "parameters": {
+ "$ref": "#/definitions/ChaosTargetSimpleFilterParameters",
+ "description": "Model that represents the Simple filter parameters."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChaosTargetFilter"
+ }
+ ],
+ "x-ms-discriminator-value": "Simple"
+ },
+ "ChaosTargetSimpleFilterParameters": {
+ "type": "object",
+ "description": "Model that represents the Simple filter parameters.",
+ "properties": {
+ "zones": {
+ "type": "array",
+ "description": "List of Azure availability zones to filter targets by.",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ContinuousAction": {
+ "type": "object",
+ "description": "Model that represents a continuous action.",
+ "properties": {
+ "duration": {
+ "type": "string",
+ "format": "duration",
+ "description": "ISO8601 formatted string that represents a duration."
+ },
+ "parameters": {
+ "type": "array",
+ "description": "List of key value pairs.",
+ "items": {
+ "$ref": "#/definitions/KeyValuePair"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ]
+ },
+ "selectorId": {
+ "type": "string",
+ "description": "String that represents a selector.",
+ "minLength": 1
+ }
+ },
+ "required": [
+ "duration",
+ "parameters",
+ "selectorId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChaosExperimentAction"
+ }
+ ],
+ "x-ms-discriminator-value": "continuous"
+ },
+ "CustomerDataStorageProperties": {
+ "type": "object",
+ "description": "Model that represents the Customer Managed Storage for an Experiment.",
+ "properties": {
+ "storageAccountResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "ARM Resource ID of the Storage account to use for Customer Data storage.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Storage/storageAccounts"
+ }
+ ]
+ }
+ },
+ "blobContainerName": {
+ "type": "string",
+ "description": "Name of the Azure Blob Storage container to use or create.",
+ "minLength": 3,
+ "maxLength": 63,
+ "pattern": "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"
+ }
+ }
+ },
+ "DelayAction": {
+ "type": "object",
+ "description": "Model that represents a delay action.",
+ "properties": {
+ "duration": {
+ "type": "string",
+ "format": "duration",
+ "description": "ISO8601 formatted string that represents a duration."
+ }
+ },
+ "required": [
+ "duration"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChaosExperimentAction"
+ }
+ ],
+ "x-ms-discriminator-value": "delay"
+ },
+ "DiscreteAction": {
+ "type": "object",
+ "description": "Model that represents a discrete action.",
+ "properties": {
+ "parameters": {
+ "type": "array",
+ "description": "List of key value pairs.",
+ "items": {
+ "$ref": "#/definitions/KeyValuePair"
+ },
+ "x-ms-identifiers": [
+ "key"
+ ]
+ },
+ "selectorId": {
+ "type": "string",
+ "description": "String that represents a selector.",
+ "minLength": 1
+ }
+ },
+ "required": [
+ "parameters",
+ "selectorId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ChaosExperimentAction"
+ }
+ ],
+ "x-ms-discriminator-value": "discrete"
+ },
+ "Experiment": {
+ "type": "object",
+ "description": "Model that represents a Experiment resource.",
+ "properties": {
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The managed service identities assigned to this resource."
+ },
+ "properties": {
+ "$ref": "#/definitions/ExperimentProperties",
+ "description": "The properties of the experiment resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "ExperimentActionType": {
+ "type": "string",
+ "description": "Enum union of Chaos experiment action types.",
+ "enum": [
+ "delay",
+ "discrete",
+ "continuous"
+ ],
+ "x-ms-enum": {
+ "name": "ExperimentActionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "delay",
+ "value": "delay"
+ },
+ {
+ "name": "discrete",
+ "value": "discrete"
+ },
+ {
+ "name": "continuous",
+ "value": "continuous"
+ }
+ ]
+ }
+ },
+ "ExperimentExecution": {
+ "type": "object",
+ "description": "Model that represents the execution of a Experiment.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ExperimentExecutionProperties",
+ "description": "The properties of experiment execution status.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "ExperimentExecutionActionTargetDetailsError": {
+ "type": "object",
+ "description": "Model that represents the Experiment action target details error model.",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "The error code.",
+ "readOnly": true
+ },
+ "message": {
+ "type": "string",
+ "description": "The error message",
+ "readOnly": true
+ }
+ }
+ },
+ "ExperimentExecutionActionTargetDetailsProperties": {
+ "type": "object",
+ "description": "Model that represents the Experiment action target details properties model.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "description": "The status of the execution.",
+ "readOnly": true
+ },
+ "target": {
+ "type": "string",
+ "description": "The target for the action.",
+ "readOnly": true
+ },
+ "targetFailedTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the failed date time.",
+ "readOnly": true
+ },
+ "targetCompletedTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the completed date time.",
+ "readOnly": true
+ },
+ "error": {
+ "$ref": "#/definitions/ExperimentExecutionActionTargetDetailsError",
+ "description": "The error of the action.",
+ "readOnly": true
+ }
+ }
+ },
+ "ExperimentExecutionDetails": {
+ "type": "object",
+ "description": "Model that represents the execution details of an Experiment.",
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "String of the resource type.",
+ "readOnly": true
+ },
+ "id": {
+ "type": "string",
+ "description": "String of the fully qualified resource ID.",
+ "readOnly": true
+ },
+ "name": {
+ "type": "string",
+ "description": "String of the resource name.",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/ExperimentExecutionDetailsProperties",
+ "description": "The properties of the experiment execution details.",
+ "readOnly": true
+ }
+ }
+ },
+ "ExperimentExecutionDetailsProperties": {
+ "type": "object",
+ "description": "Model that represents the extended properties of an experiment execution.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "description": "The status of the execution.",
+ "readOnly": true
+ },
+ "startedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the start date time.",
+ "readOnly": true
+ },
+ "stoppedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the stop date time.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Resource provisioning state. Not currently in use for executions.",
+ "readOnly": true
+ },
+ "failureReason": {
+ "type": "string",
+ "description": "The reason why the execution failed.",
+ "readOnly": true
+ },
+ "lastActionAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the last action date time.",
+ "readOnly": true
+ },
+ "runInformation": {
+ "$ref": "#/definitions/ExperimentExecutionDetailsPropertiesRunInformation",
+ "description": "The information of the experiment run.",
+ "readOnly": true
+ }
+ }
+ },
+ "ExperimentExecutionDetailsPropertiesRunInformation": {
+ "type": "object",
+ "description": "The information of the experiment run.",
+ "properties": {
+ "steps": {
+ "type": "array",
+ "description": "The steps of the experiment run.",
+ "items": {
+ "$ref": "#/definitions/StepStatus"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "stepName"
+ ]
+ }
+ }
+ },
+ "ExperimentExecutionListResult": {
+ "type": "object",
+ "description": "Model that represents a list of Experiment executions and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The ExperimentExecution items on this page",
+ "items": {
+ "$ref": "#/definitions/ExperimentExecution"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "ExperimentExecutionProperties": {
+ "type": "object",
+ "description": "Model that represents the execution properties of an Experiment.",
+ "properties": {
+ "status": {
+ "type": "string",
+ "description": "The status of the execution.",
+ "readOnly": true
+ },
+ "startedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the start date time.",
+ "readOnly": true
+ },
+ "stoppedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "String that represents the stop date time.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Resource provisioning state. Not currently in use for executions.",
+ "readOnly": true
+ }
+ }
+ },
+ "ExperimentListResult": {
+ "type": "object",
+ "description": "Model that represents a list of Experiment resources and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Experiment items on this page",
+ "items": {
+ "$ref": "#/definitions/Experiment"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "ExperimentProperties": {
+ "type": "object",
+ "description": "Model that represents the Experiment properties model.",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Most recent provisioning state for the given experiment resource.",
+ "readOnly": true
+ },
+ "steps": {
+ "type": "array",
+ "description": "List of steps.",
+ "items": {
+ "$ref": "#/definitions/ChaosExperimentStep"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "selectors": {
+ "type": "array",
+ "description": "List of selectors.",
+ "items": {
+ "$ref": "#/definitions/ChaosTargetSelector"
+ }
+ },
+ "customerDataStorage": {
+ "$ref": "#/definitions/CustomerDataStorageProperties",
+ "description": "Optional customer-managed Storage account where Experiment schema will be stored."
+ }
+ },
+ "required": [
+ "steps",
+ "selectors"
+ ]
+ },
+ "ExperimentUpdate": {
+ "type": "object",
+ "description": "Describes an experiment update.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The managed service identities assigned to this resource."
+ }
+ }
+ },
+ "FilterType": {
+ "type": "string",
+ "description": "Enum that discriminates between filter types. Currently only `Simple` type is supported.",
+ "enum": [
+ "Simple"
+ ],
+ "x-ms-enum": {
+ "name": "FilterType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Simple",
+ "value": "Simple",
+ "description": "Simple filter type."
+ }
+ ]
+ }
+ },
+ "KeyValuePair": {
+ "type": "object",
+ "description": "A map to describe the settings of an action.",
+ "properties": {
+ "key": {
+ "type": "string",
+ "description": "The name of the setting for the action.",
+ "minLength": 1
+ },
+ "value": {
+ "type": "string",
+ "description": "The value of the setting for the action.",
+ "minLength": 1
+ }
+ },
+ "required": [
+ "key",
+ "value"
+ ]
+ },
+ "PrivateAccess": {
+ "type": "object",
+ "description": "PrivateAccesses tracked resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateAccessProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "PrivateAccessListResult": {
+ "type": "object",
+ "description": "Model that represents a list of private access resources and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The PrivateAccess items on this page",
+ "items": {
+ "$ref": "#/definitions/PrivateAccess"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "PrivateAccessPatch": {
+ "type": "object",
+ "description": "Describes a private access update.",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "PrivateAccessProperties": {
+ "type": "object",
+ "description": "The properties of a private access resource",
+ "properties": {
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Most recent provisioning state for the given privateAccess resource.",
+ "readOnly": true
+ },
+ "privateEndpointConnections": {
+ "type": "array",
+ "description": "A readonly collection of private endpoint connection. Currently only one endpoint connection is supported.",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "readOnly": true
+ },
+ "publicNetworkAccess": {
+ "$ref": "#/definitions/PublicNetworkAccessOption",
+ "description": "Public Network Access Control for PrivateAccess resource."
+ }
+ }
+ },
+ "PrivateEndpoint": {
+ "type": "object",
+ "description": "The private endpoint resource.",
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "The ARM identifier for private endpoint.",
+ "readOnly": true
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "type": "object",
+ "description": "The private endpoint connection resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "description": "Resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "PrivateEndpointConnectionListResult": {
+ "type": "object",
+ "description": "A list of private link resources",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The PrivateEndpointConnection items on this page",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "PrivateEndpointConnectionProperties": {
+ "type": "object",
+ "description": "Properties of the private endpoint connection.",
+ "properties": {
+ "groupIds": {
+ "type": "array",
+ "description": "The group ids for the private endpoint resource.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "The private endpoint resource."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "A collection of information about the state of the connection between service consumer and provider."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "The provisioning state of the private endpoint connection resource.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "privateLinkServiceConnectionState"
+ ]
+ },
+ "PrivateEndpointServiceConnectionStatus": {
+ "type": "string",
+ "description": "The private endpoint connection status.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointServiceConnectionStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Pending",
+ "value": "Pending",
+ "description": "Pending status."
+ },
+ {
+ "name": "Approved",
+ "value": "Approved",
+ "description": "Approved status."
+ },
+ {
+ "name": "Rejected",
+ "value": "Rejected",
+ "description": "Rejected status."
+ }
+ ]
+ }
+ },
+ "PrivateLinkResource": {
+ "type": "object",
+ "description": "A private link resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "PrivateLinkResourceListResult": {
+ "type": "object",
+ "description": "A list of private link resources",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The PrivateLinkResource items on this page",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "PrivateLinkResourceProperties": {
+ "type": "object",
+ "description": "Properties of a private link resource.",
+ "properties": {
+ "groupId": {
+ "type": "string",
+ "description": "The private link resource group id.",
+ "readOnly": true
+ },
+ "requiredMembers": {
+ "type": "array",
+ "description": "The private link resource required member names.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "requiredZoneNames": {
+ "type": "array",
+ "description": "The private link resource private link DNS zone name.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState",
+ "description": "Resource provisioning state. Not currently in use.",
+ "readOnly": true
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "type": "object",
+ "description": "A collection of information about the state of the connection between service consumer and provider.",
+ "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."
+ }
+ }
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "Current provisioning state for a given Azure Chaos resource.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Creating",
+ "Updating",
+ "Deleting"
+ ],
+ "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": "Creating",
+ "value": "Creating",
+ "description": "Initial creation in progress."
+ },
+ {
+ "name": "Updating",
+ "value": "Updating",
+ "description": "Update in progress."
+ },
+ {
+ "name": "Deleting",
+ "value": "Deleting",
+ "description": "Deletion in progress."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "PublicNetworkAccessOption": {
+ "type": "string",
+ "description": "Public Network Access Control for PrivateAccess resource.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "PublicNetworkAccessOption",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Enabled",
+ "value": "Enabled",
+ "description": "Enabled access."
+ },
+ {
+ "name": "Disabled",
+ "value": "Disabled",
+ "description": "Disabled access."
+ }
+ ]
+ }
+ },
+ "SelectorType": {
+ "type": "string",
+ "description": "Enum of the selector type.",
+ "enum": [
+ "List",
+ "Query"
+ ],
+ "x-ms-enum": {
+ "name": "SelectorType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "List",
+ "value": "List",
+ "description": "List selector type."
+ },
+ {
+ "name": "Query",
+ "value": "Query",
+ "description": "Query selector type."
+ }
+ ]
+ }
+ },
+ "StepStatus": {
+ "type": "object",
+ "description": "Model that represents the a list of branches and branch statuses.",
+ "properties": {
+ "stepName": {
+ "type": "string",
+ "description": "The name of the step.",
+ "readOnly": true
+ },
+ "stepId": {
+ "type": "string",
+ "description": "The id of the step.",
+ "readOnly": true
+ },
+ "status": {
+ "type": "string",
+ "description": "The value of the status of the step.",
+ "readOnly": true
+ },
+ "branches": {
+ "type": "array",
+ "description": "The array of branches.",
+ "items": {
+ "$ref": "#/definitions/BranchStatus"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "branchName"
+ ]
+ }
+ }
+ },
+ "Target": {
+ "type": "object",
+ "description": "Model that represents a Target resource.",
+ "properties": {
+ "properties": {
+ "type": "object",
+ "description": "The properties of the target resource.",
+ "additionalProperties": {},
+ "x-ms-client-flatten": true
+ },
+ "location": {
+ "$ref": "#/definitions/Azure.Core.azureLocation",
+ "description": "Azure resource location."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "TargetListResult": {
+ "type": "object",
+ "description": "Model that represents a list of Target resources and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Target items on this page",
+ "items": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "TargetReference": {
+ "type": "object",
+ "description": "Model that represents a reference to a Target in the selector.",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/TargetReferenceType",
+ "description": "Enum of the Target reference type."
+ },
+ "id": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "String of the resource ID of a Target resource."
+ }
+ },
+ "required": [
+ "type",
+ "id"
+ ]
+ },
+ "TargetReferenceType": {
+ "type": "string",
+ "description": "Enum of the Target reference type.",
+ "enum": [
+ "ChaosTarget"
+ ],
+ "x-ms-enum": {
+ "name": "TargetReferenceType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "ChaosTarget",
+ "value": "ChaosTarget",
+ "description": "Chaos target reference type."
+ }
+ ]
+ }
+ },
+ "TargetType": {
+ "type": "object",
+ "description": "Model that represents a Target Type resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TargetTypeProperties",
+ "description": "The properties of the target type resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "TargetTypeListResult": {
+ "type": "object",
+ "description": "Model that represents a list of Target Type resources and a link for pagination.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The TargetType items on this page",
+ "items": {
+ "$ref": "#/definitions/TargetType"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "TargetTypeProperties": {
+ "type": "object",
+ "description": "Model that represents the base Target Type properties model.",
+ "properties": {
+ "displayName": {
+ "type": "string",
+ "description": "Localized string of the display name.",
+ "readOnly": true
+ },
+ "description": {
+ "type": "string",
+ "description": "Localized string of the description.",
+ "readOnly": true
+ },
+ "propertiesSchema": {
+ "type": "string",
+ "description": "URL to retrieve JSON schema of the Target Type properties.",
+ "maxLength": 2048,
+ "readOnly": true
+ },
+ "resourceTypes": {
+ "type": "array",
+ "description": "List of resource types this Target Type can extend.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ }
+ }
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/chaos/resource-manager/readme.md b/specification/chaos/resource-manager/readme.md
index d2cf20655c9e..a538728efaa5 100644
--- a/specification/chaos/resource-manager/readme.md
+++ b/specification/chaos/resource-manager/readme.md
@@ -24,13 +24,45 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor
These are the global settings for the chaos.
-``` yaml
+```yaml
title: ChaosManagementClient
description: Chaos Management Client
openapi-type: arm
-tag: package-preview-2024-03
+tag: package-preview-2024-11
```
+### Tag: package-preview-2024-11
+
+These settings apply only when `--tag=package-preview-2024-11` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2024-11'
+input-file:
+ - Microsoft.Chaos/preview/2024-11-01-preview/openapi.json
+suppressions:
+ - code: TrackedExtensionResourcesAreNotAllowed
+ from: openapi.json
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}"].get
+ reason: Not actually a tracked resource, but location property is required to avoid breaking changes
+ - code: RequestSchemaForTrackedResourcesMustHaveTags
+ from: openapi.json
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}"].put
+ reason: Not actually a tracked resource, but location property is required to avoid breaking changes
+ - code: TrackedExtensionResourcesAreNotAllowed
+ from: openapi.json
+ where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}"].put
+ reason: Not actually a tracked resource, but location property is required to avoid breaking changes
+ - code: TrackedResourcePatchOperation
+ from: openapi.json
+ where: $.definitions.Target
+ reason: Not actually a tracked resource, but location property is required to avoid breaking changes
+ - code: AvoidAdditionalProperties
+ from: openapi.json
+ where: $.definitions.Target.properties.properties
+ reason: Existing GA-exposed resource which relies on additionalProperties currently. Our RP will release a V2 in the future.
+ - code: PatchBodyParametersSchema
+ from: openapi.json
+ reason: already used in GA api version, fixing it will cause breaking change
+```
### Tag: package-preview-2024-03
@@ -84,11 +116,12 @@ directive:
transform: >
$["x-ms-client-name"] = "ChaosTargetQuerySelector";
```
+
### Tag: package-2024-01
These settings apply only when `--tag=package-2024-01` is specified on the command line.
-``` yaml $(tag) == 'package-2024-01'
+```yaml $(tag) == 'package-2024-01'
input-file:
- Microsoft.Chaos/stable/2024-01-01/capabilities.json
- Microsoft.Chaos/stable/2024-01-01/capabilityTypes.json
@@ -140,7 +173,7 @@ directive:
These settings apply only when `--tag=package-2023-11` is specified on the command line.
-``` yaml $(tag) == 'package-2023-11'
+```yaml $(tag) == 'package-2023-11'
input-file:
- Microsoft.Chaos/stable/2023-11-01/capabilities.json
- Microsoft.Chaos/stable/2023-11-01/capabilityTypes.json
@@ -192,7 +225,7 @@ directive:
These settings apply only when `--tag=package-preview-2023-10` is specified on the command line.
-``` yaml $(tag) == 'package-preview-2023-10'
+```yaml $(tag) == 'package-preview-2023-10'
input-file:
- Microsoft.Chaos/preview/2023-10-27-preview/capabilities.json
- Microsoft.Chaos/preview/2023-10-27-preview/capabilityTypes.json
@@ -245,7 +278,7 @@ directive:
These settings apply only when `--tag=package-preview-2023-09` is specified on the command line.
-``` yaml $(tag) == 'package-preview-2023-09'
+```yaml $(tag) == 'package-preview-2023-09'
input-file:
- Microsoft.Chaos/preview/2023-09-01-preview/capabilities.json
- Microsoft.Chaos/preview/2023-09-01-preview/capabilityTypes.json
@@ -297,7 +330,7 @@ directive:
These settings apply only when `--tag=package-2023-04-15-preview` is specified on the command line.
-``` yaml $(tag) == 'package-2023-04-15-preview'
+```yaml $(tag) == 'package-2023-04-15-preview'
input-file:
- Microsoft.Chaos/preview/2023-04-15-preview/capabilities.json
- Microsoft.Chaos/preview/2023-04-15-preview/capabilityTypes.json
@@ -311,7 +344,7 @@ input-file:
These settings apply only when `--tag=package-2023-04-01-preview` is specified on the command line.
-``` yaml $(tag) == 'package-2023-04-01-preview'
+```yaml $(tag) == 'package-2023-04-01-preview'
input-file:
- Microsoft.Chaos/preview/2023-04-01-preview/capabilities.json
- Microsoft.Chaos/preview/2023-04-01-preview/capabilityTypes.json
@@ -325,7 +358,7 @@ input-file:
These settings apply only when `--tag=package-2022-10-01-preview` is specified on the command line.
-``` yaml $(tag) == 'package-2022-10-01-preview'
+```yaml $(tag) == 'package-2022-10-01-preview'
directive:
- suppress: R3026
reason: Patch is not implemented in this version.
@@ -345,7 +378,7 @@ input-file:
These settings apply only when `--tag=package-2022-07-01-preview` is specified on the command line.
-``` yaml $(tag) == 'package-2022-07-01-preview'
+```yaml $(tag) == 'package-2022-07-01-preview'
directive:
- suppress: R3026
reason: Patch is not implemented in this version.
@@ -365,7 +398,7 @@ input-file:
These settings apply only when `--tag=package-2021-09-15-preview` is specified on the command line.
-``` yaml $(tag) == 'package-2021-09-15-preview'
+```yaml $(tag) == 'package-2021-09-15-preview'
directive:
- suppress: R3026
reason: Patch is not implemented in this version.
@@ -390,7 +423,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
- repo: azure-sdk-for-java
@@ -423,7 +456,7 @@ See configuration in [readme.csharp.md](./readme.csharp.md)
## Suppression
-``` yaml
+```yaml
directive:
- suppress: TopLevelResourcesListBySubscription
where: $.definitions.target
@@ -436,7 +469,7 @@ directive:
where: $.definitions.target
from: targets.json
reason: |-
- we defined the toplevelresourcelistbysubscription here:
+ we defined the the top level resource list here:
https://github.com/mariohdez/azure-rest-api-specs/blob/5a870f3163ae6e9cc5ed33d40cfff61764050213/specification/chaos/resource-manager/Microsoft.Chaos/preview/2021-09-15-preview/targets.json#L37
- suppress: EnumInsteadOfBoolean
From a21197a7277d3ec668b1a9dd2f36de329b987f04 Mon Sep 17 00:00:00 2001
From: Mike Harder
Date: Wed, 8 Jan 2025 11:29:14 -0800
Subject: [PATCH 069/128] [cSpell.json] Add "eng/**" to ignorePaths (#32044)
---
cSpell.json | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/cSpell.json b/cSpell.json
index f51a7b8dc4b6..1e9f2b5a716c 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -24,10 +24,11 @@
"teh"
],
"ignorePaths": [
- "node_modules/**",
"**/examples/**",
"**/package-lock.json",
"cSpell.json",
+ "eng/**",
+ "node_modules/**"
],
"ignoreRegExpList": [
"v\\d",
From 54b00e5fd64cef5de0194aeed67bff2cd4ad0a84 Mon Sep 17 00:00:00 2001
From: hmmorales <100385146+hmmorales@users.noreply.github.com>
Date: Wed, 8 Jan 2025 13:03:09 -0800
Subject: [PATCH 070/128] Handle C# SDK Naming Requirements for Autogenerated
Specs (#32006)
* test
* update client.tsp file
* ...
* ...
* ci fix
* ...
* rename dataflow prop & remove workaround
---
.../iotoperations/IoTOperations.Management/client.tsp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/specification/iotoperations/IoTOperations.Management/client.tsp b/specification/iotoperations/IoTOperations.Management/client.tsp
index cf64e894694f..ad321de4dbc7 100644
--- a/specification/iotoperations/IoTOperations.Management/client.tsp
+++ b/specification/iotoperations/IoTOperations.Management/client.tsp
@@ -5,3 +5,10 @@ using Azure.ClientGenerator.Core;
@@clientName(Microsoft.IoTOperations, "IoTOperationsMgmt", "python");
@@clientName(Microsoft.IoTOperations, "IoTOperationsManagementClient", "java");
+
+#suppress "@azure-tools/typespec-azure-core/casing-style"
+namespace Microsoft.IoTOperations {
+ @@clientName(CertManagerCertOptions, "CertManagerCertConfig", "csharp");
+ @@clientName(DataflowOperation, "DataflowAction", "csharp");
+ @@clientName(PrincipalDefinition, "PrincipalConfig", "csharp");
+}
From 636f5044954edbc5a53a951eac48b378985cb10c Mon Sep 17 00:00:00 2001
From: Andrea Piccione
Date: Wed, 8 Jan 2025 13:35:48 -0800
Subject: [PATCH 071/128] [Microsoft.ConfidentialLedger] Add new ARM API
version preview/2024-09-19-preview (#30653)
* Copy files from preview/2024-07-09-preview
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to preview/2024-09-19-preview
Updated the API version from preview/2024-07-09-preview to preview/2024-09-19-preview.
* Added tag for 2024-09-19-preview in readme file
* Add enclave platform property
* Fix prettier
* Add application type property
---
.../confidentialledger.json | 949 ++++++++++++++++++
.../examples/CheckNameAvailability.json | 17 +
.../examples/ConfidentialLedger_Backup.json | 24 +
.../examples/ConfidentialLedger_Create.json | 112 +++
.../examples/ConfidentialLedger_Delete.json | 25 +
.../examples/ConfidentialLedger_Get.json | 46 +
.../examples/ConfidentialLedger_List.json | 50 +
.../ConfidentialLedger_ListBySub.json | 48 +
.../examples/ConfidentialLedger_Restore.json | 25 +
.../examples/ConfidentialLedger_Update.json | 77 ++
.../examples/ManagedCCF_Backup.json | 24 +
.../examples/ManagedCCF_Create.json | 71 ++
.../examples/ManagedCCF_Delete.json | 25 +
.../examples/ManagedCCF_Get.json | 47 +
.../examples/ManagedCCF_List.json | 52 +
.../examples/ManagedCCF_ListBySub.json | 51 +
.../examples/ManagedCCF_Restore.json | 25 +
.../examples/ManagedCCF_Update.json | 66 ++
.../examples/Operations_Get.json | 23 +
.../2024-09-19-preview/managedccf.json | 727 ++++++++++++++
.../resource-manager/readme.md | 12 +-
21 files changed, 2495 insertions(+), 1 deletion(-)
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/confidentialledger.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/CheckNameAvailability.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Backup.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Create.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Delete.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Get.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_List.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_ListBySub.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Restore.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Update.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Backup.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Create.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Delete.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Get.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_List.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_ListBySub.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Restore.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Update.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/Operations_Get.json
create mode 100644 specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/managedccf.json
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/confidentialledger.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/confidentialledger.json
new file mode 100644
index 000000000000..1bbe648e4524
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/confidentialledger.json
@@ -0,0 +1,949 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-19-preview",
+ "title": "ConfidentialLedger",
+ "description": "Microsoft Azure Confidential Compute Ledger Control Plane REST API version 2020-12-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.ConfidentialLedger/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "operationId": "Operations_List",
+ "description": "Retrieves a list of available API operations",
+ "summary": "Retrieves a list of available API operations under this Resource Provider.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the list of operations under Microsoft.ConfidentialLedger resource provider.",
+ "schema": {
+ "$ref": "#/definitions/ResourceProviderOperationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger does not exist.)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "OperationsGet": {
+ "$ref": "./examples/Operations_Get.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "NameAvailability"
+ ],
+ "description": "To check whether a resource name is available.",
+ "operationId": "CheckNameAvailability",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "nameAvailabilityRequest",
+ "in": "body",
+ "description": "Name availability request payload.",
+ "required": true,
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "CheckNameAvailability": {
+ "$ref": "./examples/CheckNameAvailability.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}": {
+ "get": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Retrieves information about a Confidential Ledger resource.",
+ "description": "Retrieves the properties of a Confidential Ledger.",
+ "operationId": "Ledger_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/LedgerNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the Confidential Ledger",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger does not exist.)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerGet": {
+ "$ref": "./examples/ConfidentialLedger_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Deletes a Confidential Ledger resource.",
+ "description": "Deletes an existing Confidential Ledger.",
+ "operationId": "Ledger_Delete",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/LedgerNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the Confidential Ledger is deleted."
+ },
+ "202": {
+ "description": "The Confidential Ledger resource will be deleted asynchronously"
+ },
+ "204": {
+ "description": "The request was successful; Confidential Ledger does not exist."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 409 - Conflict(Confidential Ledger is in a non-terminal state due to an ongoing operation.)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerDelete": {
+ "$ref": "./examples/ConfidentialLedger_Delete.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Creates a Confidential Ledger.",
+ "description": "Creates a Confidential Ledger with the specified ledger parameters.",
+ "operationId": "Ledger_Create",
+ "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/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/LedgerNameParameter"
+ },
+ {
+ "name": "confidentialLedger",
+ "in": "body",
+ "description": "Confidential Ledger Create Request Body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful and ledger was created; response contains the Confidential Ledger",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ },
+ "201": {
+ "description": "The Confidential Ledger resource will be created asynchronously. Response contains the Confidential Ledger being provisioned",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger could not be created/updated)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerCreate": {
+ "$ref": "./examples/ConfidentialLedger_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Update Confidential Ledger properties",
+ "description": "Updates properties of Confidential Ledger",
+ "operationId": "Ledger_Update",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/LedgerNameParameter"
+ },
+ {
+ "name": "confidentialLedger",
+ "in": "body",
+ "description": "Confidential Ledger request body for Updating Ledger",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful and ledger was updated; response contains the Confidential Ledger",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ },
+ "201": {
+ "description": "The Confidential Ledger resource will be updated asynchronously. Check the provisioningState field to monitor the progress of your operation."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger could not be created/updated)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerUpdate": {
+ "$ref": "./examples/ConfidentialLedger_Update.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers": {
+ "get": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Retrieves information about all Confidential Ledger resources under the given subscription and resource group",
+ "description": "Retrieves the properties of all Confidential Ledgers.",
+ "operationId": "Ledger_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "type": "string",
+ "description": "The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'",
+ "name": "$filter",
+ "in": "query"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the Confidential Ledger",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedgerList"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger does not exist.)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerList": {
+ "$ref": "./examples/ConfidentialLedger_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/ledgers/": {
+ "get": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Retrieves information about all Confidential Ledger resources under the given subscription",
+ "description": "Retrieves the properties of all Confidential Ledgers.",
+ "operationId": "Ledger_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "type": "string",
+ "description": "The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'",
+ "name": "$filter",
+ "in": "query"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the list of Confidential Ledgers",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedgerList"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger does not exist.)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerListBySub": {
+ "$ref": "./examples/ConfidentialLedger_ListBySub.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}/backup": {
+ "post": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Performs the backup operation on a Confidential Ledger Resource.",
+ "description": "Backs up a Confidential Ledger Resource.",
+ "operationId": "Ledger_Backup",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/LedgerNameParameter"
+ },
+ {
+ "name": "confidentialLedger",
+ "in": "body",
+ "description": "Confidential Ledger Backup Request Body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedgerBackup"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains a message stating the Confidential Ledger Resource is successfully being backed up.",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedgerBackupResponse"
+ }
+ },
+ "202": {
+ "description": "The Confidential Ledger Resource will be backed up asynchronously."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure. 404 - NotFound (Confidential Ledger does not exist.)",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerBackup": {
+ "$ref": "./examples/ConfidentialLedger_Backup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}/restore": {
+ "post": {
+ "tags": [
+ "Confidential Ledger"
+ ],
+ "summary": "Performs the restore operation to spin up a newly restored Confidential Ledger Resource.",
+ "description": "Restores a Confidential Ledger Resource.",
+ "operationId": "Ledger_Restore",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/LedgerNameParameter"
+ },
+ {
+ "name": "confidentialLedger",
+ "in": "body",
+ "description": "Confidential Ledger Restore Request Body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedgerRestore"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains a message stating the Confidential Ledger Resource is successfully being restored.",
+ "schema": {
+ "$ref": "#/definitions/ConfidentialLedgerRestoreResponse"
+ }
+ },
+ "202": {
+ "description": "The Confidential Ledger Resource will be restored asynchronously. Check the provisioningState field to monitor the progress of your operation."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerRestore": {
+ "$ref": "./examples/ConfidentialLedger_Restore.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ResourceProviderOperationList": {
+ "description": "List containing this Resource Provider's available operations.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Resource provider operations list.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceProviderOperationDefinition"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "readOnly": true
+ },
+ "nextLink": {
+ "description": "The URI that can be used to request the next page for list of Azure operations.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ResourceProviderOperationDefinition": {
+ "description": "Describes the Resource Provider Operation.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Resource provider operation name.",
+ "type": "string"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is data action or not.",
+ "type": "boolean"
+ },
+ "display": {
+ "description": "Details about the operations",
+ "$ref": "#/definitions/ResourceProviderOperationDisplay"
+ }
+ }
+ },
+ "ResourceProviderOperationDisplay": {
+ "description": "Describes the properties of the Operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Name of the resource provider.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Name of the resource type.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Name of the resource provider operation.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the resource provider operation.",
+ "type": "string"
+ }
+ }
+ },
+ "ConfidentialLedgerType": {
+ "type": "string",
+ "description": "Type of the ledger. Private means transaction data is encrypted.",
+ "enum": [
+ "Unknown",
+ "Public",
+ "Private"
+ ],
+ "x-ms-enum": {
+ "name": "LedgerType",
+ "modelAsString": true
+ }
+ },
+ "ProvisioningState": {
+ "type": "string",
+ "description": "Object representing ProvisioningState for Confidential Ledger.",
+ "enum": [
+ "Unknown",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Creating",
+ "Deleting",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "RunningState": {
+ "type": "string",
+ "description": "Object representing RunningState for Confidential Ledger.",
+ "enum": [
+ "Active",
+ "Paused",
+ "Unknown",
+ "Pausing",
+ "Resuming"
+ ],
+ "x-ms-enum": {
+ "name": "RunningState",
+ "modelAsString": true
+ }
+ },
+ "LedgerRoleName": {
+ "description": "LedgerRole associated with the Security Principal of Ledger",
+ "type": "string",
+ "enum": [
+ "Reader",
+ "Contributor",
+ "Administrator"
+ ],
+ "x-ms-enum": {
+ "name": "LedgerRoleName",
+ "modelAsString": true
+ }
+ },
+ "LedgerSku": {
+ "description": "SKU associated with the ledger resource",
+ "type": "string",
+ "enum": [
+ "Standard",
+ "Basic",
+ "Unknown"
+ ],
+ "x-ms-enum": {
+ "name": "LedgerSku",
+ "modelAsString": true
+ }
+ },
+ "CertBasedSecurityPrincipal": {
+ "type": "object",
+ "description": "Cert based security principal with Ledger RoleName",
+ "properties": {
+ "cert": {
+ "description": "Public key of the user cert (.pem or .cer)",
+ "type": "string"
+ },
+ "ledgerRoleName": {
+ "$ref": "#/definitions/LedgerRoleName"
+ }
+ }
+ },
+ "AADBasedSecurityPrincipal": {
+ "type": "object",
+ "description": "AAD based security principal with associated Ledger RoleName",
+ "properties": {
+ "principalId": {
+ "description": "UUID/GUID based Principal Id of the Security Principal",
+ "type": "string"
+ },
+ "tenantId": {
+ "description": "UUID/GUID based Tenant Id of the Security Principal",
+ "type": "string"
+ },
+ "ledgerRoleName": {
+ "$ref": "#/definitions/LedgerRoleName"
+ }
+ }
+ },
+ "NodeCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of CCF nodes in the Managed CCF.",
+ "title": "NodeCount"
+ },
+ "MaxBodySizeInMb": {
+ "type": "integer",
+ "format": "int32",
+ "description": "CCF Property for the maximum size of the http request body: 1MB, 5MB, 10MB.",
+ "title": "maxBodySizeInMb"
+ },
+ "EnclavePlatform": {
+ "type": "string",
+ "description": "Object representing the enclave platform for the Confidential Ledger application. Defaults to IntelSgx.",
+ "enum": [
+ "IntelSgx",
+ "AmdSevSnp"
+ ],
+ "x-ms-enum": {
+ "name": "EnclavePlatform",
+ "modelAsString": true
+ }
+ },
+ "ApplicationType": {
+ "type": "string",
+ "description": "Object representing the application type of the Confidential Ledger. Defaults to ConfidentialLedger.",
+ "enum": [
+ "ConfidentialLedger",
+ "CodeTransparency"
+ ],
+ "x-ms-enum": {
+ "name": "ApplicationType",
+ "modelAsString": true
+ }
+ },
+ "LedgerProperties": {
+ "type": "object",
+ "description": "Additional Confidential Ledger properties.",
+ "title": "LedgerProperties",
+ "properties": {
+ "ledgerName": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Unique name for the Confidential Ledger."
+ },
+ "ledgerUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Endpoint for calling Ledger Service."
+ },
+ "identityServiceUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Endpoint for accessing network identity."
+ },
+ "ledgerInternalNamespace": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Internal namespace for the Ledger"
+ },
+ "runningState": {
+ "description": "Object representing RunningState for Ledger.",
+ "$ref": "#/definitions/RunningState"
+ },
+ "ledgerType": {
+ "description": "Type of Confidential Ledger",
+ "$ref": "#/definitions/ConfidentialLedgerType"
+ },
+ "provisioningState": {
+ "description": "Provisioning state of Ledger Resource",
+ "readOnly": true,
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "ledgerSku": {
+ "description": "SKU associated with the ledger",
+ "$ref": "#/definitions/LedgerSku"
+ },
+ "aadBasedSecurityPrincipals": {
+ "description": "Array of all AAD based Security Principals.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AADBasedSecurityPrincipal"
+ },
+ "x-ms-identifiers": [
+ "principalId"
+ ]
+ },
+ "certBasedSecurityPrincipals": {
+ "description": "Array of all cert based Security Principals.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CertBasedSecurityPrincipal"
+ },
+ "x-ms-identifiers": []
+ },
+ "hostLevel": {
+ "type": "string",
+ "readOnly": false,
+ "description": "CCF Property for the logging level for the untrusted host: Trace, Debug, Info, Fail, Fatal."
+ },
+ "maxBodySizeInMb": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": false,
+ "description": "CCF Property for the maximum size of the http request body: 1MB, 5MB, 10MB.",
+ "$ref": "#/definitions/MaxBodySizeInMb"
+ },
+ "subjectName": {
+ "type": "string",
+ "readOnly": false,
+ "description": "CCF Property for the subject name to include in the node certificate. Default: CN=CCF Node."
+ },
+ "nodeCount": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": false,
+ "description": "Number of CCF nodes in the ACC Ledger.",
+ "$ref": "#/definitions/NodeCount"
+ },
+ "writeLBAddressPrefix": {
+ "type": "string",
+ "readOnly": false,
+ "description": "Prefix for the write load balancer. Example: write"
+ },
+ "workerThreads": {
+ "type": "integer",
+ "format": "int32",
+ "readOnly": false,
+ "description": "Number of additional threads processing incoming client requests in the enclave (modify with care!)"
+ },
+ "enclavePlatform": {
+ "description": "Enclave platform of the Confidential Ledger.",
+ "readOnly": false,
+ "$ref": "#/definitions/EnclavePlatform"
+ },
+ "applicationType": {
+ "description": "Application type of the Confidential Ledger.",
+ "readOnly": false,
+ "$ref": "#/definitions/ApplicationType"
+ }
+ }
+ },
+ "ConfidentialLedgerBackup": {
+ "description": "Object representing Backup properties of a Confidential Ledger Resource.",
+ "type": "object",
+ "properties": {
+ "restoreRegion": {
+ "type": "string",
+ "readOnly": false,
+ "description": "The region where the backup of the ledger will eventually be restored to."
+ },
+ "uri": {
+ "type": "string",
+ "readOnly": false,
+ "description": "SAS URI used to access the backup Fileshare.",
+ "x-ms-secret": true
+ }
+ },
+ "required": [
+ "uri"
+ ]
+ },
+ "ConfidentialLedgerRestore": {
+ "description": "Object representing Restore properties of a Confidential Ledger Resource.",
+ "type": "object",
+ "properties": {
+ "fileShareName": {
+ "type": "string",
+ "readOnly": false,
+ "description": "Fileshare where the ledger backup is stored."
+ },
+ "restoreRegion": {
+ "type": "string",
+ "readOnly": false,
+ "description": "The region the ledger is being restored to."
+ },
+ "uri": {
+ "type": "string",
+ "readOnly": false,
+ "description": "SAS URI used to access the backup fileshare.",
+ "x-ms-secret": true
+ }
+ },
+ "required": [
+ "fileShareName",
+ "restoreRegion",
+ "uri"
+ ]
+ },
+ "ConfidentialLedgerBackupResponse": {
+ "description": "Object representing the backup response of a Confidential Ledger Resource.",
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Response body stating if the ledger is being backed up."
+ }
+ }
+ },
+ "ConfidentialLedgerRestoreResponse": {
+ "description": "Object representing the restore response of a Confidential Ledger Resource.",
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Response body stating if the ledger is being restored."
+ }
+ }
+ },
+ "ConfidentialLedger": {
+ "type": "object",
+ "description": "Confidential Ledger. Contains the properties of Confidential Ledger Resource.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Properties of Confidential Ledger Resource.",
+ "$ref": "#/definitions/LedgerProperties"
+ }
+ }
+ },
+ "ConfidentialLedgerList": {
+ "description": "Object that includes an array of Confidential Ledgers and a possible link for next set.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Confidential Ledgers",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConfidentialLedger"
+ }
+ },
+ "nextLink": {
+ "description": "The URL the client should use to fetch the next page (per server side paging).",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "LedgerNameParameter": {
+ "name": "ledgerName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the Confidential Ledger",
+ "pattern": "^[a-zA-Z0-9]",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/CheckNameAvailability.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/CheckNameAvailability.json
new file mode 100644
index 000000000000..9eeb303e9e96
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/CheckNameAvailability.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-09-19-preview",
+ "nameAvailabilityRequest": {
+ "name": "sample-name",
+ "type": "Microsoft.ConfidentialLedger/ledgers"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Backup.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Backup.json
new file mode 100644
index 000000000000..0f4be4f689f8
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Backup.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "ledgerName": "DummyLedgerName",
+ "confidentialLedger": {
+ "restoreRegion": "EastUS",
+ "uri": "DummySASUri"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "message": "Backup Created for Ledger: DummyLedgerName."
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Create.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Create.json
new file mode 100644
index 000000000000..431420562f56
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Create.json
@@ -0,0 +1,112 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "ledgerName": "DummyLedgerName",
+ "confidentialLedger": {
+ "properties": {
+ "ledgerType": "Public",
+ "ledgerSku": "Standard",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ],
+ "certBasedSecurityPrincipals": [
+ {
+ "cert": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "ledgerRoleName": "Reader"
+ }
+ ],
+ "hostLevel": "Info",
+ "maxBodySizeInMb": 1,
+ "subjectName": "CN=CCF Node",
+ "nodeCount": 3,
+ "writeLBAddressPrefix": "write",
+ "workerThreads": 0
+ },
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "runningState": "Active",
+ "ledgerName": "DummyLedgerName",
+ "ledgerUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "ledgerType": "Public",
+ "ledgerSku": "Standard",
+ "ledgerInternalNamespace": "dummyNamespace",
+ "provisioningState": "Succeeded",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ],
+ "certBasedSecurityPrincipals": [
+ {
+ "cert": "-----BEGIN CERTIFICATE-----\nMIIDUjCCAjqgAwIBAgIQJ2IrDBawSkiAbkBYmiAopDANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwHhcNMjAwOTIzMjIxODQ2WhcNMjEwOTIzMjIyODQ2WjAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCX2s/Eu4q/eQ63N+Ugeg5oAciZua/YCJr41c/696szvSY7Zg1SNJlW88/nbz70+QpO55OmqlEE3QCU+T0Vl/h0Gf//n1PYcoBbTGUnYEmV+fTTHict6rFiEwrGJ62tvcpYgwapInSLyEeUzjki0zhOLJ1OfRnYd1eGnFVMpE5aVjiS8Q5dmTEUyd51EIprGE8RYAW9aeWSwTH7gjHUsRlJnHKcdhaK/v5QKJnNu5bzPFUcpC0ZBcizoMPAtroLAD4B68Jl0z3op18MgZe6lRrVoWuxfqnk5GojuB/Vu8ohAZKoFhQ6NB6r+LL2AUs+Zr7Bt26IkEdR178n9JMEA4gHAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBS/a7PU9iOfOKEyZCp11Oen5VSuuDAdBgNVHQ4EFgQUv2uz1PYjnzihMmQqddTnp+VUrrgwDQYJKoZIhvcNAQELBQADggEBAF5q2fDwnse8egXhfaJCqqM969E9gSacqFmASpoDJPRPEX7gqoO7v1ww7nqRtRDoRiBvo/yNk7jlSAkRN3nRRnZLZZ3MYQdmCr4FGyIqRg4Y94+nja+Du9pDD761rxRktMVPSOaAVM/E5DQvscDlPvlPYe9mkcrLCE4DXYpiMmLT8Tm55LJJq5m07dVDgzAIR1L/hmEcbK0pnLgzciMtMLxGO2udnyyW/UW9WxnjvrrD2JluTHH9mVbb+XQP1oFtlRBfH7aui1ZgWfKvxrdP4zdK9QoWSUvRux3TLsGmHRBjBMtqYDY3y5mB+aNjLelvWpeVb0m2aOSVXynrLwNCAVA=\n-----END CERTIFICATE-----",
+ "ledgerRoleName": "Reader"
+ }
+ ]
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ledgers",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "runningState": "Unknown",
+ "ledgerName": "DummyLedgerName",
+ "ledgerType": "Public",
+ "ledgerInternalNamespace": "dummyNamespace",
+ "provisioningState": "Creating",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ],
+ "certBasedSecurityPrincipals": [
+ {
+ "cert": "-----BEGIN CERTIFICATE-----\nMIIDUjCCAjqgAwIBAgIQJ2IrDBawSkiAbkBYmiAopDANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwHhcNMjAwOTIzMjIxODQ2WhcNMjEwOTIzMjIyODQ2WjAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCX2s/Eu4q/eQ63N+Ugeg5oAciZua/YCJr41c/696szvSY7Zg1SNJlW88/nbz70+QpO55OmqlEE3QCU+T0Vl/h0Gf//n1PYcoBbTGUnYEmV+fTTHict6rFiEwrGJ62tvcpYgwapInSLyEeUzjki0zhOLJ1OfRnYd1eGnFVMpE5aVjiS8Q5dmTEUyd51EIprGE8RYAW9aeWSwTH7gjHUsRlJnHKcdhaK/v5QKJnNu5bzPFUcpC0ZBcizoMPAtroLAD4B68Jl0z3op18MgZe6lRrVoWuxfqnk5GojuB/Vu8ohAZKoFhQ6NB6r+LL2AUs+Zr7Bt26IkEdR178n9JMEA4gHAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBS/a7PU9iOfOKEyZCp11Oen5VSuuDAdBgNVHQ4EFgQUv2uz1PYjnzihMmQqddTnp+VUrrgwDQYJKoZIhvcNAQELBQADggEBAF5q2fDwnse8egXhfaJCqqM969E9gSacqFmASpoDJPRPEX7gqoO7v1ww7nqRtRDoRiBvo/yNk7jlSAkRN3nRRnZLZZ3MYQdmCr4FGyIqRg4Y94+nja+Du9pDD761rxRktMVPSOaAVM/E5DQvscDlPvlPYe9mkcrLCE4DXYpiMmLT8Tm55LJJq5m07dVDgzAIR1L/hmEcbK0pnLgzciMtMLxGO2udnyyW/UW9WxnjvrrD2JluTHH9mVbb+XQP1oFtlRBfH7aui1ZgWfKvxrdP4zdK9QoWSUvRux3TLsGmHRBjBMtqYDY3y5mB+aNjLelvWpeVb0m2aOSVXynrLwNCAVA=\n-----END CERTIFICATE-----",
+ "ledgerRoleName": "Reader"
+ }
+ ]
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ledgers",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Delete.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Delete.json
new file mode 100644
index 000000000000..4cc1a44a36dd
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Delete.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "ledgerName": "DummyLedgerName"
+ },
+ "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/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Get.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Get.json
new file mode 100644
index 000000000000..ecc139965d39
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Get.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "ledgerName": "DummyLedgerName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "ledgerName": "DummyLedgerName",
+ "ledgerUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "ledgerType": "Public",
+ "ledgerSku": "Standard",
+ "runningState": "Active",
+ "ledgerInternalNamespace": "dummyNamespace",
+ "provisioningState": "Succeeded",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ]
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ledgers",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_List.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_List.json
new file mode 100644
index 000000000000..990ef1db4f74
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_List.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "runningState": "Active",
+ "ledgerName": "DummyLedgerName",
+ "ledgerUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "ledgerType": "Public",
+ "ledgerSku": "Standard",
+ "ledgerInternalNamespace": "dummyNamespace",
+ "provisioningState": "Succeeded",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ]
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ledgers",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_ListBySub.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_ListBySub.json
new file mode 100644
index 000000000000..1363dada536c
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_ListBySub.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "runningState": "Active",
+ "ledgerName": "DummyLedgerName",
+ "ledgerUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "ledgerType": "Public",
+ "ledgerSku": "Standard",
+ "ledgerInternalNamespace": "dummyNamespace",
+ "provisioningState": "Succeeded",
+ "certBasedSecurityPrincipals": [
+ {
+ "cert": "-----BEGIN CERTIFICATE-----\nMIIDUjCCAjqgAwIBAgIQJ2IrDBawSkiAbkBYmiAopDANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwHhcNMjAwOTIzMjIxODQ2WhcNMjEwOTIzMjIyODQ2WjAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCX2s/Eu4q/eQ63N+Ugeg5oAciZua/YCJr41c/696szvSY7Zg1SNJlW88/nbz70+QpO55OmqlEE3QCU+T0Vl/h0Gf//n1PYcoBbTGUnYEmV+fTTHict6rFiEwrGJ62tvcpYgwapInSLyEeUzjki0zhOLJ1OfRnYd1eGnFVMpE5aVjiS8Q5dmTEUyd51EIprGE8RYAW9aeWSwTH7gjHUsRlJnHKcdhaK/v5QKJnNu5bzPFUcpC0ZBcizoMPAtroLAD4B68Jl0z3op18MgZe6lRrVoWuxfqnk5GojuB/Vu8ohAZKoFhQ6NB6r+LL2AUs+Zr7Bt26IkEdR178n9JMEA4gHAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBS/a7PU9iOfOKEyZCp11Oen5VSuuDAdBgNVHQ4EFgQUv2uz1PYjnzihMmQqddTnp+VUrrgwDQYJKoZIhvcNAQELBQADggEBAF5q2fDwnse8egXhfaJCqqM969E9gSacqFmASpoDJPRPEX7gqoO7v1ww7nqRtRDoRiBvo/yNk7jlSAkRN3nRRnZLZZ3MYQdmCr4FGyIqRg4Y94+nja+Du9pDD761rxRktMVPSOaAVM/E5DQvscDlPvlPYe9mkcrLCE4DXYpiMmLT8Tm55LJJq5m07dVDgzAIR1L/hmEcbK0pnLgzciMtMLxGO2udnyyW/UW9WxnjvrrD2JluTHH9mVbb+XQP1oFtlRBfH7aui1ZgWfKvxrdP4zdK9QoWSUvRux3TLsGmHRBjBMtqYDY3y5mB+aNjLelvWpeVb0m2aOSVXynrLwNCAVA=\n-----END CERTIFICATE-----",
+ "ledgerRoleName": "Reader"
+ }
+ ]
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ledgers",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Restore.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Restore.json
new file mode 100644
index 000000000000..1988d74415bf
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Restore.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "ledgerName": "DummyLedgerName",
+ "confidentialLedger": {
+ "fileShareName": "DummyFileShareName",
+ "restoreRegion": "EastUS",
+ "uri": "DummySASUri"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "message": "Restore Created for Ledger : DummyLedgerName."
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Update.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Update.json
new file mode 100644
index 000000000000..5b83002f9981
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Update.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "ledgerName": "DummyLedgerName",
+ "confidentialLedger": {
+ "properties": {
+ "ledgerType": "Public",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ],
+ "certBasedSecurityPrincipals": [
+ {
+ "cert": "-----BEGIN CERTIFICATE-----\nMIIDUjCCAjqgAwIBAgIQJ2IrDBawSkiAbkBYmiAopDANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwHhcNMjAwOTIzMjIxODQ2WhcNMjEwOTIzMjIyODQ2WjAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCX2s/Eu4q/eQ63N+Ugeg5oAciZua/YCJr41c/696szvSY7Zg1SNJlW88/nbz70+QpO55OmqlEE3QCU+T0Vl/h0Gf//n1PYcoBbTGUnYEmV+fTTHict6rFiEwrGJ62tvcpYgwapInSLyEeUzjki0zhOLJ1OfRnYd1eGnFVMpE5aVjiS8Q5dmTEUyd51EIprGE8RYAW9aeWSwTH7gjHUsRlJnHKcdhaK/v5QKJnNu5bzPFUcpC0ZBcizoMPAtroLAD4B68Jl0z3op18MgZe6lRrVoWuxfqnk5GojuB/Vu8ohAZKoFhQ6NB6r+LL2AUs+Zr7Bt26IkEdR178n9JMEA4gHAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBS/a7PU9iOfOKEyZCp11Oen5VSuuDAdBgNVHQ4EFgQUv2uz1PYjnzihMmQqddTnp+VUrrgwDQYJKoZIhvcNAQELBQADggEBAF5q2fDwnse8egXhfaJCqqM969E9gSacqFmASpoDJPRPEX7gqoO7v1ww7nqRtRDoRiBvo/yNk7jlSAkRN3nRRnZLZZ3MYQdmCr4FGyIqRg4Y94+nja+Du9pDD761rxRktMVPSOaAVM/E5DQvscDlPvlPYe9mkcrLCE4DXYpiMmLT8Tm55LJJq5m07dVDgzAIR1L/hmEcbK0pnLgzciMtMLxGO2udnyyW/UW9WxnjvrrD2JluTHH9mVbb+XQP1oFtlRBfH7aui1ZgWfKvxrdP4zdK9QoWSUvRux3TLsGmHRBjBMtqYDY3y5mB+aNjLelvWpeVb0m2aOSVXynrLwNCAVA=\n-----END CERTIFICATE-----",
+ "ledgerRoleName": "Reader"
+ }
+ ]
+ },
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties",
+ "additionProps2": "additional property value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "runningState": "Active",
+ "ledgerName": "DummyLedgerName",
+ "ledgerUri": "https://dummyledgername.confidential-ledger.azure.com",
+ "identityServiceUri": "https://identity.confidential-ledger.core.azure.com/ledgerIdentity/dummyledgername",
+ "ledgerSku": "Standard",
+ "ledgerType": "Public",
+ "ledgerInternalNamespace": "dummyNamespace",
+ "provisioningState": "Succeeded",
+ "aadBasedSecurityPrincipals": [
+ {
+ "principalId": "34621747-6fc8-4771-a2eb-72f31c461f2e",
+ "tenantId": "bce123b9-2b7b-4975-8360-5ca0b9b1cd08",
+ "ledgerRoleName": "Administrator"
+ }
+ ],
+ "certBasedSecurityPrincipals": [
+ {
+ "cert": "-----BEGIN CERTIFICATE-----\nMIIDUjCCAjqgAwIBAgIQJ2IrDBawSkiAbkBYmiAopDANBgkqhkiG9w0BAQsFADAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwHhcNMjAwOTIzMjIxODQ2WhcNMjEwOTIzMjIyODQ2WjAmMSQwIgYDVQQDExtTeW50aGV0aWNzIExlZGdlciBVc2VyIENlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCX2s/Eu4q/eQ63N+Ugeg5oAciZua/YCJr41c/696szvSY7Zg1SNJlW88/nbz70+QpO55OmqlEE3QCU+T0Vl/h0Gf//n1PYcoBbTGUnYEmV+fTTHict6rFiEwrGJ62tvcpYgwapInSLyEeUzjki0zhOLJ1OfRnYd1eGnFVMpE5aVjiS8Q5dmTEUyd51EIprGE8RYAW9aeWSwTH7gjHUsRlJnHKcdhaK/v5QKJnNu5bzPFUcpC0ZBcizoMPAtroLAD4B68Jl0z3op18MgZe6lRrVoWuxfqnk5GojuB/Vu8ohAZKoFhQ6NB6r+LL2AUs+Zr7Bt26IkEdR178n9JMEA4gHAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBS/a7PU9iOfOKEyZCp11Oen5VSuuDAdBgNVHQ4EFgQUv2uz1PYjnzihMmQqddTnp+VUrrgwDQYJKoZIhvcNAQELBQADggEBAF5q2fDwnse8egXhfaJCqqM969E9gSacqFmASpoDJPRPEX7gqoO7v1ww7nqRtRDoRiBvo/yNk7jlSAkRN3nRRnZLZZ3MYQdmCr4FGyIqRg4Y94+nja+Du9pDD761rxRktMVPSOaAVM/E5DQvscDlPvlPYe9mkcrLCE4DXYpiMmLT8Tm55LJJq5m07dVDgzAIR1L/hmEcbK0pnLgzciMtMLxGO2udnyyW/UW9WxnjvrrD2JluTHH9mVbb+XQP1oFtlRBfH7aui1ZgWfKvxrdP4zdK9QoWSUvRux3TLsGmHRBjBMtqYDY3y5mB+aNjLelvWpeVb0m2aOSVXynrLwNCAVA=\n-----END CERTIFICATE-----",
+ "ledgerRoleName": "Reader"
+ }
+ ]
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ledgers",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties",
+ "additionProps2": "additional property value"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ },
+ "201": {}
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Backup.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Backup.json
new file mode 100644
index 000000000000..022fca831884
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Backup.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "appName": "DummyMccfAppName",
+ "ManagedCCF": {
+ "restoreRegion": "EastUS",
+ "uri": "DummySASUri"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "message": "Backup Created for ManagedCCF App : DummyMccfAppName."
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Create.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Create.json
new file mode 100644
index 000000000000..0cc47f7b59bc
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Create.json
@@ -0,0 +1,71 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "appName": "DummyMccfAppName",
+ "ManagedCCF": {
+ "properties": {
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ },
+ "memberIdentityCertificates": [
+ {
+ "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "encryptionkey": "ledgerencryptionkey",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ ],
+ "nodeCount": 5
+ },
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "appName": "DummyMccfAppName",
+ "appUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ },
+ "memberIdentityCertificates": [
+ {
+ "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "encryptionkey": "ledgerencryptionkey",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ManagedCCFs",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ },
+ "201": {}
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Delete.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Delete.json
new file mode 100644
index 000000000000..1e12ffbaf1ac
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Delete.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "appName": "DummyMccfAppName"
+ },
+ "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/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Get.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Get.json
new file mode 100644
index 000000000000..1d940ec22d4d
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Get.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "appName": "DummyMccfAppName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "appName": "DummyMccfAppName",
+ "appUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ },
+ "memberIdentityCertificates": [
+ {
+ "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "encryptionkey": "ledgerencryptionkey",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ ]
+ },
+ "name": "DummyMccfAppName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ManagedCCFs/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ManagedCCFs",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_List.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_List.json
new file mode 100644
index 000000000000..d2274153b0f6
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_List.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "appName": "DummyMccfAppName",
+ "appUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ },
+ "memberIdentityCertificates": [
+ {
+ "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "encryptionkey": "ledgerencryptionkey",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ManagedCCFs/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ManagedCCFs",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_ListBySub.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_ListBySub.json
new file mode 100644
index 000000000000..342830f3cd80
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_ListBySub.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "appName": "DummyMccfAppName",
+ "appUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ },
+ "memberIdentityCertificates": [
+ {
+ "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "encryptionkey": "ledgerencryptionkey",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ManagedCCFs/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ManagedCCFs",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ ],
+ "nextLink": ""
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Restore.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Restore.json
new file mode 100644
index 000000000000..f4b4c237805d
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Restore.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "appName": "DummyMccfAppName",
+ "ManagedCCF": {
+ "fileShareName": "DummyFileShareName",
+ "restoreRegion": "EastUS",
+ "uri": "DummySASUri"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "message": "Restore Created for ManagedCCF App : DummyMccfAppName."
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Update.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Update.json
new file mode 100644
index 000000000000..1d4b2616fb2f
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Update.json
@@ -0,0 +1,66 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview",
+ "subscriptionId": "0000000-0000-0000-0000-000000000001",
+ "resourceGroupName": "DummyResourceGroupName",
+ "appName": "DummyMccfAppName",
+ "ManagedCCF": {
+ "properties": {
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ }
+ },
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "runningState": "Active",
+ "appName": "DummyMccfAppName",
+ "appUri": "https://dummy.accledger.domain.com/DummyLedgerName",
+ "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
+ "deploymentType": {
+ "languageRuntime": "CPP",
+ "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
+ },
+ "memberIdentityCertificates": [
+ {
+ "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
+ "encryptionkey": "ledgerencryptionkey",
+ "tags": {
+ "additionalProps1": "additional properties"
+ }
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "name": "DummyLedgerName",
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
+ "type": "Microsoft.ConfidentialLedger/ManagedCCFs",
+ "location": "EastUS",
+ "tags": {
+ "additionalProps1": "additional properties"
+ },
+ "systemData": {
+ "createdBy": "ledgerAdmin@contoso.com",
+ "createdByType": "Admin1",
+ "createdAt": "2020-12-01T00:00:00.1234567Z",
+ "lastModifiedBy": "ledgerAdmin2@outlook.com",
+ "lastModifiedByType": "Admin2",
+ "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "azure-asyncoperation": "http://azure.async.operation/status"
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/Operations_Get.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/Operations_Get.json
new file mode 100644
index 000000000000..5acf9f067955
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/Operations_Get.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-09-19-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.ConfidentialLedger/ledgers/read",
+ "isDataAction": false,
+ "display": {
+ "resource": "ledger",
+ "operation": "Get Confidential Ledger properties",
+ "description": "View the properties of a Confidential Ledger"
+ }
+ }
+ ],
+ "nextLink": "string"
+ }
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/managedccf.json b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/managedccf.json
new file mode 100644
index 000000000000..963a7be930ef
--- /dev/null
+++ b/specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/managedccf.json
@@ -0,0 +1,727 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-19-preview",
+ "title": "ConfidentialLedger",
+ "description": "Microsoft Azure Confidential Compute Ledger Managed CCF Control Plane REST API version 2024-09-19-preview."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs/{appName}": {
+ "get": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Retrieves information about a Managed CCF resource.",
+ "description": "Retrieves the properties of a Managed CCF app.",
+ "operationId": "ManagedCCF_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/ManagedCCFNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the Managed CCF",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCF"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ManagedCCFGet": {
+ "$ref": "./examples/ManagedCCF_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Deletes a Managed CCF resource.",
+ "description": "Deletes an existing Managed CCF.",
+ "operationId": "ManagedCCF_Delete",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/ManagedCCFNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; the Managed CCF is deleted."
+ },
+ "202": {
+ "description": "The Managed CCF resource will be deleted asynchronously"
+ },
+ "204": {
+ "description": "The request was successful; Managed CCF does not exist."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ConfidentialLedgerDelete": {
+ "$ref": "./examples/ManagedCCF_Delete.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Creates a Managed CCF.",
+ "description": "Creates a Managed CCF with the specified Managed CCF parameters.",
+ "operationId": "ManagedCCF_Create",
+ "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/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedCCFNameParameter"
+ },
+ {
+ "name": "ManagedCCF",
+ "in": "body",
+ "description": "Managed CCF Create Request Body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCCF"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful and ledger was created; response contains the Managed CCF",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCF"
+ }
+ },
+ "201": {
+ "description": "The Managed CCF resource will be created asynchronously"
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ManagedCCFCreate": {
+ "$ref": "./examples/ManagedCCF_Create.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Update Managed CCF properties",
+ "description": "Updates properties of Managed CCF",
+ "operationId": "ManagedCCF_Update",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/ManagedCCFNameParameter"
+ },
+ {
+ "name": "ManagedCCF",
+ "in": "body",
+ "description": "Request body for Updating Managed CCF App",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCCF"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful and Managed CCF was updated; response contains the Managed CCF.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCF"
+ }
+ },
+ "202": {
+ "description": "The Confidential Ledger resource will be updated asynchronously. Check the provisioningState field to monitor the progress of your operation."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ManagedCCFUpdate": {
+ "$ref": "./examples/ManagedCCF_Update.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs": {
+ "get": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Retrieves information about all Managed CCF resources under the given subscription and resource group",
+ "description": "Retrieves the properties of all Managed CCF apps.",
+ "operationId": "ManagedCCF_ListByResourceGroup",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "type": "string",
+ "description": "The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'",
+ "name": "$filter",
+ "in": "query"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the Managed CCF",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCFList"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ManagedCCFList": {
+ "$ref": "./examples/ManagedCCF_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/managedCCFs/": {
+ "get": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Retrieves information about all Managed CCF resources under the given subscription",
+ "description": "Retrieves the properties of all Managed CCF.",
+ "operationId": "ManagedCCF_ListBySubscription",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "type": "string",
+ "description": "The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'",
+ "name": "$filter",
+ "in": "query"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains the list of Managed CCF",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCFList"
+ }
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "ManagedCCFListBySub": {
+ "$ref": "./examples/ManagedCCF_ListBySub.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs/{appName}/backup": {
+ "post": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Performs the backup operation on a Managed CCF Resource.",
+ "description": "Backs up a Managed CCF Resource.",
+ "operationId": "ManagedCCF_Backup",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/ManagedCCFNameParameter"
+ },
+ {
+ "name": "ManagedCCF",
+ "in": "body",
+ "description": "Managed CCF Backup Request Body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCCFBackup"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains a message stating the Managed CCF Resource is successfully being backed up.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCFBackupResponse"
+ }
+ },
+ "202": {
+ "description": "The Managed CCF Resource will be backed up asynchronously."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ManagedCCFBackup": {
+ "$ref": "./examples/ManagedCCF_Backup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs/{appName}/restore": {
+ "post": {
+ "tags": [
+ "Managed CCF"
+ ],
+ "summary": "Performs the restore operation to spin up a newly restored Managed CCF Resource.",
+ "description": "Restores a Managed CCF Resource.",
+ "operationId": "ManagedCCF_Restore",
+ "x-ms-long-running-operation": true,
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/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/ManagedCCFNameParameter"
+ },
+ {
+ "name": "ManagedCCF",
+ "in": "body",
+ "description": "Managed CCF Restore Request Body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedCCFRestore"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The request was successful; response contains a message stating the Managed CCF Resource is successfully being restored.",
+ "schema": {
+ "$ref": "#/definitions/ManagedCCFRestoreResponse"
+ }
+ },
+ "202": {
+ "description": "The Managed CCF Resource will be restored asynchronously. Check the provisioningState field to monitor the progress of your operation."
+ },
+ "default": {
+ "description": "Error response describing the reason for operation failure.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ManagedCCFRestore": {
+ "$ref": "./examples/ManagedCCF_Restore.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ProvisioningState": {
+ "type": "string",
+ "description": "Object representing ProvisioningState for Managed CCF.",
+ "enum": [
+ "Unknown",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "Creating",
+ "Deleting",
+ "Updating"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "RunningState": {
+ "type": "string",
+ "description": "Object representing RunningState for Managed CCF.",
+ "enum": [
+ "Active",
+ "Paused",
+ "Unknown",
+ "Pausing",
+ "Resuming"
+ ],
+ "x-ms-enum": {
+ "name": "RunningState",
+ "modelAsString": true
+ }
+ },
+ "LanguageRuntime": {
+ "type": "string",
+ "description": "Object representing LanguageRuntime for Manged CCF.",
+ "enum": [
+ "CPP",
+ "JS"
+ ],
+ "x-ms-enum": {
+ "name": "LanguageRuntime",
+ "modelAsString": true
+ }
+ },
+ "EnclavePlatform": {
+ "type": "string",
+ "description": "Object representing the enclave platform for the Managed CCF application. Defaults to IntelSgx.",
+ "enum": [
+ "IntelSgx",
+ "AmdSevSnp"
+ ],
+ "x-ms-enum": {
+ "name": "EnclavePlatform",
+ "modelAsString": true
+ }
+ },
+ "DeploymentType": {
+ "type": "object",
+ "description": "Object representing DeploymentType for Managed CCF.",
+ "title": "DeploymentType",
+ "properties": {
+ "languageRuntime": {
+ "readOnly": false,
+ "description": "Unique name for the Managed CCF.",
+ "$ref": "#/definitions/LanguageRuntime"
+ },
+ "appSourceUri": {
+ "type": "string",
+ "readOnly": false,
+ "description": "Source Uri containing ManagedCCF code"
+ }
+ }
+ },
+ "CertificateTags": {
+ "description": "Tags for Managed CCF Certificates",
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "object",
+ "description": "Additional tags for Managed CCF Certificates",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "MemberIdentityCertificate": {
+ "type": "object",
+ "description": "Object representing MemberIdentityCertificate for Managed CCF.",
+ "title": "MemberIdentityCertificate",
+ "properties": {
+ "certificate": {
+ "type": "string",
+ "readOnly": false,
+ "description": "Member Identity Certificate"
+ },
+ "encryptionkey": {
+ "type": "string",
+ "readOnly": false,
+ "description": "Member Identity Certificate Encryption Key"
+ },
+ "tags": {
+ "items": {
+ "$ref": "#/definitions/CertificateTags"
+ }
+ }
+ }
+ },
+ "NodeCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of CCF nodes in the Managed CCF.",
+ "title": "NodeCount",
+ "default": 3
+ },
+ "ManagedCCFProperties": {
+ "type": "object",
+ "description": "Additional Managed CCF properties.",
+ "title": "ManagedCCFProperties",
+ "properties": {
+ "appName": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Unique name for the Managed CCF."
+ },
+ "appUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Endpoint for calling Managed CCF Service."
+ },
+ "identityServiceUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Endpoint for accessing network identity."
+ },
+ "memberIdentityCertificates": {
+ "type": "array",
+ "description": "List of member identity certificates for Managed CCF",
+ "items": {
+ "$ref": "#/definitions/MemberIdentityCertificate"
+ },
+ "x-ms-identifiers": []
+ },
+ "deploymentType": {
+ "description": "Deployment Type of Managed CCF",
+ "$ref": "#/definitions/DeploymentType"
+ },
+ "runningState": {
+ "description": "Object representing RunningState for Managed CCF.",
+ "$ref": "#/definitions/RunningState"
+ },
+ "provisioningState": {
+ "description": "Provisioning state of Managed CCF Resource",
+ "readOnly": true,
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "nodeCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Number of CCF nodes in the Managed CCF.",
+ "$ref": "#/definitions/NodeCount"
+ },
+ "enclavePlatform": {
+ "description": "Enclave platform of Managed CCF.",
+ "readOnly": false,
+ "$ref": "#/definitions/EnclavePlatform"
+ }
+ }
+ },
+ "ManagedCCF": {
+ "type": "object",
+ "description": "Managed CCF. Contains the properties of Managed CCF Resource.",
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "description": "Properties of Managed CCF Resource.",
+ "$ref": "#/definitions/ManagedCCFProperties"
+ }
+ }
+ },
+ "ManagedCCFList": {
+ "description": "Object that includes an array of Managed CCF and a possible link for next set.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of Managed CCF",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedCCF"
+ }
+ },
+ "nextLink": {
+ "description": "The URL the client should use to fetch the next page (per server side paging).",
+ "type": "string"
+ }
+ }
+ },
+ "ManagedCCFBackup": {
+ "description": "Object representing Backup properties of a Managed CCF Resource.",
+ "type": "object",
+ "properties": {
+ "restoreRegion": {
+ "type": "string",
+ "readOnly": false,
+ "description": "The region where the backup of the managed CCF resource will eventually be restored to."
+ },
+ "uri": {
+ "type": "string",
+ "readOnly": false,
+ "description": "SAS URI used to access the backup Fileshare.",
+ "x-ms-secret": true
+ }
+ },
+ "required": [
+ "uri"
+ ]
+ },
+ "ManagedCCFRestore": {
+ "description": "Object representing Restore properties of Managed CCF Resource.",
+ "type": "object",
+ "properties": {
+ "fileShareName": {
+ "type": "string",
+ "readOnly": false,
+ "description": "Fileshare where the managed CCF resource backup is stored."
+ },
+ "restoreRegion": {
+ "type": "string",
+ "readOnly": false,
+ "description": "The region the managed CCF resource is being restored to."
+ },
+ "uri": {
+ "type": "string",
+ "readOnly": false,
+ "description": "SAS URI used to access the backup Fileshare.",
+ "x-ms-secret": true
+ }
+ },
+ "required": [
+ "fileShareName",
+ "restoreRegion",
+ "uri"
+ ]
+ },
+ "ManagedCCFBackupResponse": {
+ "description": "Object representing the backup response of a Managed CCF Resource.",
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Response body stating if the managed CCF resource is being backed up."
+ }
+ }
+ },
+ "ManagedCCFRestoreResponse": {
+ "description": "Object representing the restore response of a Managed CCF Resource.",
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "Response body stating if the managed CCF resource is being restored."
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ManagedCCFNameParameter": {
+ "name": "appName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the Managed CCF",
+ "pattern": "^[a-zA-Z0-9]",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/confidentialledger/resource-manager/readme.md b/specification/confidentialledger/resource-manager/readme.md
index d694b959b0b9..879c89eda746 100644
--- a/specification/confidentialledger/resource-manager/readme.md
+++ b/specification/confidentialledger/resource-manager/readme.md
@@ -27,7 +27,17 @@ These are the global settings for the confidentialledger.
``` yaml
openapi-type: arm
openapi-subtype: rpaas
-tag: package-preview-2024-07
+tag: package-preview-2024-09
+```
+
+### Tag: package-preview-2024-09
+
+These settings apply only when `--tag=package-preview-2024-09` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2024-09'
+input-file:
+ - Microsoft.ConfidentialLedger/preview/2024-09-19-preview/confidentialledger.json
+ - Microsoft.ConfidentialLedger/preview/2024-09-19-preview/managedccf.json
```
### Tag: package-preview-2024-07
From ef19a226be84dc0a1cfc981760b75c5299978515 Mon Sep 17 00:00:00 2001
From: Tianen
Date: Thu, 9 Jan 2025 06:31:48 +0800
Subject: [PATCH 072/128] [SDK Suppressions labels] Add new action to update
suppressions labels (#31878)
* initial version
* use variables to be used in next steps
* removed unused code and test branch
* added function description
* updated dependencies
* removed test branch
* add comment to to explain this behavior
* Add trailing newline
---------
Co-authored-by: Mike Harder
Co-authored-by: Ray Chen
---
.github/workflows/SDK-Suppressions-Label.yaml | 104 ++++++
.github/workflows/update-labels.yaml | 2 +-
eng/tools/package.json | 3 +-
.../cmd/sdk-suppressions-label.js | 5 +
eng/tools/sdk-suppressions/package.json | 30 ++
eng/tools/sdk-suppressions/src/common.ts | 63 ++++
eng/tools/sdk-suppressions/src/index.ts | 39 ++
eng/tools/sdk-suppressions/src/sdk.ts | 59 +++
.../sdk-suppressions/src/sdkSuppressions.ts | 85 +++++
.../src/updateSdkSuppressionsLabel.ts | 337 ++++++++++++++++++
.../test/updateSdkSuppressionsLabel.test.ts | 184 ++++++++++
eng/tools/sdk-suppressions/tsconfig.json | 6 +
eng/tools/tsconfig.json | 3 +-
package-lock.json | 35 ++
14 files changed, 952 insertions(+), 3 deletions(-)
create mode 100644 .github/workflows/SDK-Suppressions-Label.yaml
create mode 100755 eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js
create mode 100644 eng/tools/sdk-suppressions/package.json
create mode 100644 eng/tools/sdk-suppressions/src/common.ts
create mode 100644 eng/tools/sdk-suppressions/src/index.ts
create mode 100644 eng/tools/sdk-suppressions/src/sdk.ts
create mode 100644 eng/tools/sdk-suppressions/src/sdkSuppressions.ts
create mode 100644 eng/tools/sdk-suppressions/src/updateSdkSuppressionsLabel.ts
create mode 100644 eng/tools/sdk-suppressions/test/updateSdkSuppressionsLabel.test.ts
create mode 100644 eng/tools/sdk-suppressions/tsconfig.json
diff --git a/.github/workflows/SDK-Suppressions-Label.yaml b/.github/workflows/SDK-Suppressions-Label.yaml
new file mode 100644
index 000000000000..20db6347056f
--- /dev/null
+++ b/.github/workflows/SDK-Suppressions-Label.yaml
@@ -0,0 +1,104 @@
+name: SDK Suppressions
+
+on:
+ pull_request:
+ branches:
+ - main
+ - RPSaaSMaster
+ - release*
+
+jobs:
+ process-sdk-suppressions-labels:
+ name: Sdk Suppressions
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+ with:
+ # Required since "HEAD^" is passed to Get-ChangedFiles
+ fetch-depth: 2
+
+ - name: Setup Node and run `npm ci`
+ uses: ./.github/actions/setup-node-npm-ci
+
+ - name: Get GitHub PullRequest Changed Files
+ shell: pwsh
+ id: get-changedFiles
+ run: |
+ . eng/scripts/ChangedFiles-Functions.ps1
+ $changedFiles = @(Get-ChangedFiles)
+ echo "PR Changed files: $changedFiles"
+ Add-Content -Path $env:GITHUB_OUTPUT -Value "changedFiles=$changedFiles"
+
+ - name: Get GitHub PullRequest Context
+ uses: actions/github-script@v7
+ id: fetch-pullRequest-context
+ with:
+ script: |
+ const pr = context.payload.pull_request;
+ if (!pr) {
+ throw new Error("This workflow must run in the context of a pull request.");
+ }
+ console.log("This action trigger by ", context.eventName);
+ core.setOutput("prLabels", pr.labels.map(label => label.name));
+ result-encoding: string
+
+ - name: Run Get suppressions label script
+ id: run-suppressions-script
+ env:
+ OUTPUT_FILE: "output.json"
+ GITHUB_PULL_REQUEST_CHANGE_FILES: ${{ steps.get-changedFiles.outputs.changedFiles }}
+ GITHUB_PULL_REQUEST_LABELS: ${{ steps.fetch-pullRequest-context.outputs.prLabels }}
+ run: |
+ node eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js HEAD^ HEAD "$GITHUB_PULL_REQUEST_CHANGE_FILES" "$GITHUB_PULL_REQUEST_LABELS"
+
+ OUTPUT=$(cat $OUTPUT_FILE)
+ echo "Script output labels: $OUTPUT"
+
+ labelsToAdd=$(echo "$OUTPUT" | sed -n 's/.*"labelsToAdd":\[\([^]]*\)\].*/\1/p' | tr -d '" ')
+ labelsToRemove=$(echo "$OUTPUT" | sed -n 's/.*"labelsToRemove":\[\([^]]*\)\].*/\1/p' | tr -d '" ')
+
+ for label in $(echo $labelsToAdd | tr ',' '\n'); do
+ echo "Label to add: $label"
+ echo "$label=true" >> $GITHUB_OUTPUT
+ done
+
+ for label in $(echo $labelsToRemove | tr ',' '\n'); do
+ echo "Label to remove: $label"
+ echo "$label=false" >> $GITHUB_OUTPUT
+ done
+
+ # No Action or Add/Remove label according to step run-suppressions-script output
+ # e.g.
+ # If the output of the step does not include the BreakingChange-Go-Sdk-Suppression, no action will be taken.
+ # If the step's output is "BreakingChange-Go-Sdk-Suppression='true'", the label "BreakingChange-Go-Sdk-Suppression" will be applied to the PR.
+ # If the step's output is "BreakingChange-Go-Sdk-Suppression='false'", the label "BreakingChange-Go-Sdk-Suppression" will be removed from the PR.
+ - uses: ./.github/actions/add-label-artifact
+ name: Upload artifact with results-go
+ if: ${{ steps.run-suppressions-script.outputs.BreakingChange-Go-Sdk-Suppression }}
+ with:
+ name: "BreakingChange-Go-Sdk-Suppression"
+ value: "${{ steps.run-suppressions-script.outputs.BreakingChange-Go-Sdk-Suppression == 'true' }}"
+
+ - uses: ./.github/actions/add-label-artifact
+ name: Upload artifact with results java
+ if: ${{ steps.run-suppressions-script.outputs.BreakingChange-Java-Sdk-Suppression }}
+ with:
+ name: "BreakingChange-Java-Sdk-Suppression"
+ value: "${{ steps.run-suppressions-script.outputs.BreakingChange-Java-Sdk-Suppression == 'true' }}"
+
+ - uses: ./.github/actions/add-label-artifact
+ name: Upload artifact with results js
+ if: ${{ steps.run-suppressions-script.outputs.BreakingChange-JavaScript-Sdk-Suppression }}
+ with:
+ name: "BreakingChange-JavaScript-Sdk-Suppression"
+ value: "${{ steps.run-suppressions-script.outputs.BreakingChange-JavaScript-Sdk-Suppression == 'true' }}"
+
+ - uses: ./.github/actions/add-label-artifact
+ name: Upload artifact with results python
+ if: ${{ steps.run-suppressions-script.outputs.BreakingChange-Python-Sdk-Suppression }}
+ with:
+ name: "BreakingChange-Python-Sdk-Suppression"
+ value: "${{ steps.run-suppressions-script.outputs.BreakingChange-Python-Sdk-Suppression == 'true' }}"
diff --git a/.github/workflows/update-labels.yaml b/.github/workflows/update-labels.yaml
index d1663f57ae8c..5fd9c8d151d7 100644
--- a/.github/workflows/update-labels.yaml
+++ b/.github/workflows/update-labels.yaml
@@ -6,7 +6,7 @@ on:
# types: [labeled, unlabeled]
# If an upstream workflow if completed, get only the artifacts from that workflow, and update labels
workflow_run:
- workflows: ["TypeSpec Requirement"]
+ workflows: ["TypeSpec Requirement", "SDK Suppressions"]
types: [completed]
workflow_dispatch:
inputs:
diff --git a/eng/tools/package.json b/eng/tools/package.json
index 8dcd0c6a9d2d..1385766802eb 100644
--- a/eng/tools/package.json
+++ b/eng/tools/package.json
@@ -5,7 +5,8 @@
"@azure-tools/suppressions": "file:suppressions",
"@azure-tools/tsp-client-tests": "file:tsp-client-tests",
"@azure-tools/typespec-requirement": "file:typespec-requirement",
- "@azure-tools/typespec-validation": "file:typespec-validation"
+ "@azure-tools/typespec-validation": "file:typespec-validation",
+ "@azure-tools/sdk-suppressions": "file:sdk-suppressions"
},
"scripts": {
"build": "tsc --build",
diff --git a/eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js b/eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js
new file mode 100755
index 000000000000..e2a37e0b5491
--- /dev/null
+++ b/eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js
@@ -0,0 +1,5 @@
+#!/usr/bin/env node
+
+import { main } from "../dist/src/index.js";
+
+await main();
diff --git a/eng/tools/sdk-suppressions/package.json b/eng/tools/sdk-suppressions/package.json
new file mode 100644
index 000000000000..4bb3985cc706
--- /dev/null
+++ b/eng/tools/sdk-suppressions/package.json
@@ -0,0 +1,30 @@
+{
+ "name": "@azure-tools/sdk-suppressions",
+ "private": true,
+ "type": "module",
+ "main": "dist/src/index.js",
+ "version": "1.0.0",
+ "bin": {
+ "get-sdk-suppressions-label": "cmd/sdk-suppressions-label.js"
+ },
+ "scripts": {
+ "build": "tsc --build",
+ "test": "vitest",
+ "test:ci": "vitest run --coverage --reporter=verbose"
+ },
+ "engines": {
+ "node": ">= 18.0.0"
+ },
+ "dependencies": {
+ "ajv": "^8.17.1",
+ "lodash": "^4.17.20",
+ "yaml": "^2.4.2"
+ },
+ "devDependencies": {
+ "@types/lodash": "^4.14.161",
+ "@types/node": "^18.19.31",
+ "@vitest/coverage-v8": "^2.0.4",
+ "typescript": "~5.6.2",
+ "vitest": "^2.0.4"
+ }
+}
diff --git a/eng/tools/sdk-suppressions/src/common.ts b/eng/tools/sdk-suppressions/src/common.ts
new file mode 100644
index 000000000000..b13781e4e20c
--- /dev/null
+++ b/eng/tools/sdk-suppressions/src/common.ts
@@ -0,0 +1,63 @@
+import { parse as yamlParse } from "yaml";
+
+import { exec } from "child_process";
+import { promisify } from "util";
+
+/**
+ * @param yamlContent
+ * @returns {result: string | object | undefined | null, message: string}
+ * special return
+ * if the content is empty, return {result: null, message: string
+ * if the file parse error, return {result: undefined, message: string
+ */
+export function parseYamlContent(yamlContent: string, path: string): {
+ result: string | object | undefined | null;
+ message: string;
+}{
+ let content = undefined;
+ // if yaml file is not a valid yaml, catch error and return undefined
+ try {
+ content = yamlParse(yamlContent);
+ } catch (error) {
+ console.error(`The file parsing failed in the ${path}. Details: ${error}`);
+ return {
+ result: content,
+ message: `The file parsing failed in the ${path}. Details: ${error}`
+ };;
+ }
+
+ // if yaml file is empty, run yaml.safeload success but get undefined
+ // to identify whether it is empty return null to distinguish.
+ if (!content) {
+ console.info(`The file in the ${path} has been successfully parsed, but it is an empty file.`)
+ return {
+ result: null,
+ message: `The file in the ${path} has been successfully parsed, but it is an empty file.`
+ };;
+ }
+
+ return {
+ result: content,
+ message: 'The file has been successfully parsed.'
+ };
+
+}
+
+// Promisify the exec function
+const execAsync = promisify(exec);
+
+export async function runGitCommand(command: string): Promise {
+ try {
+ const { stdout, stderr } = await execAsync(command);
+
+ if (stderr) {
+ console.error("Error Output:", stderr);
+ // throw new Error(stderr);
+ }
+
+ return stdout.trim();
+ } catch (error:any) {
+ console.error("Error details:", error.stderr || error);
+ throw error;
+ }
+}
diff --git a/eng/tools/sdk-suppressions/src/index.ts b/eng/tools/sdk-suppressions/src/index.ts
new file mode 100644
index 000000000000..5100ec2104d8
--- /dev/null
+++ b/eng/tools/sdk-suppressions/src/index.ts
@@ -0,0 +1,39 @@
+
+import { exit } from "process";
+import { updateSdkSuppressionsLabels } from "./updateSdkSuppressionsLabel.js";
+
+function getArgsError(args: string[]): string {
+ return (
+ "Get args lengths: " + args.length + "\n" +
+ "Details: " + args.join(', ') + "\n" +
+ "Usage: node eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js baseCommitHash headCommitHash changeFiles prLabels\n" +
+ "Returns: {labelsToAdd: [label1, label2],labelsToRemove: [lable3, label4]}\n" +
+ "Parameters:\n" +
+ " baseCommitHash: The base commit hash. Example: HEAD^ \n" +
+ " headCommitHash: The head commit hash. Example: HEAD \n" +
+ " changeFiles: The changed files. Example: 'specification/workloads/Workloads.Operations.Management/sdk-suppressions.yaml specification/workloads/Workloads.Operations.Management/main.tsp'\n" +
+ " prLabels: The PR has added labels. Example: '['BreakingChange-Go-Sdk-Suppression', 'BreakingChange-Python-Sdk-Suppression']'\n"
+ );
+}
+
+export async function main() {
+ const args: string[] = process.argv.slice(2);
+ if (args.length === 4) {
+ const baseCommitHash: string = args[0];
+ const headCommitHash: string = args[1];
+ const changeFiles: string = args[2];
+ const lables: string = args[3];
+ const outputFile = process.env.OUTPUT_FILE as string;
+ const changedLabels: {labelsToAdd: String[], labelsToRemove: String[]} = await updateSdkSuppressionsLabels(lables, changeFiles, baseCommitHash, headCommitHash, outputFile);
+ console.log(JSON.stringify(changedLabels));
+ exit(0);
+ } else {
+ console.error(getArgsError(args));
+ exit(1);
+ }
+
+}
+
+export { updateSdkSuppressionsLabels };
+
+
diff --git a/eng/tools/sdk-suppressions/src/sdk.ts b/eng/tools/sdk-suppressions/src/sdk.ts
new file mode 100644
index 000000000000..8d1e3ec2452d
--- /dev/null
+++ b/eng/tools/sdk-suppressions/src/sdk.ts
@@ -0,0 +1,59 @@
+/**
+ * This file is the single source of truth for the labels used by the SDK generation tooling
+ * in the Azure/azure-rest-api-specs and Azure/azure-rest-api-specs-pr repositories.
+ *
+ * For additional context, see:
+ * - https://gist.github.com/raych1/353949d19371b69fb82a10dd70032a51
+ * - https://github.com/Azure/azure-sdk-tools/issues/6327
+ * - https://microsoftapc-my.sharepoint.com/:w:/g/personal/raychen_microsoft_com/EbOAA9SkhQhGlgxtf7mc0kUB-25bFue0EFbXKXS3TFLTQA
+ */
+export type SdkName =
+ | "azure-sdk-for-go"
+ | "azure-sdk-for-java"
+ | "azure-sdk-for-js"
+ | "azure-sdk-for-net"
+ | "azure-sdk-for-python"
+
+export const sdkLabels: {
+ [sdkName in SdkName]: {
+ breakingChange: string | undefined;
+ breakingChangeApproved: string | undefined;
+ breakingChangeSuppression: string | undefined;
+ breakingChangeSuppressionApproved: string | undefined;
+ };
+} = {
+ "azure-sdk-for-go": {
+ breakingChange: "BreakingChange-Go-Sdk",
+ breakingChangeApproved: "BreakingChange-Go-Sdk-Approved",
+ breakingChangeSuppression: "BreakingChange-Go-Sdk-Suppression",
+ breakingChangeSuppressionApproved:
+ "BreakingChange-Go-Sdk-Suppression-Approved",
+ },
+ "azure-sdk-for-java": {
+ breakingChange: "BreakingChange-Java-Sdk",
+ breakingChangeApproved: "BreakingChange-Java-Sdk-Approved",
+ breakingChangeSuppression: "BreakingChange-Java-Sdk-Suppression",
+ breakingChangeSuppressionApproved:
+ "BreakingChange-Java-Sdk-Suppression-Approved"
+ },
+ "azure-sdk-for-js": {
+ breakingChange: "BreakingChange-JavaScript-Sdk",
+ breakingChangeApproved: "BreakingChange-JavaScript-Sdk-Approved",
+ breakingChangeSuppression: "BreakingChange-JavaScript-Sdk-Suppression",
+ breakingChangeSuppressionApproved:
+ "BreakingChange-JavaScript-Sdk-Suppression-Approved"
+ },
+ "azure-sdk-for-net": {
+ breakingChange: undefined,
+ breakingChangeApproved: undefined,
+ breakingChangeSuppression: undefined,
+ breakingChangeSuppressionApproved: undefined
+ },
+ "azure-sdk-for-python": {
+ breakingChange: "BreakingChange-Python-Sdk",
+ breakingChangeApproved: "BreakingChange-Python-Sdk-Approved",
+ breakingChangeSuppression: "BreakingChange-Python-Sdk-Suppression",
+ breakingChangeSuppressionApproved:
+ "BreakingChange-Python-Sdk-Suppression-Approved"
+ }
+};
diff --git a/eng/tools/sdk-suppressions/src/sdkSuppressions.ts b/eng/tools/sdk-suppressions/src/sdkSuppressions.ts
new file mode 100644
index 000000000000..3a379bba78d2
--- /dev/null
+++ b/eng/tools/sdk-suppressions/src/sdkSuppressions.ts
@@ -0,0 +1,85 @@
+/**
+ * This file contains types for the contents of the SDK suppressions file, sdk-suppressions.yml.
+ * For details, see:
+ * - https://microsoftapc-my.sharepoint.com/:w:/g/personal/raychen_microsoft_com/EbOAA9SkhQhGlgxtf7mc0kUB-25bFue0EFbXKXS3TFLTQA
+ */
+
+import { Ajv } from "ajv";
+import { SdkName, sdkLabels } from "./sdk.js";
+
+export const sdkSuppressionsFileName = "sdk-suppressions.yaml";
+
+export type SdkSuppressionsYml = {
+ suppressions: SdkSuppressionsSection;
+};
+
+export type SdkSuppressionsSection = {
+ [sdkName in SdkName]?: SdkPackageSuppressionsEntry[];
+};
+
+export type SdkPackageSuppressionsEntry = {
+ package: string;
+ "breaking-changes": string[];
+};
+
+function exitWithError(error: string): never {
+ console.error("Error:", error);
+ process.exit(1);
+}
+
+export function validateSdkSuppressionsFile(
+ suppressionContent: string | object | undefined | null,
+): {
+ result: boolean;
+ message: string;
+} {
+ if (suppressionContent === null) {
+ exitWithError("This suppression file is a empty file");
+ }
+
+ if (!suppressionContent) {
+ exitWithError("This suppression file is not a valid yaml. Refer to https://aka.ms/azsdk/sdk-suppression for more information.");
+ }
+
+ const suppressionFileSchema = {
+ type: "object",
+ properties: {
+ suppressions: {
+ type: "object",
+ propertyNames: {
+ enum: Object.keys(sdkLabels),
+ },
+ patternProperties: {
+ "^.*$": {
+ type: "array",
+ items: {
+ type: "object",
+ properties: {
+ package: { type: "string" },
+ "breaking-changes": { type: "array", items: { type: "string" } },
+ },
+ required: ["package", "breaking-changes"],
+ additionalProperties: false,
+ },
+ },
+ },
+ },
+ },
+ required: ["suppressions"],
+ additionalProperties: false,
+ };
+
+ const suppressionAjv = new Ajv({ allErrors: true });
+ const suppressionAjvCompile = suppressionAjv.compile(suppressionFileSchema);
+
+ const isValid = suppressionAjvCompile(suppressionContent);
+
+ if (isValid) {
+ return {
+ result: true,
+ message: "This suppression file is a valid yaml.",
+ };
+ } else {
+ exitWithError("This suppression file is a valid yaml but the schema is wrong: " + suppressionAjv.errorsText(suppressionAjvCompile.errors, { separator: "\n" }));
+ }
+}
diff --git a/eng/tools/sdk-suppressions/src/updateSdkSuppressionsLabel.ts b/eng/tools/sdk-suppressions/src/updateSdkSuppressionsLabel.ts
new file mode 100644
index 000000000000..da9997d6a69f
--- /dev/null
+++ b/eng/tools/sdk-suppressions/src/updateSdkSuppressionsLabel.ts
@@ -0,0 +1,337 @@
+import _ from "lodash";
+import { writeFileSync } from "fs";
+import { sdkLabels, SdkName } from "./sdk.js";
+import {
+ SdkSuppressionsYml,
+ SdkSuppressionsSection,
+ sdkSuppressionsFileName,
+ SdkPackageSuppressionsEntry,
+ validateSdkSuppressionsFile,
+} from "./sdkSuppressions.js";
+import { parseYamlContent, runGitCommand } from "./common.js";
+
+/**
+ *
+ * @param prChangeFiles
+ * @param baseCommitHash
+ * @param headCommitHash
+ * @returns SdkName list
+ * This part compares the suppression files of the head branch and the base branch.
+ * To get the SDK, we need to identify which package name, SDK name, or breaking changes are different and apply the SDK suppression label accordingly in the next step.
+ * change details can see at getSdkNamesWithChangedSuppressions function
+ * on the other hand that the sdkName list will return an empty array if it does not have a suppression file or if the file is blank.
+ */
+export async function getSdkSuppressionsSdkNames(
+ prChangeFiles: string,
+ baseCommitHash: string,
+ headCommitHash: string
+): Promise {
+ console.log(`Will compare base commit: ${baseCommitHash} and head commit: ${headCommitHash} to get different SDK.`);
+ const filesChangedPaths = prChangeFiles.split(" ");
+ console.log(`The pr origin changed files: ${filesChangedPaths.join(", ")}`);
+ let suppressionFileList = filterSuppressionList(filesChangedPaths);
+ console.log(`Will compare sdk-suppression.yaml files: ${suppressionFileList.join(", ")}`);
+ let sdkNameList: SdkName[] = [];
+ if (suppressionFileList.length > 0) {
+ for (const suppressionFile of suppressionFileList) {
+ let baseSuppressionContent = await getSdkSuppressionsFileContent(baseCommitHash, suppressionFile);
+ const headSuppressionContent = await getSdkSuppressionsFileContent(headCommitHash, suppressionFile);
+
+ // if the head suppression file is present but anything is wrong like schema error with it return
+ const validateSdkSuppressionsFileResult =
+ validateSdkSuppressionsFile(headSuppressionContent).result;
+ if (!validateSdkSuppressionsFileResult) {
+ return [];
+ }
+ // if base suppression file does not exist, set it to an empty object but has correct schema
+ if (!baseSuppressionContent) {
+ baseSuppressionContent = { suppressions: {} };
+ }
+
+ console.log(
+ `updateSdkSuppressionsLabels: Will compare base suppressions content:\n ` +
+ `${JSON.stringify(baseSuppressionContent)}\n ` +
+ `and head suppressions content:\n ` +
+ `${JSON.stringify(headSuppressionContent)} to get different SDK.`,
+ );
+
+ sdkNameList = getSdkNamesWithChangedSuppressions(
+ headSuppressionContent as SdkSuppressionsYml,
+ baseSuppressionContent as SdkSuppressionsYml,
+ );
+ }
+ }
+
+ return [...new Set(sdkNameList)];
+}
+
+export async function getSdkSuppressionsFileContent(
+ ref: string,
+ path: string,
+): Promise {
+ try {
+ const suppressionFileContent = await runGitCommand(`git show ${ref}:${path}`);
+ console.log(`Found content in ${ref}#${path}`);
+ return parseYamlContent(suppressionFileContent, path).result;
+ } catch (error) {
+ console.log(`Not found content in ${ref}#${path}, Error: ${error}`);
+ return null;
+ }
+}
+
+function getSdksWithSuppressionsDefined(suppressions: SdkSuppressionsSection): SdkName[] {
+ return _.keys(suppressions) as SdkName[];
+}
+
+/**
+ *
+ * @param headSuppressionFile
+ * @param baseSuppressionFile
+ * @returns SdkName[]
+ *
+ * Analyze the suppression files across three dimensions: language, package, and breaking-change. Finally, determine the outermost sdkName.
+ */
+
+export function getSdkNamesWithChangedSuppressions(
+ headSuppressionFile: SdkSuppressionsYml,
+ baseSuppressionFile: SdkSuppressionsYml,
+): SdkName[] {
+ let sdkNamesWithChangedSuppressions: SdkName[] = [];
+
+ const headSdkSuppressionsSection: SdkSuppressionsSection = headSuppressionFile.suppressions;
+ const baseSdkSuppressionsSection: SdkSuppressionsSection = baseSuppressionFile.suppressions;
+
+ const headSdksWithSuppressions: SdkName[] = getSdksWithSuppressionsDefined(
+ headSdkSuppressionsSection,
+ );
+ const baseSdksWithSuppressions: SdkName[] = getSdksWithSuppressionsDefined(
+ baseSdkSuppressionsSection,
+ );
+
+ if (headSdksWithSuppressions.length === 0) {
+ if (baseSdksWithSuppressions.length > 0) {
+ sdkNamesWithChangedSuppressions = [
+ ...sdkNamesWithChangedSuppressions,
+ ...baseSdksWithSuppressions,
+ ];
+ }
+ }
+
+ // 1. If modify Sdk in SdkSuppressionsSection, add SdkName to sdkNamesWithChangedSuppressions
+ const differentSdkNamesWithChangedSuppressions = _.xorWith(
+ headSdksWithSuppressions,
+ baseSdksWithSuppressions,
+ _.isEqual,
+ );
+ if (differentSdkNamesWithChangedSuppressions.length > 0) {
+ sdkNamesWithChangedSuppressions = [
+ ...sdkNamesWithChangedSuppressions,
+ ...differentSdkNamesWithChangedSuppressions,
+ ];
+ }
+
+ // 2. If modify SdkPackageSuppressionsEntry in SdkSuppressionsSection include package name and breaking changes
+ // add SdkName to sdkNamesWithChangedSuppressions
+ const similarSdkNamesWithChangedSuppressions = _.intersectionWith(
+ headSdksWithSuppressions,
+ baseSdksWithSuppressions,
+ );
+ similarSdkNamesWithChangedSuppressions.forEach((sdkName: SdkName) => {
+ const headSdkPackageSuppressionsEntry = headSdkSuppressionsSection[
+ sdkName
+ ] as SdkPackageSuppressionsEntry[];
+ const baseSdkPackageSuppressionsEntry = baseSdkSuppressionsSection[
+ sdkName
+ ] as SdkPackageSuppressionsEntry[];
+ // Determine whether packageName has changed
+ const differentPackageNamesWithChangedSuppressions = _.xorWith(
+ headSdkPackageSuppressionsEntry.map((entry) => entry.package),
+ baseSdkPackageSuppressionsEntry.map((entry) => entry.package),
+ _.isEqual,
+ );
+ if (differentPackageNamesWithChangedSuppressions.length > 0) {
+ sdkNamesWithChangedSuppressions = [...sdkNamesWithChangedSuppressions, sdkName];
+ return;
+ }
+ // Determine whether breaking-changes has changed
+ headSdkPackageSuppressionsEntry.forEach((headEntry) => {
+ const baseEntry = baseSdkPackageSuppressionsEntry.find(
+ (entry) => entry.package === headEntry.package,
+ );
+ if (!baseEntry) {
+ sdkNamesWithChangedSuppressions = [...sdkNamesWithChangedSuppressions, sdkName];
+ return;
+ }
+ if (!_.isEqual(headEntry["breaking-changes"].sort(), baseEntry["breaking-changes"].sort())) {
+ sdkNamesWithChangedSuppressions = [...sdkNamesWithChangedSuppressions, sdkName];
+ return;
+ }
+ });
+ });
+
+ return [...new Set(sdkNamesWithChangedSuppressions)];
+}
+
+/**
+ *
+ * @param prLabels
+ * @param prChangeFiles
+ * @param baseCommitHash
+ * @param headCommitHash
+ * @param outputFile
+ * @returns { labelsToAdd: String[]; labelsToRemove: String[] }
+ * This code performs two key functions:
+ * First, it retrieves the corresponding SDKNames based on the differences between the two sdk-suppression files.
+ * Second, it compares the SDKNames obtained in the previous step with the existing PR labels and processes the PR labels accordingly.
+ */
+export async function updateSdkSuppressionsLabels(
+ prLabels: string,
+ prChangeFiles: string,
+ baseCommitHash: string,
+ headCommitHash: string,
+ outputFile?: string,
+): Promise<{ labelsToAdd: String[]; labelsToRemove: String[] }> {
+ try {
+ const status = await runGitCommand("git status");
+ console.log("Git status:", status);
+ } catch (err) {
+ console.error("Error running git command:", err);
+ }
+
+ const sdkNames = await getSdkSuppressionsSdkNames(prChangeFiles, baseCommitHash, headCommitHash);
+
+ console.log(
+ `updateSdkSuppressionsLabels: Get the required suppressions label based on compared SDK List ${sdkNames.join(", ")}`,
+ );
+
+ const presentLabels = JSON.parse(prLabels) as string[];
+ console.log(`updateSdkSuppressionsLabels: Present labels: ${presentLabels.join(", ")}`);
+
+ const result = processLabels(presentLabels, sdkNames);
+
+ if(outputFile){
+ writeFileSync(outputFile, JSON.stringify(result));
+ console.log(`😊 JSON output saved to ${outputFile}`);
+ }
+
+ return result;
+}
+
+/**
+ *
+ * @param presentLabels
+ * @param sdkNames
+ * @returns {labelsToAdd: String[], labelsToRemove: String[]}
+ *
+ * Based on the various sdknames and existing labels, process the suppression label of PR.
+ *
+ * Add logic: If the breakingChangeSuppression label corresponding to an SDK in sdkNames is not in the current presentLabels list,
+ * add the label to labelsToAdd.
+ * Remove logic: If a label is in presentLabels and the corresponding breakingChangeSuppression is not in sdkNames
+ * and there is no corresponding breakingChangeSuppressionApproved label, then the label is deleted.
+ * Otherwise, the label is not deleted.
+ */
+export function processLabels(presentLabels: string[], sdkNames: string[]): { labelsToAdd: String[]; labelsToRemove: String[] } {
+ // The sdkNames indicates whether any suppression files have been modified. If it is empty
+ // then check if the suppression label was previously applied and remove it if so. Otherwise, no action is needed.
+ let addSdkSuppressionsLabels: string[] = [];
+ let removeSdkSuppressionsLabels: string[] = [];
+ sdkNames.forEach((sdkName) => {
+ const sdk = sdkLabels[sdkName as SdkName];
+ const breakingChangeSuppression = sdk.breakingChangeSuppression;
+ // If breakingChangeSuppression is not in the existing labels, add it to labelsToAdd
+ if (
+ breakingChangeSuppression &&
+ !presentLabels.includes(breakingChangeSuppression)
+ ) {
+ addSdkSuppressionsLabels.push(breakingChangeSuppression);
+ }
+ });
+
+ presentLabels.forEach(label => {
+ // Check if it is a suppression label
+ const suppressionLabelExists = Object.values(sdkLabels).some(sdk => {
+ return sdk.breakingChangeSuppression === label;
+ });
+
+ // If it is a suppression label
+ if (suppressionLabelExists) {
+ // Check if there is a corresponding approved label
+ const hasApprovedLabel = Object.values(sdkLabels).some(sdk => {
+ return sdk.breakingChangeSuppression === label && sdk.breakingChangeSuppressionApproved && presentLabels.includes(sdk.breakingChangeSuppressionApproved);
+ });
+ // If there is no corresponding approved label and there is no suppression label in sdkNames, delete it.
+ if (!hasApprovedLabel && !sdkNames.some(sdkName => sdkLabels[sdkName as SdkName].breakingChangeSuppression === label)) {
+ removeSdkSuppressionsLabels.push(label);
+ }
+ }
+ });
+
+ return {
+ labelsToAdd: addSdkSuppressionsLabels,
+ labelsToRemove: removeSdkSuppressionsLabels,
+ };
+}
+
+/**
+ *
+ * @param filesChangedPaths
+ * @returns string[]
+ * check suppressionFileList is swagger suppression or tsp suppression
+ * if the change includes both swagger suppression and tsp suppression, only handle the tsp suppression
+ * others keep swagger suppression
+ *
+ * filter data-plane for swagger suppression and tsp suppression for each service
+ */
+export function filterSuppressionList(filesChangedPaths: string[]): string[] {
+ let initialSuppressionFiles = filesChangedPaths.filter((suppressionFile) =>
+ suppressionFile.split("/").includes(sdkSuppressionsFileName),
+ );
+ let tspSuppressionFileList = initialSuppressionFiles.filter((suppressionFile) =>
+ suppressionFile.split("/").some((suppressionFile) => suppressionFile.endsWith(".Management")),
+ );
+ let swaggerSuppressionFileList = initialSuppressionFiles.filter((suppressionFile) =>
+ suppressionFile.split("/").includes("resource-manager"),
+ );
+
+ let filterSuppressionFileList = [...tspSuppressionFileList, ...swaggerSuppressionFileList];
+
+ const groupedSuppressionFileList = filterSuppressionFileList.reduce(
+ (acc: { [key: string]: string[] }, path) => {
+ const key = path.split("/")[1];
+ if (!acc[key]) {
+ acc[key] = [];
+ }
+ acc[key].push(path);
+
+ return acc;
+ },
+ {},
+ );
+
+ let suppressionFileList: string[] = [];
+ for (const serviceName in groupedSuppressionFileList) {
+ if (groupedSuppressionFileList.hasOwnProperty(serviceName)) {
+ let serviceSuppressionList = groupedSuppressionFileList[serviceName];
+ if (
+ serviceSuppressionList.some((suppressionFile) =>
+ suppressionFile
+ .split("/")
+ .some((suppressionFile) => suppressionFile.endsWith(".Management")),
+ )
+ ) {
+ suppressionFileList = suppressionFileList.concat(
+ serviceSuppressionList.filter((suppressionFile) =>
+ suppressionFile
+ .split("/")
+ .some((suppressionFile) => suppressionFile.endsWith(".Management")),
+ ),
+ );
+ } else {
+ suppressionFileList = suppressionFileList.concat(serviceSuppressionList);
+ }
+ }
+ }
+
+ return suppressionFileList;
+}
diff --git a/eng/tools/sdk-suppressions/test/updateSdkSuppressionsLabel.test.ts b/eng/tools/sdk-suppressions/test/updateSdkSuppressionsLabel.test.ts
new file mode 100644
index 000000000000..e03c3b570012
--- /dev/null
+++ b/eng/tools/sdk-suppressions/test/updateSdkSuppressionsLabel.test.ts
@@ -0,0 +1,184 @@
+import { vi, expect, test } from "vitest";
+import { filterSuppressionList, getSdkNamesWithChangedSuppressions, processLabels } from "../src/updateSdkSuppressionsLabel.js";
+import { validateSdkSuppressionsFile } from "../src/sdkSuppressions.js";
+
+vi.mock("process", () => ({
+ exit: vi.fn(),
+}));
+
+test("test filterSuppressionList for only resource-manager files", () => {
+ const changeFiles = [
+ "specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json",
+ "specification/datafactory/resource-manager/sdk-suppressions.yaml"
+ ];
+ const suppressionsFiles: String[] = filterSuppressionList(changeFiles);
+ expect(suppressionsFiles).toEqual(["specification/datafactory/resource-manager/sdk-suppressions.yaml"]);
+});
+
+test("test filterSuppressionList for both tsp files and resource-manager files", () => {
+ const changeFiles = [
+ "specification/workloads/Workloads.Operations.Management/main.tsp",
+ "specification/workloads/Workloads.Operations.Management/sdk-suppressions.yaml",
+ "specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-10-01-preview/operations.json",
+ "specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2024-02-01-preview/operations.json",
+ "specification/workloads/resource-manager/Microsoft.Workloads/operations/preview/2023-12-01-preview/operations.json",
+ "specification/workloads/resource-manager/Microsoft.Workloads/operations/stable/2024-09-01/operations.json",
+ "specification/workloads/resource-manager/sdk-suppressions.yaml"
+ ];
+ const suppressionsFiles: String[] = filterSuppressionList(changeFiles);
+ expect(suppressionsFiles).toEqual(["specification/workloads/Workloads.Operations.Management/sdk-suppressions.yaml"]);
+});
+
+test("test validateSdkSuppressionsFile for sdk-suppression file", () => {
+ const suppressionContent = {
+ "suppressions": {
+ "azure-sdk-for-go": [
+ {
+ "package": "sdk/resourcemanager/appcontainers/armappcontainers",
+ "breaking-changes": [
+ "Field `EndTime`, `StartTime`, `Status`, `Template` of struct `JobExecution` has been removed"
+ ]
+ }
+ ],
+ "azure-sdk-for-python": [
+ {
+ "package": "azure-mgmt-appcontainers",
+ "breaking-changes": [
+ "Model BillingMeter no longer has parameter system_data"
+ ]
+ }
+ ]
+ }
+ };
+
+ const validateResult = validateSdkSuppressionsFile(suppressionContent);
+ expect(validateResult).toEqual({ result: true, message: 'This suppression file is a valid yaml.' });
+});
+
+test("test validateSdkSuppressionsFile for empty file", () => {
+ const consoleSpy = vi.spyOn(console, "error").mockImplementation(() => {});
+ const mockProcessExit = vi.spyOn(process, "exit").mockImplementation(() => {
+ throw new Error("process.exit called"); // Prevent actual exit
+ });
+
+ expect(() => validateSdkSuppressionsFile(null)).toThrow("process.exit called");
+ expect(consoleSpy).toHaveBeenCalledWith("Error:", "This suppression file is a empty file");
+ expect(mockProcessExit).toHaveBeenCalledWith(1);
+
+ consoleSpy.mockRestore();
+ mockProcessExit.mockRestore();
+});
+
+test("test validateSdkSuppressionsFile for undefined file", () => {
+ const consoleSpy = vi.spyOn(console, "error").mockImplementation(() => {});
+ const mockProcessExit = vi.spyOn(process, "exit").mockImplementation(() => {
+ throw new Error("process.exit called"); // Prevent actual exit
+ });
+
+ expect(() => validateSdkSuppressionsFile(undefined)).toThrow("process.exit called");
+ expect(consoleSpy).toHaveBeenCalledWith("Error:", "This suppression file is not a valid yaml. Refer to https://aka.ms/azsdk/sdk-suppression for more information.");
+ expect(mockProcessExit).toHaveBeenCalledWith(1);
+
+ consoleSpy.mockRestore();
+ mockProcessExit.mockRestore();
+});
+
+test("test validateSdkSuppressionsFile for error structor file", () => {
+ const consoleSpy = vi.spyOn(console, "error").mockImplementation(() => {});
+ const mockProcessExit = vi.spyOn(process, "exit").mockImplementation(() => {
+ throw new Error("process.exit called"); // Prevent actual exit
+ });
+
+ const suppressionContent = {
+ "suppressions": {
+ "azure-sdk-for-go": [
+ {
+ "package": "sdk/resourcemanager/appcontainers/armappcontainers"
+ }
+ ],
+ "azure-sdk-for-python": [
+ {
+ "package": "azure-mgmt-appcontainers",
+ "breaking-changes": [
+ "Model BillingMeter no longer has parameter system_data"
+ ]
+ }
+ ]
+ }
+ };
+
+ expect(() => validateSdkSuppressionsFile(suppressionContent)).toThrow("process.exit called");
+ expect(consoleSpy).toHaveBeenCalledWith("Error:", "This suppression file is a valid yaml but the schema is wrong: data/suppressions/azure-sdk-for-go/0 must have required property 'breaking-changes'");
+ expect(mockProcessExit).toHaveBeenCalledWith(1);
+
+ consoleSpy.mockRestore();
+ mockProcessExit.mockRestore();
+});
+
+test("test getSdkNamesWithChangedSuppressions", () => {
+ const headCont = {
+ "suppressions": {
+ "azure-sdk-for-python": [
+ {
+ "package": "azure-mgmt-appcontainers",
+ "breaking-changes": [
+ "Model BillingMeter no longer has parameter system_data AAA"
+ ]
+ }
+ ],
+ "azure-sdk-for-go": [
+ {
+ "package": "sdk/resourcemanager/appcontainers/armappcontainers",
+ "breaking-changes": [
+ "Field `EndTime`, `StartTime`, `Status`, `Template` of struct `JobExecution` has been removed"
+ ]
+ }
+ ]
+ }
+ };
+ const baseCont = {
+ "suppressions": {
+ "azure-sdk-for-python": [
+ {
+ "package": "azure-mgmt-appcontainers",
+ "breaking-changes": [
+ "Model BillingMeter no longer has parameter system_data"
+ ]
+ }
+ ],
+ "azure-sdk-for-go": [
+ {
+ "package": "sdk/resourcemanager/appcontainers/armappcontainers",
+ "breaking-changes": [
+ "Field `EndTime`, `StartTime`, `Status`, `Template` of struct `JobExecution` has been removed"
+ ]
+ }
+ ]
+ }
+ };
+
+ const sdkNames = getSdkNamesWithChangedSuppressions(headCont, baseCont);
+ expect(sdkNames).toEqual(["azure-sdk-for-python"]);
+});
+
+test("test processLabels will add new label when has sdkNames", () => {
+ const sdkNames: string[] = ["azure-sdk-for-go", "azure-sdk-for-js"];
+ const presentLabels: string[] = ["aa", "BreakingChange-Go-Sdk-Suppression"];
+ const result = processLabels(presentLabels, sdkNames);
+ expect(result).toEqual({ labelsToAdd: ["BreakingChange-JavaScript-Sdk-Suppression"], labelsToRemove: [] });
+
+});
+
+test("test processLabels will remove old label when has the sdkNames not exist", () => {
+ const sdkNames: string[] = ["azure-sdk-for-js"];
+ const presentLabels: string[] = ["aa", "BreakingChange-Go-Sdk-Suppression"];
+ const result = processLabels(presentLabels, sdkNames);
+ expect(result).toEqual({ labelsToAdd: ["BreakingChange-JavaScript-Sdk-Suppression"], labelsToRemove: ["BreakingChange-Go-Sdk-Suppression"] });
+ });
+
+test("test processLabels will not remove old label when has the sdkNames not exist & has corresponding suppression approved", () => {
+ const sdkNames: string[] = ["azure-sdk-for-go"];
+ const presentLabels: string[] = ["aa", "BreakingChange-Go-Sdk-Suppression", "BreakingChange-JavaScript-Sdk-Suppression", "BreakingChange-JavaScript-Sdk-Suppression-Approved"];
+ const result = processLabels(presentLabels, sdkNames);
+ expect(result).toEqual({ labelsToAdd: [], labelsToRemove: [] });
+});
diff --git a/eng/tools/sdk-suppressions/tsconfig.json b/eng/tools/sdk-suppressions/tsconfig.json
new file mode 100644
index 000000000000..eae537921c52
--- /dev/null
+++ b/eng/tools/sdk-suppressions/tsconfig.json
@@ -0,0 +1,6 @@
+{
+ "extends": "../tsconfig.json",
+ "compilerOptions": {
+ "outDir": "./dist"
+ }
+}
diff --git a/eng/tools/tsconfig.json b/eng/tools/tsconfig.json
index ffa89e56a6d8..eca3d4cdace7 100644
--- a/eng/tools/tsconfig.json
+++ b/eng/tools/tsconfig.json
@@ -15,6 +15,7 @@
{ "path": "./suppressions" },
{ "path": "./tsp-client-tests" },
{ "path": "./typespec-requirement" },
- { "path": "./typespec-validation" }
+ { "path": "./typespec-validation" },
+ { "path": "./sdk-suppressions" }
]
}
diff --git a/package-lock.json b/package-lock.json
index 1316151cf1d0..aad5134b06db 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -39,6 +39,7 @@
"dev": true,
"hasInstallScript": true,
"devDependencies": {
+ "@azure-tools/sdk-suppressions": "file:sdk-suppressions",
"@azure-tools/specs-model": "file:specs-model",
"@azure-tools/suppressions": "file:suppressions",
"@azure-tools/tsp-client-tests": "file:tsp-client-tests",
@@ -275,6 +276,29 @@
}
}
},
+ "eng/tools/sdk-suppressions": {
+ "name": "@azure-tools/sdk-suppressions",
+ "version": "1.0.0",
+ "dev": true,
+ "dependencies": {
+ "ajv": "^8.17.1",
+ "lodash": "^4.17.20",
+ "yaml": "^2.4.2"
+ },
+ "bin": {
+ "get-sdk-suppressions-label": "cmd/sdk-suppressions-label.js"
+ },
+ "devDependencies": {
+ "@types/lodash": "^4.14.161",
+ "@types/node": "^18.19.31",
+ "@vitest/coverage-v8": "^2.0.4",
+ "typescript": "~5.6.2",
+ "vitest": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 18.0.0"
+ }
+ },
"eng/tools/specs-model": {
"name": "@azure-tools/specs-model",
"dev": true,
@@ -911,6 +935,10 @@
"node": ">=18.0.0"
}
},
+ "node_modules/@azure-tools/sdk-suppressions": {
+ "resolved": "eng/tools/sdk-suppressions",
+ "link": true
+ },
"node_modules/@azure-tools/specs-model": {
"resolved": "eng/tools/specs-model",
"link": true
@@ -3375,6 +3403,13 @@
"dev": true,
"license": "MIT"
},
+ "node_modules/@types/lodash": {
+ "version": "4.17.13",
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.13.tgz",
+ "integrity": "sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@types/node": {
"version": "10.17.60",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz",
From 8ffdde4873edfc7c7f25a89a6b55e898973adee9 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 8 Jan 2025 15:27:26 -0800
Subject: [PATCH 073/128] Bump the typespec group across 1 directory with 2
updates (#32051)
Bumps the typespec group with 2 updates in the / directory: [@azure-tools/typespec-apiview](https://github.com/Azure/azure-sdk-tools) and [@typespec/rest](https://github.com/microsoft/typespec).
Updates `@azure-tools/typespec-apiview` from 0.4.9 to 0.5.0
- [Release notes](https://github.com/Azure/azure-sdk-tools/releases)
- [Commits](https://github.com/Azure/azure-sdk-tools/commits/doc-warden_0.5.0)
Updates `@typespec/rest` from 0.63.0 to 0.63.1
- [Release notes](https://github.com/microsoft/typespec/releases)
- [Commits](https://github.com/microsoft/typespec/compare/typespec@0.63.0...@typespec/rest@0.63.1)
---
updated-dependencies:
- dependency-name: "@azure-tools/typespec-apiview"
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: typespec
- dependency-name: "@typespec/rest"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: typespec
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package-lock.json | 18 ++++++++----------
package.json | 4 ++--
2 files changed, 10 insertions(+), 12 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index aad5134b06db..ab0a2680428b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -6,7 +6,7 @@
"": {
"name": "azure-rest-api-specs",
"devDependencies": {
- "@azure-tools/typespec-apiview": "0.4.9",
+ "@azure-tools/typespec-apiview": "0.5.0",
"@azure-tools/typespec-autorest": "0.49.0",
"@azure-tools/typespec-azure-core": "0.49.0",
"@azure-tools/typespec-azure-portal-core": "0.49.0",
@@ -21,7 +21,7 @@
"@typespec/openapi": "0.63.0",
"@typespec/openapi3": "0.63.0",
"@typespec/prettier-plugin-typespec": "0.63.0",
- "@typespec/rest": "0.63.0",
+ "@typespec/rest": "0.63.1",
"@typespec/streams": "0.63.0",
"@typespec/versioning": "0.63.0",
"azure-rest-api-specs-eng-tools": "file:eng/tools",
@@ -962,11 +962,10 @@
"link": true
},
"node_modules/@azure-tools/typespec-apiview": {
- "version": "0.4.9",
- "resolved": "https://registry.npmjs.org/@azure-tools/typespec-apiview/-/typespec-apiview-0.4.9.tgz",
- "integrity": "sha512-44KT4okSi5/tcCMWZqy9kOu+1I4BcB3Cyh8mu5XakVnAOHWjDPelbMm/4Vi/EpUKHSCTCYCRVno3j3Wz0M6Ppg==",
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/@azure-tools/typespec-apiview/-/typespec-apiview-0.5.0.tgz",
+ "integrity": "sha512-7Let8c9vAjvz0hKequXIeUp4IQfuWbKyH7mVBNfaPD0mNYfLixaosLJUeP0OZ0Zkl0Qljd425IQDTdlQyFsynw==",
"dev": true,
- "license": "MIT",
"engines": {
"node": ">=16.0.0"
},
@@ -3811,11 +3810,10 @@
}
},
"node_modules/@typespec/rest": {
- "version": "0.63.0",
- "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.63.0.tgz",
- "integrity": "sha512-HftzMjSDHAYX+ILE9C6pFS4oAq7oBHMCtpA8QgSFPDF4V5a8l1k2K8c4x1B+7yl+GkREmIdtpc6S0xZm2G7hXg==",
+ "version": "0.63.1",
+ "resolved": "https://registry.npmjs.org/@typespec/rest/-/rest-0.63.1.tgz",
+ "integrity": "sha512-RQbTM+HGjCaNIWC0v72m5ulnuvLjuRigb7pH4QeRCvFtGPHos+WBv5SImkGrbYx3353OGR8dIi7lWe7aNwiDcQ==",
"dev": true,
- "license": "MIT",
"engines": {
"node": ">=18.0.0"
},
diff --git a/package.json b/package.json
index 72524f5b2af6..7e4bcd17deb5 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "azure-rest-api-specs",
"devDependencies": {
- "@azure-tools/typespec-apiview": "0.4.9",
+ "@azure-tools/typespec-apiview": "0.5.0",
"@azure-tools/typespec-autorest": "0.49.0",
"@azure-tools/typespec-azure-core": "0.49.0",
"@azure-tools/typespec-azure-portal-core": "0.49.0",
@@ -16,7 +16,7 @@
"@typespec/openapi": "0.63.0",
"@typespec/openapi3": "0.63.0",
"@typespec/prettier-plugin-typespec": "0.63.0",
- "@typespec/rest": "0.63.0",
+ "@typespec/rest": "0.63.1",
"@typespec/streams": "0.63.0",
"@typespec/versioning": "0.63.0",
"azure-rest-api-specs-eng-tools": "file:eng/tools",
From c29b9330313c91d43a75d9d08144c98071c904d0 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 8 Jan 2025 16:32:00 -0800
Subject: [PATCH 074/128] Bump oav from 3.5.1 to 3.6.0 (#32052)
Bumps [oav](https://github.com/azure/oav) from 3.5.1 to 3.6.0.
- [Release notes](https://github.com/azure/oav/releases)
- [Changelog](https://github.com/Azure/oav/blob/develop/ChangeLog.md)
- [Commits](https://github.com/azure/oav/commits)
---
updated-dependencies:
- dependency-name: oav
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package-lock.json | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index ab0a2680428b..4b494848562c 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7455,11 +7455,10 @@
}
},
"node_modules/oav": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/oav/-/oav-3.5.1.tgz",
- "integrity": "sha512-SWY+b9nk9fWoNsh8NvCP5XU/xZ2TffJ7Nna28GJxOsSgSUqPezZo6ehKoxVxBUUAYo4Sgz/phJBcjkNXYC2zpw==",
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/oav/-/oav-3.6.0.tgz",
+ "integrity": "sha512-MB8/suEE9f1jibuiy35F5v6kHTZV9aDEjUH3W48UrnekDHIynANGyCxgEl2gGepb0NyuVz9nlDLzd3Q4fAsVVg==",
"dev": true,
- "license": "MIT",
"dependencies": {
"@apidevtools/swagger-parser": "10.0.3",
"@autorest/schemas": "^1.3.4",
@@ -7483,7 +7482,7 @@
"json-merge-patch": "^1.0.2",
"json-pointer": "^0.6.2",
"json-schema-traverse": "^0.4.1",
- "jsonpath-plus": "^10.0.0",
+ "jsonpath-plus": "^10.2.0",
"junit-report-builder": "^3.0.0",
"lodash": "^4.17.21",
"md5-file": "^5.0.0",
From 18bcd0fcb4917f5cdc6c7c27141f52c2927330ff Mon Sep 17 00:00:00 2001
From: Himanshu Agarwal
Date: Thu, 9 Jan 2025 10:09:12 +0530
Subject: [PATCH 075/128] [recoveryservices] Microsoft.RecoveryServices adding
version 2024-09-30-preview (#32041)
* Microsoft.RecoveryServices adding version 2024-09-30-preview (#30405)
* Copy files from stable/2024-04-01
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to preview/2024-09-30-preview
Updated the API version from stable/2024-04-01 to preview/2024-09-30-preview.
* Added tag for 2024-09-30-preview in readme file
* resolve readme conflict (#31990)
added latest stable folder
Co-authored-by: Himanshu Agarwal
---------
Co-authored-by: DevBaburaj
Co-authored-by: justbelieve
---
.../examples/Capabilities.json | 45 +
.../CheckNameAvailability_Available.json | 19 +
.../CheckNameAvailability_NotAvailable.json | 21 +
.../examples/DeleteRegisteredIdentities.json | 12 +
.../examples/DeleteVault.json | 18 +
.../examples/DeletedVaults_Get.json | 22 +
.../DeletedVaults_GetOperationStatus.json | 20 +
.../DeletedVaults_ListBySubscriptionId.json | 35 +
.../examples/DeletedVaults_Undelete.json | 36 +
.../2024-09-30-preview/examples/GETVault.json | 83 +
.../examples/GETVaultExtendedInfo.json | 22 +
.../examples/GetOperationResult.json | 45 +
.../examples/GetOperationStatus.json | 20 +
.../examples/GetPrivateLinkResources.json | 36 +
.../examples/ListBySubscriptionIds.json | 62 +
.../examples/ListOperations.json | 463 +++
.../examples/ListPrivateLinkResources.json | 60 +
.../examples/ListReplicationUsages.json | 34 +
.../examples/ListResources.json | 63 +
.../examples/ListUsages.json | 180 ++
.../examples/PATCHVault.json | 41 +
.../examples/PATCHVault_WithCMK.json | 77 +
.../examples/PATCHVault_WithCMK3.json | 73 +
.../PATCHVault_WithMonitoringSettings.json | 65 +
.../PATCHVault_WithRedundancySettings.json | 48 +
.../PATCHVault_WithUserAssignedIdentity.json | 56 +
.../2024-09-30-preview/examples/PUTVault.json | 72 +
.../examples/PUTVaultCred.json | 41 +
.../PUTVault_ResourceGuardEnabled.json | 114 +
.../examples/PUTVault_WithCMK.json | 111 +
.../PUTVault_WithMonitoringSettings.json | 105 +
.../PUTVault_WithRedundancySettings.json | 84 +
.../PUTVault_WithUserAssignedIdentity.json | 82 +
.../examples/PatchVault_WithCMK2.json | 69 +
.../examples/UpdateVaultExtendedInfo.json | 28 +
.../registeredidentities.json | 376 +++
.../2024-09-30-preview/replicationusages.json | 208 ++
.../preview/2024-09-30-preview/vaults.json | 2629 +++++++++++++++++
.../2024-09-30-preview/vaultusages.json | 189 ++
.../resource-manager/readme.md | 14 +-
40 files changed, 5777 insertions(+), 1 deletion(-)
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/Capabilities.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_Available.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_NotAvailable.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteRegisteredIdentities.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteVault.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Get.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_GetOperationStatus.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_ListBySubscriptionId.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Undelete.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVault.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVaultExtendedInfo.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationResult.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationStatus.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetPrivateLinkResources.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListBySubscriptionIds.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListOperations.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListPrivateLinkResources.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListReplicationUsages.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListResources.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListUsages.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK3.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithMonitoringSettings.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithRedundancySettings.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithUserAssignedIdentity.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVaultCred.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_ResourceGuardEnabled.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithCMK.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithMonitoringSettings.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithRedundancySettings.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithUserAssignedIdentity.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PatchVault_WithCMK2.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/UpdateVaultExtendedInfo.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/registeredidentities.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/replicationusages.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaults.json
create mode 100644 specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaultusages.json
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/Capabilities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/Capabilities.json
new file mode 100644
index 000000000000..71b7ab2f412f
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/Capabilities.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "api-version": "2024-09-30-preview",
+ "location": "westus",
+ "input": {
+ "type": "Microsoft.RecoveryServices/Vaults",
+ "properties": {
+ "dnsZones": [
+ {
+ "subResource": "AzureBackup"
+ },
+ {
+ "subResource": "AzureSiteRecovery"
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "type": "Microsoft.RecoveryServices/Vaults",
+ "properties": {
+ "dnsZones": [
+ {
+ "subResource": "AzureBackup",
+ "requiredZoneNames": [
+ "privatelink.wus.backup.windowsazure.com",
+ "privatelink.queue.core.windows.net",
+ "privatelink.blob.core.windows.net"
+ ]
+ },
+ {
+ "subResource": "AzureSiteRecovery",
+ "requiredZoneNames": [
+ "privatelink.siterecovery.windowsazure.com"
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_Available.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_Available.json
new file mode 100644
index 000000000000..f6b288982572
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_Available.json
@@ -0,0 +1,19 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "resGroupFoo",
+ "api-version": "2024-09-30-preview",
+ "location": "westus",
+ "input": {
+ "name": "swaggerExample",
+ "type": "Microsoft.RecoveryServices/Vaults"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_NotAvailable.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_NotAvailable.json
new file mode 100644
index 000000000000..ef66802178bb
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/CheckNameAvailability_NotAvailable.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "resGroupBar",
+ "api-version": "2024-09-30-preview",
+ "location": "westus",
+ "input": {
+ "name": "swaggerExample2",
+ "type": "Microsoft.RecoveryServices/Vaults"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": false,
+ "reason": "AlreadyExists",
+ "message": "Resource already exists with the same name."
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteRegisteredIdentities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteRegisteredIdentities.json
new file mode 100644
index 000000000000..bb0e5a7ebbba
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteRegisteredIdentities.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-d41f-4550-9f70-7708a3a2283b",
+ "resourceGroupName": "BCDRIbzRG",
+ "vaultName": "BCDRIbzVault",
+ "identityName": "dpmcontainer01",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteVault.json
new file mode 100644
index 000000000000..08f6af10582d
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeleteVault.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2024-09-30-preview",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2024-09-30-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Get.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Get.json
new file mode 100644
index 000000000000..ff5cf77b14aa
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Get.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "location": "westus",
+ "deletedVaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample",
+ "name": "swaggerExample",
+ "type": "Microsoft.RecoveryServices/locations/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "vaultDeletionTime": "2024-09-20T09:49:46Z",
+ "purgeAt": "2024-10-20T09:49:46Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_GetOperationStatus.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_GetOperationStatus.json
new file mode 100644
index 000000000000..5fc7aa5d479c
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_GetOperationStatus.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "location": "westus",
+ "deletedVaultName": "swaggerExample",
+ "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample/operations/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "name": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "status": "Succeeded",
+ "startTime": "2024-09-20T09:49:44.0478496Z",
+ "endTime": "2024-09-20T09:49:46Z"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_ListBySubscriptionId.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_ListBySubscriptionId.json
new file mode 100644
index 000000000000..f99c155ad9fb
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_ListBySubscriptionId.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "location": "westus",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample1",
+ "name": "swaggerExample1",
+ "type": "Microsoft.RecoveryServices/locations/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample1",
+ "vaultDeletionTime": "2024-09-20T09:49:46Z",
+ "purgeAt": "2024-10-20T09:49:46Z"
+ }
+ },
+ {
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample2",
+ "name": "swaggerExample2",
+ "type": "Microsoft.RecoveryServices/locations/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample2",
+ "vaultDeletionTime": "2024-09-20T09:49:46Z",
+ "purgeAt": "2024-10-20T09:49:46Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Undelete.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Undelete.json
new file mode 100644
index 000000000000..bdd734d94208
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/DeletedVaults_Undelete.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "location": "westus",
+ "deletedVaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "undeleteInput": {
+ "properties": {
+ "recoveryResourceGroupId": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample",
+ "name": "swaggerExample",
+ "type": "Microsoft.RecoveryServices/locations/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "vaultDeletionTime": "2024-09-20T09:49:46Z",
+ "purgeAt": "2024-10-20T09:49:46Z"
+ }
+ },
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample/operations/a93f3cd5-9035-4b1e-a2c9-b16df6d5d34b?api-version=2024-09-30-preview"
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/providers/Microsoft.RecoveryServices/locations/westus/deletedVaults/swaggerExample/operations/a93f3cd5-9035-4b1e-a2c9-b16df6d5d34b?api-version=2024-09-30-preview",
+ "Retry-After": 30
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVault.json
new file mode 100644
index 000000000000..dbf4c1f7c613
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVault.json
@@ -0,0 +1,83 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "monitoringSettings": {
+ "azureMonitorAlertSettings": {
+ "alertsForAllJobFailures": "Enabled",
+ "alertsForAllReplicationIssues": "Enabled",
+ "alertsForAllFailoverIssues": "Disabled"
+ },
+ "classicAlertSettings": {
+ "alertsForCriticalOperations": "Disabled",
+ "emailNotificationsForSiteRecovery": "Enabled"
+ }
+ },
+ "provisioningState": "Succeeded",
+ "privateEndpointConnections": [
+ {
+ "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateEndpointConnections/pe114-pemsi-ecy-rsv.5944358949303501042.backup.75061caa-cba4-4849-8e09-608da4914aad",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.Network/privateEndpoints/pe114-pemsi-ecy-rsv"
+ },
+ "groupIds": [
+ "AzureBackup"
+ ],
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "None",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "privateEndpointStateForBackup": "Enabled",
+ "privateEndpointStateForSiteRecovery": "None",
+ "securitySettings": {
+ "immutabilitySettings": {
+ "state": "Disabled"
+ },
+ "softDeleteSettings": {
+ "softDeleteRetentionPeriodInDays": 14,
+ "softDeleteState": "Enabled",
+ "enhancedSecurityState": "Enabled"
+ },
+ "multiUserAuthorization": "Disabled"
+ },
+ "redundancySettings": {
+ "standardTierStorageRedundancy": "GeoRedundant",
+ "crossRegionRestore": "Enabled"
+ },
+ "secureScore": "None",
+ "bcdrSecurityLevel": "Poor"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVaultExtendedInfo.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVaultExtendedInfo.json
new file mode 100644
index 000000000000..3ecc698dd1e1
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GETVaultExtendedInfo.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "vaultExtendedInfo",
+ "etag": "f0d0260b-b92d-4458-ba0a-32c6cdabacb7",
+ "properties": {
+ "integrityKey": "J09wzS27fnJ+Wjot7xO5wA==",
+ "algorithm": "None"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/extendedInformation/vaultExtendedInfo",
+ "type": "Microsoft.RecoveryServices/vaults/extendedInformation"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationResult.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationResult.json
new file mode 100644
index 000000000000..90be7bd7a4e0
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationResult.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ },
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationStatus.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationStatus.json
new file mode 100644
index 000000000000..940b0b2d72e3
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetOperationStatus.json
@@ -0,0 +1,20 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "operationId": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "name": "YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==",
+ "status": "Succeeded",
+ "startTime": "2019-11-20T09:49:44.0478496Z",
+ "endTime": "2019-11-20T09:49:46Z"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetPrivateLinkResources.json
new file mode 100644
index 000000000000..6e822e0c1b18
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/GetPrivateLinkResources.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace",
+ "resourceGroupName": "petesting",
+ "vaultName": "pemsi-ecy-rsv2",
+ "api-version": "2024-09-30-preview",
+ "privateLinkResourceName": "backupResource"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource",
+ "name": "backupResource",
+ "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources",
+ "properties": {
+ "groupId": "AzureBackup",
+ "requiredMembers": [
+ "backup-fab1",
+ "backup-rec2",
+ "backup-prot1",
+ "backup-ecs1",
+ "backup-tel1",
+ "backup-wbcm1",
+ "backup-fc1",
+ "backup-id1"
+ ],
+ "requiredZoneNames": [
+ "privatelink.ecy.backup.windowsazure.com",
+ "privatelink.queue.core.windows.net",
+ "privatelink.blob.core.windows.net"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListBySubscriptionIds.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListBySubscriptionIds.json
new file mode 100644
index 000000000000..ee6fc8dcd145
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListBySubscriptionIds.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "name": "patchtest",
+ "etag": "W/\"datetime'2017-11-22T11%3A05%3A19.907Z'\"",
+ "tags": {
+ "Love": "India"
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/patchtest",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ {
+ "location": "westus",
+ "name": "today1",
+ "etag": "W/\"datetime'2017-11-21T10%3A52%3A19.633Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/today1",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListOperations.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListOperations.json
new file mode 100644
index 000000000000..203333b98c8b
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListOperations.json
@@ -0,0 +1,463 @@
+{
+ "parameters": {
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "microsoft.recoveryservices/vaults/usages/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Vault Usage",
+ "operation": "Recovery Services Vault usage details.",
+ "description": "Returns usage details for a Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupUsageSummaries/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Usages Summaries",
+ "operation": "Recovery Services Protected Items and Protected Servers usage summaries details.",
+ "description": "Returns summaries for Protected Items and Protected Servers for a Recovery Services ."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/storageConfig/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Vault Storage Config",
+ "operation": "Get Resource Storage Config",
+ "description": "Returns Storage Configuration for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/storageConfig/write",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Vault Storage Config",
+ "operation": "Write Resource Storage Config",
+ "description": "Updates Storage Configuration for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Vault Config",
+ "operation": "Get Resource Config",
+ "description": "Returns Configuration for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupconfig/vaultconfig/write",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Vault Config",
+ "operation": "Update Resource Config",
+ "description": "Updates Configuration for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/tokenInfo/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Token Info",
+ "operation": "Get Vault Token Info",
+ "description": "Returns token information for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupSecurityPIN/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "SecurityPINInfo",
+ "operation": "Get Security PIN Info",
+ "description": "Returns Security PIN Information for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupManagementMetaData/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Management Metadata",
+ "operation": "Get Backup Management Metadata",
+ "description": "Returns Backup Management Metadata for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupOperationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Operation Results",
+ "operation": "Get Backup Operation Result",
+ "description": "Returns Backup Operation Result for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupOperations/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Operation Status",
+ "operation": "Get Backup Operation Status",
+ "description": "Returns Backup Operation Status for Recovery Services Vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupJobs/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Jobs",
+ "operation": "Get Jobs",
+ "description": "Returns all Job Objects"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupJobs/cancel/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Jobs",
+ "operation": "Cancel Jobs",
+ "description": "Cancel the Job"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupJobsExport/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Export Backup Jobs",
+ "operation": "Export Jobs",
+ "description": "Export Jobs"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupJobs/operationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Jobs Operation Results",
+ "operation": "Get Job Operation Result",
+ "description": "Returns the Result of Job Operation."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupJobsExport/operationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Export Backup Jobs Operation Results",
+ "operation": "Get Export Job Operation Result",
+ "description": "Returns the Result of Export Job Operation."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Recovery Points",
+ "operation": "Get Recovery Points",
+ "description": "Get Recovery Points for Protected Items."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/restore/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Recovery Points",
+ "operation": "Restore Recovery Points",
+ "description": "Restore Recovery Points for Protected Items."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/provisionInstantItemRecovery/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Recovery Points",
+ "operation": "Provision Instant Item Recovery for Protected Item",
+ "description": "Provision Instant Item Recovery for Protected Item"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints/revokeInstantItemRecovery/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Recovery Points",
+ "operation": "Revoke Instant Item Recovery for Protected Item",
+ "description": "Revoke Instant Item Recovery for Protected Item"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupPolicies/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Policies",
+ "operation": "Get Protection Policy",
+ "description": "Returns all Protection Policies"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupPolicies/write",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Policies",
+ "operation": "Create Protection Policy",
+ "description": "Creates Protection Policy"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupPolicies/delete",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Policies",
+ "operation": "Delete Protection Policy",
+ "description": "Delete a Protection Policy"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupPolicies/operationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Policy Operation Results",
+ "operation": "Get Policy Operation Results",
+ "description": "Get Results of Policy Operation."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupPolicies/operationsStatus/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Policy Operation Status",
+ "operation": "Get Policy Operation Status",
+ "description": "Get Status of Policy Operation."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Items",
+ "operation": "Get Protected Item Details",
+ "description": "Returns object details of the Protected Item"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupProtectedItems/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Items",
+ "operation": "Get All Protected Items",
+ "description": "Returns the list of all Protected Items."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/write",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Items",
+ "operation": "Create Backup Protected Item",
+ "description": "Create a backup Protected Item"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/delete",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Items",
+ "operation": "Delete Protected Items",
+ "description": "Deletes Protected Item"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Item Operation Results",
+ "operation": "Get Protected Items Operation Results",
+ "description": "Gets Result of Operation Performed on Protected Items."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/operationsStatus/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Item Operation Status",
+ "operation": "Get Protected Items operation status",
+ "description": "Returns the status of Operation performed on Protected Items."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/protectedItems/backup/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protected Items",
+ "operation": "Backup Protected Item",
+ "description": "Performs Backup for Protected Item."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupProtectableItems/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Protectable Items",
+ "operation": "Get Protectable Items",
+ "description": "Returns list of all Protectable Items."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/refreshContainers/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Refresh Containers",
+ "operation": "Refresh container",
+ "description": "Refreshes the container list"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/operationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Refresh Containers Operation Results",
+ "operation": "Get Operation Results",
+ "description": "Returns status of the operation"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupProtectionContainers/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Protection Containers",
+ "operation": "Get Containers In Subscription",
+ "description": "Returns all containers belonging to the subscription"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protection Containers",
+ "operation": "Get Registered Container",
+ "description": "Returns all registered containers"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/operationResults/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protection Containers Operation Results",
+ "operation": "Get Container Operation Results",
+ "description": "Gets result of Operation performed on Protection Container."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupEngines",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Engines",
+ "operation": "List of backup management servers.",
+ "description": "Returns all the backup management servers registered with vault."
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupStatus",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Backup Status",
+ "operation": "Check Backup Status for Vault",
+ "description": "Check Backup Status for Recovery Services Vaults"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupPreValidateProtection",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "PreValidate Protection",
+ "operation": "Pre Validate Enable Protection",
+ "description": ""
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupValidateFeatures",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Validate Features",
+ "operation": "Validate Features",
+ "description": "Validate Features"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/backupProtectionIntent/write",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protection Intent",
+ "operation": "Create backup Protection Intent",
+ "description": "Create a backup Protection Intent"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/{fabricName}/protectionContainers/{containerName}/items/read",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Workload Items",
+ "operation": "Get all items in a container",
+ "description": "Get all items in a container"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "microsoft.recoveryservices/vaults/backupFabrics/protectionContainers/inquire/action",
+ "display": {
+ "provider": "microsoft.recoveryservices",
+ "resource": "Protection Containers Inquire",
+ "operation": "Get all items in a container",
+ "description": "Get all items in a container"
+ },
+ "origin": "user"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListPrivateLinkResources.json
new file mode 100644
index 000000000000..5f9dbdbc4f27
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListPrivateLinkResources.json
@@ -0,0 +1,60 @@
+{
+ "parameters": {
+ "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace",
+ "resourceGroupName": "petesting",
+ "vaultName": "pemsi-ecy-rsv2",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource",
+ "name": "backupResource",
+ "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources",
+ "properties": {
+ "groupId": "AzureBackup",
+ "requiredMembers": [
+ "backup-fab1",
+ "backup-rec2",
+ "backup-prot1",
+ "backup-ecs1",
+ "backup-tel1",
+ "backup-wbcm1",
+ "backup-fc1",
+ "backup-id1"
+ ],
+ "requiredZoneNames": [
+ "privatelink.ecy.backup.windowsazure.com",
+ "privatelink.queue.core.windows.net",
+ "privatelink.blob.core.windows.net"
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/gaallarg/providers/Microsoft.RecoveryServices/vaults/amchandnTest2702A/privateLinkResources/siteRecoveryResource",
+ "name": "siteRecoveryResource",
+ "type": "Microsoft.RecoveryServices/vaults/privateLinkResources",
+ "properties": {
+ "groupId": "AzureSiteRecovery",
+ "requiredMembers": [
+ "siteRecovery-rcm1",
+ "siteRecovery-prot2",
+ "siteRecovery-tel1",
+ "siteRecovery-srs1",
+ "siteRecovery-prot2b",
+ "siteRecovery-id1"
+ ],
+ "requiredZoneNames": [
+ "privatelink.ecy.siterecovery.windowsazure.com",
+ "privatelink.queue.core.windows.net",
+ "privatelink.blob.core.windows.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListReplicationUsages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListReplicationUsages.json
new file mode 100644
index 000000000000..09a2ed543fc4
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListReplicationUsages.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-09-30-preview",
+ "vaultName": "avrai7517Vault1",
+ "resourceGroupName": "avrai7517RG1",
+ "subscriptionId": "6808dbbc-98c7-431f-a1b1-9580902423b7"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "monitoringSummary": {
+ "unHealthyVmCount": 0,
+ "unHealthyProviderCount": 0,
+ "eventsCount": 0,
+ "deprecatedProviderCount": 0,
+ "supportedProviderCount": 0,
+ "unsupportedProviderCount": 0
+ },
+ "jobsSummary": {
+ "failedJobs": 0,
+ "suspendedJobs": 0,
+ "inProgressJobs": 0
+ },
+ "protectedItemCount": 2,
+ "registeredServersCount": 2,
+ "recoveryPlanCount": 1
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListResources.json
new file mode 100644
index 000000000000..f0104cf1b6c1
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListResources.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "location": "westus",
+ "name": "patchtest",
+ "etag": "W/\"datetime'2017-11-22T11%3A05%3A19.907Z'\"",
+ "tags": {
+ "Love": "India"
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/patchtest",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ {
+ "location": "westus",
+ "name": "today1",
+ "etag": "W/\"datetime'2017-11-21T10%3A52%3A19.633Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "properties": {
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/today1",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListUsages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListUsages.json
new file mode 100644
index 000000000000..12565fca6a3e
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/ListUsages.json
@@ -0,0 +1,180 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "unit": "Count",
+ "currentValue": 6,
+ "limit": -1,
+ "name": {
+ "value": "MABContainersCount",
+ "localizedValue": "Backup management servers"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 3,
+ "limit": -1,
+ "name": {
+ "value": "ProtectedItemCount",
+ "localizedValue": "Backup items/Azure virtual machine backup"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "ProtectedItemCriticalCount",
+ "localizedValue": "Critical"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "ProtectedItemWarningCount",
+ "localizedValue": "Warning"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "IaaSVMProtectedItemCount",
+ "localizedValue": "Azure Virtual Machines"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "IaaSVMProtectedItemCriticalCount",
+ "localizedValue": "Critical"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "IaaSVMProtectedItemWarningCount",
+ "localizedValue": "Warning"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "MABProtectedItemCount",
+ "localizedValue": "File-Folders"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 1,
+ "limit": -1,
+ "name": {
+ "value": "DPMProtectedItemCount",
+ "localizedValue": "DPM Protected Items Count"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 2,
+ "limit": -1,
+ "name": {
+ "value": "AzureBackupServerProtectedItemCount",
+ "localizedValue": "Azure Backup Server Protected Items Count"
+ }
+ },
+ {
+ "unit": "Count",
+ "quotaPeriod": "P1D",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "InProgressJobsCount",
+ "localizedValue": "In progress"
+ }
+ },
+ {
+ "unit": "Count",
+ "quotaPeriod": "P1D",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "FailedJobsCount",
+ "localizedValue": "Failed"
+ }
+ },
+ {
+ "unit": "Bytes",
+ "currentValue": 117007930,
+ "limit": -1,
+ "name": {
+ "value": "GRSStorageUsage",
+ "localizedValue": "Cloud - GRS"
+ }
+ },
+ {
+ "unit": "Bytes",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "LRSStorageUsage",
+ "localizedValue": "Cloud - LRS"
+ }
+ },
+ {
+ "unit": "Count",
+ "currentValue": 5,
+ "limit": -1,
+ "name": {
+ "value": "ManagedInstances",
+ "localizedValue": "Protected Instances"
+ }
+ },
+ {
+ "unit": "Bytes",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "GRSDedupStorageUsage",
+ "localizedValue": "Dedup - GRS"
+ }
+ },
+ {
+ "unit": "Bytes",
+ "currentValue": 0,
+ "limit": -1,
+ "name": {
+ "value": "LRSDedupStorageUsage",
+ "localizedValue": "Dedup - LRS"
+ }
+ },
+ {
+ "unit": "Bytes",
+ "currentValue": 117851553792,
+ "limit": -1,
+ "name": {
+ "value": "UsedDiskSize",
+ "localizedValue": "Backup Engines' Disk Used"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault.json
new file mode 100644
index 000000000000..d1ba0b4c3fa4
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK.json
new file mode 100644
index 000000000000..b4495e8040f0
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK.json
@@ -0,0 +1,77 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ },
+ "properties": {
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi"
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi",
+ "useSystemAssignedIdentity": false
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK3.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK3.json
new file mode 100644
index 000000000000..99b7b9ca0013
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithCMK3.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ },
+ "properties": {
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi",
+ "useSystemAssignedIdentity": false
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithMonitoringSettings.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithMonitoringSettings.json
new file mode 100644
index 000000000000..1c71c33dfd1a
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithMonitoringSettings.json
@@ -0,0 +1,65 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "properties": {
+ "monitoringSettings": {
+ "azureMonitorAlertSettings": {
+ "alertsForAllJobFailures": "Enabled",
+ "alertsForAllReplicationIssues": "Enabled",
+ "alertsForAllFailoverIssues": "Disabled"
+ },
+ "classicAlertSettings": {
+ "alertsForCriticalOperations": "Disabled",
+ "emailNotificationsForSiteRecovery": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "monitoringSettings": {
+ "azureMonitorAlertSettings": {
+ "alertsForAllJobFailures": "Enabled",
+ "alertsForAllReplicationIssues": "Enabled",
+ "alertsForAllFailoverIssues": "Disabled"
+ },
+ "classicAlertSettings": {
+ "alertsForCriticalOperations": "Disabled",
+ "emailNotificationsForSiteRecovery": "Enabled"
+ }
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2024-09-30-preview",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2024-09-30-preview"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithRedundancySettings.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithRedundancySettings.json
new file mode 100644
index 000000000000..d56672b0754e
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithRedundancySettings.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "redundancySettings": {
+ "standardTierStorageRedundancy": "GeoRedundant",
+ "crossRegionRestore": "Enabled"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "redundancySettings": {
+ "standardTierStorageRedundancy": "GeoRedundant",
+ "crossRegionRestore": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithUserAssignedIdentity.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithUserAssignedIdentity.json
new file mode 100644
index 000000000000..0816cb011131
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PATCHVault_WithUserAssignedIdentity.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault.json
new file mode 100644
index 000000000000..061bcb4b3f13
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault.json
@@ -0,0 +1,72 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "publicNetworkAccess": "Enabled"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "RS0",
+ "tier": "Standard"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "RS0",
+ "tier": "Standard"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVaultCred.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVaultCred.json
new file mode 100644
index 000000000000..0cef32ff7d29
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVaultCred.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-d41f-4550-9f70-7708a3a2283b",
+ "resourceGroupName": "BCDRIbzRG",
+ "vaultName": "BCDRIbzVault",
+ "certificateName": "BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials",
+ "api-version": "2024-09-30-preview",
+ "certificateRequest": {
+ "properties": {
+ "authType": "AAD",
+ "certificate": "TUlJRE5EQ0NBaHlnQXdJQkFnSVFDYUxFKzVTSlNVeWdncDM0VS9HUm9qQU5CZ2txaGtpRzl3MEJBUXNGQURBWE1SVXdFd1lEVlFRREV3eGhiV05vWVc1a2JpNWpiMjB3SGhjTk1qSXhNREkwTVRJd05qRTRXaGNOTWpNeE1ESTBNVEl4TmpFNFdqQVhNUlV3RXdZRFZRUURFd3hoYldOb1lXNWtiaTVqYjIwd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUN4cFpwS293a2p4VU9VWkpLT2JvdGdPWXkzaW9UVkxMMmZyaW9nZVN1Qm5IMWw3aVdQWW9kUHRoWS8yVmh6ZFVUckNXL25pNUh3b0JHYzZMMHF6UGlBWXpHek94RmpMQjZjdFNkbm9nL1A4eEV2OGE0cnJWZlBZdS9INStoTGx3N0RubXlTNWs4TU9sSVhUemVWNkxZV2I2RWlpTFppc0k1R3lLU1liemNaQmJKdnhLTVdGdHRCV08xZUwzUWNUejlpb1VGQzVnRlFKQzg3YXFkeDR1Wk9WYzRLM3Ixb09sTFBKdmRLN25YU3VWci9ZOC80ZHhCdDJZUTRia0hjM2EzcUNBbTZrV0QzamRiajhCZmhlWWNVNjFFZ3llVFV2MlI4dzRubWJqVXZxRW05cDZtTG4xMTdEWWpQTHNFODVTL0FpQmF0dkNhQ3hCZ0lxb1N1blBOUkFnTUJBQUdqZkRCNk1BNEdBMVVkRHdFQi93UUVBd0lGb0RBSkJnTlZIUk1FQWpBQU1CMEdBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFmQmdOVkhTTUVHREFXZ0JRR1NZcDJMUTJwOE5wMHUzRThJZDdRUjRTQXBqQWRCZ05WSFE0RUZnUVVCa21LZGkwTnFmRGFkTHR4UENIZTBFZUVnS1l3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQUp2ZG9yRmJ4cExZaUhYRHpnR001WmxMWTRDZE1LYW5BdzVDZDNFVnhDbkhtT05ISnpLRmpzdHZjdUN1TDZ2S1ptci9abm5ENXNLUnE0d0xnTXV6dlNXNGtQTXlWeENrYzdVYnNZSWJCSXNIUDl3cUNmcUY5aG5LSE9YZFJJV2tBVXhnbmYxSlpLZjR1NlpTSzZ3dExaME9VT0c5Mmd3SlB2eW5PVmJoeWpqczdQTVpONEw1djZyeHJkRWp0WG5sYzIvRDlnS0NOTFhFZHdRM0dzS05ZTGZvYy9DT3JmbEIrRHVPSThrVzM0WmxzYlFHelgyQ3ArWVVlSDNrQlBjY3RpUWNURHFQcW5YS0NNMTJ6MGZDTjVpNXRkRlUrM0VzemZBQkpiOEZpU2ZCWFF1UUZRRDNDTDkraVdjZXhrMmxQako2akZIbHZtak9XbTdjQllHZlc4ST0="
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials",
+ "type": "Microsoft.RecoveryServices/vaults/certificates",
+ "id": "/Subscriptions/77777777-d41f-4550-9f70-7708a3a2283b/resourceGroups/BCDRIbzRG/providers/Microsoft.RecoveryServices/vaults/BCDRIbzVault/certificates/BCDRIbzVault77777777-d41f-4550-9f70-7708a3a2283b-12-18-2017-vaultcredentials",
+ "properties": {
+ "authType": "AzureActiveDirectory",
+ "certificate": "TUlJRE5EQ0NBaHlnQXdJQkFnSVFDYUxFKzVTSlNVeWdncDM0VS9HUm9qQU5CZ2txaGtpRzl3MEJBUXNGQURBWE1SVXdFd1lEVlFRREV3eGhiV05vWVc1a2JpNWpiMjB3SGhjTk1qSXhNREkwTVRJd05qRTRXaGNOTWpNeE1ESTBNVEl4TmpFNFdqQVhNUlV3RXdZRFZRUURFd3hoYldOb1lXNWtiaTVqYjIwd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUN4cFpwS293a2p4VU9VWkpLT2JvdGdPWXkzaW9UVkxMMmZyaW9nZVN1Qm5IMWw3aVdQWW9kUHRoWS8yVmh6ZFVUckNXL25pNUh3b0JHYzZMMHF6UGlBWXpHek94RmpMQjZjdFNkbm9nL1A4eEV2OGE0cnJWZlBZdS9INStoTGx3N0RubXlTNWs4TU9sSVhUemVWNkxZV2I2RWlpTFppc0k1R3lLU1liemNaQmJKdnhLTVdGdHRCV08xZUwzUWNUejlpb1VGQzVnRlFKQzg3YXFkeDR1Wk9WYzRLM3Ixb09sTFBKdmRLN25YU3VWci9ZOC80ZHhCdDJZUTRia0hjM2EzcUNBbTZrV0QzamRiajhCZmhlWWNVNjFFZ3llVFV2MlI4dzRubWJqVXZxRW05cDZtTG4xMTdEWWpQTHNFODVTL0FpQmF0dkNhQ3hCZ0lxb1N1blBOUkFnTUJBQUdqZkRCNk1BNEdBMVVkRHdFQi93UUVBd0lGb0RBSkJnTlZIUk1FQWpBQU1CMEdBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUJCZ2dyQmdFRkJRY0RBakFmQmdOVkhTTUVHREFXZ0JRR1NZcDJMUTJwOE5wMHUzRThJZDdRUjRTQXBqQWRCZ05WSFE0RUZnUVVCa21LZGkwTnFmRGFkTHR4UENIZTBFZUVnS1l3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQUp2ZG9yRmJ4cExZaUhYRHpnR001WmxMWTRDZE1LYW5BdzVDZDNFVnhDbkhtT05ISnpLRmpzdHZjdUN1TDZ2S1ptci9abm5ENXNLUnE0d0xnTXV6dlNXNGtQTXlWeENrYzdVYnNZSWJCSXNIUDl3cUNmcUY5aG5LSE9YZFJJV2tBVXhnbmYxSlpLZjR1NlpTSzZ3dExaME9VT0c5Mmd3SlB2eW5PVmJoeWpqczdQTVpONEw1djZyeHJkRWp0WG5sYzIvRDlnS0NOTFhFZHdRM0dzS05ZTGZvYy9DT3JmbEIrRHVPSThrVzM0WmxzYlFHelgyQ3ArWVVlSDNrQlBjY3RpUWNURHFQcW5YS0NNMTJ6MGZDTjVpNXRkRlUrM0VzemZBQkpiOEZpU2ZCWFF1UUZRRDNDTDkraVdjZXhrMmxQako2akZIbHZtak9XbTdjQllHZlc4ST0=",
+ "resourceId": 8726350008099341699,
+ "aadAuthority": "https://login.windows.net",
+ "aadTenantId": "9b0c2069-2eba-489f-95f4-eca15cb602ab",
+ "servicePrincipalClientId": "4932d0bd-b5f9-4659-94a0-7ab02d918933",
+ "servicePrincipalObjectId": "2d60221e-cef5-4e13-ba66-b33701a533bb",
+ "azureManagementEndpointAudience": "https://ppe1-id1.wus.wabppe.obs-test.com/restapi/",
+ "subject": "CN=Windows Azure Tools",
+ "validFrom": "2017-12-18T14:47:53+05:30",
+ "validTo": "2017-12-23T14:57:53+05:30",
+ "thumbprint": "019FE9BAD18A5A09A5CA53B593AF66331F3054AF",
+ "friendlyName": "",
+ "issuer": "CN=Windows Azure Tools",
+ "aadAudience": "api://9b0c2069-2eba-489f-95f4-eca15cb602ab/RecoveryServiceVault/US/AADReregisterTest/8726350008099341699"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_ResourceGuardEnabled.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_ResourceGuardEnabled.json
new file mode 100644
index 000000000000..aa76f944a32b
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_ResourceGuardEnabled.json
@@ -0,0 +1,114 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi"
+ },
+ "infrastructureEncryption": "Enabled"
+ },
+ "resourceGuardOperationRequests": [
+ "/subscriptions/38304e13-357e-405e-9e9a-220351dcce8c/resourcegroups/ankurResourceGuard1/providers/Microsoft.DataProtection/resourceGuards/ResourceGuard38-1/modifyEncryptionSettings/default"
+ ]
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "location": "West US",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi",
+ "useSystemAssignedIdentity": false
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Provisioning",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi",
+ "useSystemAssignedIdentity": false
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithCMK.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithCMK.json
new file mode 100644
index 000000000000..d6bb608fd46f
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithCMK.json
@@ -0,0 +1,111 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi"
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "location": "West US",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi",
+ "useSystemAssignedIdentity": false
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Provisioning",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "userAssignedIdentity": "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi",
+ "useSystemAssignedIdentity": false
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithMonitoringSettings.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithMonitoringSettings.json
new file mode 100644
index 000000000000..be39956ef716
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithMonitoringSettings.json
@@ -0,0 +1,105 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "monitoringSettings": {
+ "azureMonitorAlertSettings": {
+ "alertsForAllJobFailures": "Enabled",
+ "alertsForAllReplicationIssues": "Enabled",
+ "alertsForAllFailoverIssues": "Disabled"
+ },
+ "classicAlertSettings": {
+ "alertsForCriticalOperations": "Disabled",
+ "emailNotificationsForSiteRecovery": "Enabled"
+ }
+ }
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "monitoringSettings": {
+ "azureMonitorAlertSettings": {
+ "alertsForAllJobFailures": "Enabled",
+ "alertsForAllReplicationIssues": "Enabled",
+ "alertsForAllFailoverIssues": "Disabled"
+ },
+ "classicAlertSettings": {
+ "alertsForCriticalOperations": "Disabled",
+ "emailNotificationsForSiteRecovery": "Enabled"
+ }
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "RS0",
+ "tier": "Standard"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "monitoringSettings": {
+ "azureMonitorAlertSettings": {
+ "alertsForAllJobFailures": "Enabled",
+ "alertsForAllReplicationIssues": "Enabled",
+ "alertsForAllFailoverIssues": "Disabled"
+ },
+ "classicAlertSettings": {
+ "alertsForCriticalOperations": "Disabled",
+ "emailNotificationsForSiteRecovery": "Enabled"
+ }
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "RS0",
+ "tier": "Standard"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithRedundancySettings.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithRedundancySettings.json
new file mode 100644
index 000000000000..796a6bdb0c90
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithRedundancySettings.json
@@ -0,0 +1,84 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "redundancySettings": {
+ "standardTierStorageRedundancy": "GeoRedundant",
+ "crossRegionRestore": "Enabled"
+ }
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "location": "West US",
+ "identity": {
+ "type": "SystemAssigned"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "redundancySettings": {
+ "standardTierStorageRedundancy": "GeoRedundant",
+ "crossRegionRestore": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "RS0",
+ "tier": "Standard"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b",
+ "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247",
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "redundancySettings": {
+ "standardTierStorageRedundancy": "GeoRedundant",
+ "crossRegionRestore": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "RS0",
+ "tier": "Standard"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithUserAssignedIdentity.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithUserAssignedIdentity.json
new file mode 100644
index 000000000000..4929f52aaff1
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PUTVault_WithUserAssignedIdentity.json
@@ -0,0 +1,82 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "properties": {
+ "publicNetworkAccess": "Enabled"
+ },
+ "sku": {
+ "name": "Standard"
+ },
+ "location": "West US",
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "TestUpdatedKey": "TestUpdatedValue"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {}
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Provisioning"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ },
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PatchVault_WithCMK2.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PatchVault_WithCMK2.json
new file mode 100644
index 000000000000..599f0de3c28d
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/PatchVault_WithCMK2.json
@@ -0,0 +1,69 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "HelloWorld",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "vault": {
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "encryption": {
+ "kekIdentity": {
+ "useSystemAssignedIdentity": true
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "location": "westus",
+ "name": "swaggerExample",
+ "etag": "W/\"datetime'2017-12-15T12%3A36%3A51.68Z'\"",
+ "tags": {
+ "PatchKey": "PatchKeyUpdated"
+ },
+ "identity": {
+ "type": "UserAssigned",
+ "userAssignedIdentities": {
+ "/subscriptions/85bf5e8c-3084-4f42-add2-746ebb7e97b2/resourcegroups/defaultrg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/examplemsi": {
+ "clientId": "fbe75b66-01c5-4f87-a220-233af3270436",
+ "principalId": "075a0ca6-43f6-4434-9abf-c9b1b79f9219"
+ }
+ }
+ },
+ "properties": {
+ "publicNetworkAccess": "Enabled",
+ "provisioningState": "Succeeded",
+ "encryption": {
+ "keyVaultProperties": {
+ "keyUri": "https://cmk2xkv.vault.azure.net/keys/Key1/0767b348bb1a4c07baa6c4ec0055d2b3"
+ },
+ "kekIdentity": {
+ "useSystemAssignedIdentity": true
+ },
+ "infrastructureEncryption": "Enabled"
+ }
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample",
+ "type": "Microsoft.RecoveryServices/vaults",
+ "sku": {
+ "name": "Standard"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "10",
+ "Azure-AsyncOperation": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15",
+ "Location": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/HelloWorld/providers/Microsoft.RecoveryServices/vaults/swaggerExample/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2015-03-15"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/UpdateVaultExtendedInfo.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/UpdateVaultExtendedInfo.json
new file mode 100644
index 000000000000..3f5be12af8ab
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/examples/UpdateVaultExtendedInfo.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "77777777-b0c6-47a2-b37c-d8e65a629c18",
+ "resourceGroupName": "Default-RecoveryServices-ResourceGroup",
+ "vaultName": "swaggerExample",
+ "api-version": "2024-09-30-preview",
+ "resourceResourceExtendedInfoDetails": {
+ "properties": {
+ "integrityKey": "J99wzS27fmJ+Wjot7xO5wA==",
+ "algorithm": "None"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "vaultExtendedInfo",
+ "etag": "f0d0260b-b92d-4458-ba0a-32c6cdabacb7",
+ "properties": {
+ "integrityKey": "J99wzS27fmJ+Wjot7xO5wA==",
+ "algorithm": "None"
+ },
+ "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample/extendedInformation/vaultExtendedInfo",
+ "type": "Microsoft.RecoveryServices/vaults/extendedInformation"
+ }
+ }
+ }
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/registeredidentities.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/registeredidentities.json
new file mode 100644
index 000000000000..964b0813c1bd
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/registeredidentities.json
@@ -0,0 +1,376 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-30-preview",
+ "title": "RecoveryServicesClient",
+ "x-ms-code-generation-settings": {
+ "internalConstructors": false
+ }
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/certificates/{certificateName}": {
+ "put": {
+ "tags": [
+ "VaultCertificates"
+ ],
+ "description": "Uploads a certificate for a resource.",
+ "operationId": "VaultCertificates_Create",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "name": "certificateName",
+ "in": "path",
+ "description": "Certificate friendly name.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "certificateRequest",
+ "in": "body",
+ "description": "Input parameters for uploading the vault certificate.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CertificateRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VaultCertificateResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Download vault credential file": {
+ "$ref": "./examples/PUTVaultCred.json"
+ }
+ }
+ }
+ },
+ "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/registeredIdentities/{identityName}": {
+ "delete": {
+ "tags": [
+ "RegisteredIdentities"
+ ],
+ "description": "Unregisters the given container from your Recovery Services vault.",
+ "operationId": "RegisteredIdentities_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "name": "identityName",
+ "in": "path",
+ "description": "Name of the protection container to unregister.",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "NoContent"
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Delete registered Identity": {
+ "$ref": "./examples/DeleteRegisteredIdentities.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CertificateRequest": {
+ "description": "Details of the certificate to be uploaded to the vault.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RawCertificateData"
+ }
+ }
+ },
+ "RawCertificateData": {
+ "description": "Raw certificate data.",
+ "type": "object",
+ "properties": {
+ "authType": {
+ "description": "Specifies the authentication type.",
+ "enum": [
+ "Invalid",
+ "ACS",
+ "AAD",
+ "AccessControlService",
+ "AzureActiveDirectory"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AuthType",
+ "modelAsString": true
+ }
+ },
+ "certificate": {
+ "format": "byte",
+ "description": "The base64 encoded certificate raw data string",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceCertificateAndAadDetails": {
+ "description": "Certificate details representing the Vault credentials for AAD.",
+ "required": [
+ "certificate",
+ "resourceId",
+ "aadAuthority",
+ "aadTenantId",
+ "servicePrincipalClientId",
+ "servicePrincipalObjectId",
+ "azureManagementEndpointAudience",
+ "subject",
+ "validFrom",
+ "validTo",
+ "thumbprint",
+ "friendlyName",
+ "issuer"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ResourceCertificateDetails"
+ }
+ ],
+ "properties": {
+ "aadAuthority": {
+ "description": "AAD tenant authority.",
+ "type": "string"
+ },
+ "aadTenantId": {
+ "description": "AAD tenant Id.",
+ "type": "string"
+ },
+ "servicePrincipalClientId": {
+ "description": "AAD service principal clientId.",
+ "type": "string"
+ },
+ "servicePrincipalObjectId": {
+ "description": "AAD service principal ObjectId.",
+ "type": "string"
+ },
+ "azureManagementEndpointAudience": {
+ "description": "Azure Management Endpoint Audience.",
+ "type": "string"
+ },
+ "serviceResourceId": {
+ "description": "Service Resource Id.",
+ "type": "string"
+ },
+ "aadAudience": {
+ "description": "AAD audience for the resource",
+ "type": "string"
+ }
+ },
+ "x-ms-discriminator-value": "AzureActiveDirectory"
+ },
+ "ResourceCertificateAndAcsDetails": {
+ "description": "Certificate details representing the Vault credentials for ACS.",
+ "required": [
+ "certificate",
+ "resourceId",
+ "globalAcsNamespace",
+ "globalAcsHostName",
+ "globalAcsRPRealm",
+ "subject",
+ "validFrom",
+ "validTo",
+ "thumbprint",
+ "friendlyName",
+ "issuer"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ResourceCertificateDetails"
+ }
+ ],
+ "properties": {
+ "globalAcsNamespace": {
+ "description": "ACS namespace name - tenant for our service.",
+ "type": "string"
+ },
+ "globalAcsHostName": {
+ "description": "Acs mgmt host name to connect to.",
+ "type": "string"
+ },
+ "globalAcsRPRealm": {
+ "description": "Global ACS namespace RP realm.",
+ "type": "string"
+ }
+ },
+ "x-ms-discriminator-value": "AccessControlService"
+ },
+ "ResourceCertificateDetails": {
+ "description": "Certificate details representing the Vault credentials.",
+ "required": [
+ "authType"
+ ],
+ "type": "object",
+ "properties": {
+ "authType": {
+ "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.",
+ "type": "string"
+ },
+ "certificate": {
+ "format": "byte",
+ "description": "The base64 encoded certificate raw data string.",
+ "type": "string"
+ },
+ "friendlyName": {
+ "description": "Certificate friendly name.",
+ "type": "string"
+ },
+ "issuer": {
+ "description": "Certificate issuer.",
+ "type": "string"
+ },
+ "resourceId": {
+ "format": "int64",
+ "description": "Resource ID of the vault.",
+ "type": "integer"
+ },
+ "subject": {
+ "description": "Certificate Subject Name.",
+ "type": "string"
+ },
+ "thumbprint": {
+ "description": "Certificate thumbprint.",
+ "type": "string"
+ },
+ "validFrom": {
+ "format": "date-time",
+ "description": "Certificate Validity start Date time.",
+ "type": "string"
+ },
+ "validTo": {
+ "format": "date-time",
+ "description": "Certificate Validity End Date time.",
+ "type": "string"
+ }
+ },
+ "discriminator": "authType"
+ },
+ "VaultCertificateResponse": {
+ "description": "Certificate corresponding to a vault that can be used by clients to register themselves with the vault.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Resource name associated with the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...",
+ "type": "string",
+ "readOnly": true
+ },
+ "id": {
+ "description": "Resource Id represents the complete path to the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/ResourceCertificateDetails"
+ }
+ },
+ "x-ms-azure-resource": true
+ }
+ },
+ "parameters": {
+ "SubscriptionId": {
+ "name": "subscriptionId",
+ "in": "path",
+ "description": "The subscription Id.",
+ "required": true,
+ "type": "string"
+ },
+ "ResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "description": "The name of the resource group where the recovery services vault is present.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "VaultName": {
+ "name": "vaultName",
+ "in": "path",
+ "description": "The name of the recovery services vault.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "ApiVersion": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Client Api Version.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account."
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/replicationusages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/replicationusages.json
new file mode 100644
index 000000000000..12b0cb45a2da
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/replicationusages.json
@@ -0,0 +1,208 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-30-preview",
+ "title": "RecoveryServicesClient",
+ "x-ms-code-generation-settings": {
+ "internalConstructors": false
+ }
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/replicationUsages": {
+ "get": {
+ "tags": [
+ "ReplicationUsages"
+ ],
+ "description": "Fetches the replication usages of the vault.",
+ "operationId": "ReplicationUsages_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ReplicationUsageList"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "Gets Replication usages of vault": {
+ "$ref": "./examples/ListReplicationUsages.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "JobsSummary": {
+ "description": "Summary of the replication job data for this vault.",
+ "type": "object",
+ "properties": {
+ "failedJobs": {
+ "description": "Count of failed jobs.",
+ "type": "integer"
+ },
+ "suspendedJobs": {
+ "description": "Count of suspended jobs.",
+ "type": "integer"
+ },
+ "inProgressJobs": {
+ "description": "Count of in-progress jobs.",
+ "type": "integer"
+ }
+ }
+ },
+ "MonitoringSummary": {
+ "description": "Summary of the replication monitoring data for this vault.",
+ "type": "object",
+ "properties": {
+ "unHealthyVmCount": {
+ "description": "Count of unhealthy VMs.",
+ "type": "integer"
+ },
+ "unHealthyProviderCount": {
+ "description": "Count of unhealthy replication providers.",
+ "type": "integer"
+ },
+ "eventsCount": {
+ "description": "Count of all critical warnings.",
+ "type": "integer"
+ },
+ "deprecatedProviderCount": {
+ "description": "Count of all deprecated recovery service providers.",
+ "type": "integer"
+ },
+ "supportedProviderCount": {
+ "description": "Count of all the supported recovery service providers.",
+ "type": "integer"
+ },
+ "unsupportedProviderCount": {
+ "description": "Count of all the unsupported recovery service providers.",
+ "type": "integer"
+ }
+ }
+ },
+ "ReplicationUsage": {
+ "description": "Replication usages of a vault.",
+ "type": "object",
+ "properties": {
+ "monitoringSummary": {
+ "$ref": "#/definitions/MonitoringSummary",
+ "description": "Summary of the replication monitoring data for this vault."
+ },
+ "jobsSummary": {
+ "$ref": "#/definitions/JobsSummary",
+ "description": "Summary of the replication jobs data for this vault."
+ },
+ "protectedItemCount": {
+ "description": "Number of replication protected items for this vault.",
+ "type": "integer"
+ },
+ "recoveryPlanCount": {
+ "description": "Number of replication recovery plans for this vault.",
+ "type": "integer"
+ },
+ "registeredServersCount": {
+ "description": "Number of servers registered to this vault.",
+ "type": "integer"
+ },
+ "recoveryServicesProviderAuthType": {
+ "description": "The authentication type of recovery service providers in the vault.",
+ "type": "integer"
+ }
+ }
+ },
+ "ReplicationUsageList": {
+ "description": "Replication usages for vault.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of replication usages for the given vault.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ReplicationUsage"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "SubscriptionId": {
+ "name": "subscriptionId",
+ "in": "path",
+ "description": "The subscription Id.",
+ "required": true,
+ "type": "string"
+ },
+ "ResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "description": "The name of the resource group where the recovery services vault is present.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "VaultName": {
+ "name": "vaultName",
+ "in": "path",
+ "description": "The name of the recovery services vault.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "ApiVersion": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Client Api Version.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account."
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaults.json
new file mode 100644
index 000000000000..c638e5a2fabf
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaults.json
@@ -0,0 +1,2629 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-30-preview",
+ "title": "RecoveryServicesClient",
+ "x-ms-code-generation-settings": {
+ "internalConstructors": false
+ }
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "ListPrivateLinkResources"
+ ],
+ "summary": "Returns the list of private link resources that need to be created for Backup and SiteRecovery",
+ "operationId": "PrivateLinkResources_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResources"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "List PrivateLinkResources": {
+ "$ref": "./examples/ListPrivateLinkResources.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources/{privateLinkResourceName}": {
+ "get": {
+ "tags": [
+ "GetPrivateLinkResources"
+ ],
+ "summary": "Returns a specified private link resource that need to be created for Backup and SiteRecovery",
+ "operationId": "PrivateLinkResources_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "privateLinkResourceName",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Get PrivateLinkResource": {
+ "$ref": "./examples/GetPrivateLinkResources.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/locations/{location}/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "RecoveryServices"
+ ],
+ "summary": "API to check for resource name availability.\r\nA name is available if no other resource exists that has the same SubscriptionId, Resource Name and Type\r\nor if one or more such resources exist, each of these must be GC'd and their time of deletion be more than 24 Hours Ago",
+ "operationId": "RecoveryServices_CheckNameAvailability",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../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": "location",
+ "in": "path",
+ "description": "Location of the resource",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "input",
+ "in": "body",
+ "description": "Contains information about Resource type and Resource name",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CheckNameAvailabilityParameters"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CheckNameAvailabilityResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Availability status of Resource Name when no resource with same name, type and subscription exists, nor has been deleted within last 24 hours": {
+ "$ref": "./examples/CheckNameAvailability_Available.json"
+ },
+ "Availability status of Resource Name when resource with same name, type and subscription exists": {
+ "$ref": "./examples/CheckNameAvailability_NotAvailable.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{location}/capabilities": {
+ "post": {
+ "tags": [
+ "RecoveryServices"
+ ],
+ "summary": "API to get details about capabilities provided by Microsoft.RecoveryServices RP",
+ "operationId": "RecoveryServices_Capabilities",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "description": "Location of the resource",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "name": "input",
+ "in": "body",
+ "description": "Contains information about Resource type and properties to get capabilities",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ResourceCapabilities"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CapabilitiesResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Capabilities for Microsoft.RecoveryServices/Vaults": {
+ "$ref": "./examples/Capabilities.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{location}/deletedVaults": {
+ "get": {
+ "tags": [
+ "DeletedVaults"
+ ],
+ "description": "List of all DeletedVaults in the subscription.",
+ "operationId": "DeletedVaults_ListBySubscriptionId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List of all DeletedVaults in the subscription.",
+ "schema": {
+ "$ref": "#/definitions/DeletedVaultList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Gets the list of DeletedVaults in subscription": {
+ "$ref": "./examples/DeletedVaults_ListBySubscriptionId.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{location}/deletedVaults/{deletedVaultName}": {
+ "get": {
+ "tags": [
+ "DeletedVaults"
+ ],
+ "description": "Get the DeletedVault details.",
+ "operationId": "DeletedVaults_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/DeletedVaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DeletedVault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Get Recovery Services DeletedVault": {
+ "$ref": "./examples/DeletedVaults_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{location}/deletedVaults/{deletedVaultName}/undelete": {
+ "post": {
+ "tags": [
+ "DeletedVaults"
+ ],
+ "description": "Undelete the DeletedVault.",
+ "operationId": "DeletedVaults_Undelete",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/DeletedVaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "undeleteInput",
+ "in": "body",
+ "description": "Undelete input.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DeletedVaultUndeleteInput"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DeletedVault"
+ }
+ },
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "type": "string"
+ },
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Undelete the Recovery Services DeletedVault": {
+ "$ref": "./examples/DeletedVaults_Undelete.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{location}/deletedVaults/{deletedVaultName}/operations/{operationId}": {
+ "get": {
+ "tags": [
+ "DeletedVaults"
+ ],
+ "description": "Gets the operation status for a DeletedVault.",
+ "operationId": "DeletedVaults_GetOperationStatus",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
+ },
+ {
+ "$ref": "#/parameters/DeletedVaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/OperationIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OperationResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get DeletedVault Operation Status": {
+ "$ref": "./examples/DeletedVaults_GetOperationStatus.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/vaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Fetches all the resources of the specified type in the subscription.",
+ "operationId": "Vaults_ListBySubscriptionId",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../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/VaultList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "List of Recovery Services Resources in SubscriptionId": {
+ "$ref": "./examples/ListBySubscriptionIds.json"
+ }
+ }
+ }
+ },
+ "/providers/Microsoft.RecoveryServices/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "Returns the list of available operations.",
+ "operationId": "Operations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ClientDiscoveryResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "ListOperations": {
+ "$ref": "./examples/ListOperations.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Retrieve a list of Vaults.",
+ "operationId": "Vaults_ListByResourceGroup",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VaultList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink",
+ "itemName": "value"
+ },
+ "x-ms-examples": {
+ "List of Recovery Services Resources in ResourceGroup": {
+ "$ref": "./examples/ListResources.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Get the Vault details.",
+ "operationId": "Vaults_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Get Recovery Services Resource": {
+ "$ref": "./examples/GETVault.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Creates or updates a Recovery Services vault.",
+ "operationId": "Vaults_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "name": "vault",
+ "in": "body",
+ "description": "Recovery Services Vault to be created.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ {
+ "name": "x-ms-authorization-auxiliary",
+ "in": "header",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Create or Update Recovery Services vault": {
+ "$ref": "./examples/PUTVault.json"
+ },
+ "Create or Update Vault with User Assigned Identity": {
+ "$ref": "./examples/PUTVault_WithUserAssignedIdentity.json"
+ },
+ "Create or Update Vault with CustomerManagedKeys": {
+ "$ref": "./examples/PUTVault_WithCMK.json"
+ },
+ "Create or Update Vault With Monitoring Setting": {
+ "$ref": "./examples/PUTVault_WithMonitoringSettings.json"
+ },
+ "Create or Update Vault With Redundancy Setting": {
+ "$ref": "./examples/PUTVault_WithRedundancySettings.json"
+ },
+ "Create or Update Vault performing critical operation With MUA": {
+ "$ref": "./examples/PUTVault_ResourceGuardEnabled.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Deletes a vault.",
+ "operationId": "Vaults_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "NoContent"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Delete Recovery Services Vault": {
+ "$ref": "./examples/DeleteVault.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Updates the vault.",
+ "operationId": "Vaults_Update",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "name": "vault",
+ "in": "body",
+ "description": "Recovery Services Vault to be created.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PatchVault"
+ }
+ },
+ {
+ "name": "x-ms-authorization-auxiliary",
+ "in": "header",
+ "type": "string"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Update Resource": {
+ "$ref": "./examples/PATCHVault.json"
+ },
+ "Update Resource With User Assigned Identity": {
+ "$ref": "./examples/PATCHVault_WithUserAssignedIdentity.json"
+ },
+ "Update Resource With CustomerManagedKeys": {
+ "$ref": "./examples/PATCHVault_WithCMK.json"
+ },
+ "Update Resource With CustomerManagedKeys2": {
+ "$ref": "./examples/PatchVault_WithCMK2.json"
+ },
+ "Update Resource With CustomerManagedKeys3": {
+ "$ref": "./examples/PATCHVault_WithCMK3.json"
+ },
+ "Update Vault With Monitoring Setting": {
+ "$ref": "./examples/PATCHVault_WithMonitoringSettings.json"
+ },
+ "Update Vault With Redundancy Setting": {
+ "$ref": "./examples/PATCHVault_WithRedundancySettings.json"
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/extendedInformation/vaultExtendedInfo": {
+ "get": {
+ "tags": [
+ "VaultExtendedInfo"
+ ],
+ "description": "Get the vault extended info.",
+ "operationId": "VaultExtendedInfo_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VaultExtendedInfoResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Get ExtendedInfo of Resource": {
+ "$ref": "./examples/GETVaultExtendedInfo.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "VaultExtendedInfo"
+ ],
+ "description": "Create vault extended info.",
+ "operationId": "VaultExtendedInfo_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "resourceResourceExtendedInfoDetails",
+ "in": "body",
+ "description": "Details of ResourceExtendedInfo",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultExtendedInfoResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VaultExtendedInfoResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "Put ExtendedInfo of Resource": {
+ "$ref": "./examples/UpdateVaultExtendedInfo.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "VaultExtendedInfo"
+ ],
+ "description": "Update vault extended info.",
+ "operationId": "VaultExtendedInfo_Update",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "resourceResourceExtendedInfoDetails",
+ "in": "body",
+ "description": "Details of ResourceExtendedInfo",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultExtendedInfoResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VaultExtendedInfoResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-examples": {
+ "PATCH ExtendedInfo of Resource": {
+ "$ref": "./examples/UpdateVaultExtendedInfo.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/operationStatus/{operationId}": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Gets the operation status for a resource.",
+ "operationId": "GetOperationStatus",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "name": "operationId",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OperationResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Operation Status": {
+ "$ref": "./examples/GetOperationStatus.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/operationResults/{operationId}": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "description": "Gets the operation result for a resource.",
+ "operationId": "GetOperationResult",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "name": "operationId",
+ "in": "path",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Operation Result": {
+ "$ref": "./examples/GetOperationResult.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AzureMonitorAlertSettings": {
+ "description": "Settings for Azure Monitor based alerts",
+ "type": "object",
+ "properties": {
+ "alertsForAllJobFailures": {
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AlertsState",
+ "modelAsString": true
+ }
+ },
+ "alertsForAllReplicationIssues": {
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AlertsState",
+ "modelAsString": true
+ }
+ },
+ "alertsForAllFailoverIssues": {
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AlertsState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "CheckNameAvailabilityParameters": {
+ "description": "Resource Name availability input parameters - Resource type and resource name",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Describes the Resource type: Microsoft.RecoveryServices/Vaults",
+ "type": "string"
+ },
+ "name": {
+ "description": "Resource name for which availability needs to be checked",
+ "type": "string"
+ }
+ }
+ },
+ "CheckNameAvailabilityResult": {
+ "description": "Response for check name availability API. Resource provider will set availability as true | false.",
+ "type": "object",
+ "properties": {
+ "nameAvailable": {
+ "type": "boolean"
+ },
+ "reason": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ }
+ }
+ },
+ "ResourceCapabilitiesBase": {
+ "description": "Base class for request and response capabilities information for Microsoft.RecoveryServices",
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "properties": {
+ "type": {
+ "description": "Describes the Resource type: Microsoft.RecoveryServices/Vaults",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceCapabilities": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/ResourceCapabilitiesBase"
+ }
+ ],
+ "description": "Input to get capabilities information for Microsoft.RecoveryServices",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CapabilitiesProperties"
+ }
+ }
+ },
+ "CapabilitiesResponse": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/ResourceCapabilitiesBase"
+ }
+ ],
+ "description": "Capabilities response for Microsoft.RecoveryServices",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CapabilitiesResponseProperties"
+ }
+ }
+ },
+ "CapabilitiesProperties": {
+ "description": "Capabilities information",
+ "type": "object",
+ "properties": {
+ "dnsZones": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "$ref": "#/definitions/DNSZone"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "CapabilitiesResponseProperties": {
+ "description": "Capabilities properties in response",
+ "type": "object",
+ "properties": {
+ "dnsZones": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "$ref": "#/definitions/DNSZoneResponse"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "DNSZone": {
+ "description": "DNSZone information",
+ "type": "object",
+ "properties": {
+ "subResource": {
+ "description": "Subresource type for vault AzureBackup, AzureBackup_secondary or AzureSiteRecovery",
+ "enum": [
+ "AzureBackup",
+ "AzureBackup_secondary",
+ "AzureSiteRecovery"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "VaultSubResourceType",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "DNSZoneResponse": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DNSZone"
+ }
+ ],
+ "type": "object",
+ "description": "DNSZone information for Microsoft.RecoveryServices",
+ "properties": {
+ "requiredZoneNames": {
+ "description": "The private link resource Private link DNS zone names.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ClassicAlertSettings": {
+ "description": "Settings for classic alerts",
+ "type": "object",
+ "properties": {
+ "alertsForCriticalOperations": {
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AlertsState",
+ "modelAsString": true
+ }
+ },
+ "emailNotificationsForSiteRecovery": {
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "AlertsState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "ClientDiscoveryDisplay": {
+ "description": "Localized display information of an operation.",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Name of the provider for display purposes",
+ "type": "string"
+ },
+ "resource": {
+ "description": "ResourceType for which this Operation can be performed.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Operations Name itself.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the operation having details of what operation is about.",
+ "type": "string"
+ }
+ }
+ },
+ "ClientDiscoveryForLogSpecification": {
+ "description": "Class to represent shoebox log specification in json client discovery.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the log.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Localized display name",
+ "type": "string"
+ },
+ "blobDuration": {
+ "description": "Blobs created in customer storage account per hour",
+ "type": "string"
+ }
+ }
+ },
+ "ClientDiscoveryForProperties": {
+ "description": "Class to represent shoebox properties in json client discovery.",
+ "type": "object",
+ "properties": {
+ "serviceSpecification": {
+ "$ref": "#/definitions/ClientDiscoveryForServiceSpecification",
+ "description": "Operation properties."
+ }
+ }
+ },
+ "ClientDiscoveryForServiceSpecification": {
+ "description": "Class to represent shoebox service specification in json client discovery.",
+ "type": "object",
+ "properties": {
+ "logSpecifications": {
+ "description": "List of log specifications of this operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClientDiscoveryForLogSpecification"
+ }
+ }
+ }
+ },
+ "ClientDiscoveryResponse": {
+ "description": "Operations List response which contains list of available APIs.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "List of available operations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClientDiscoveryValueForSingleApi"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next chunk of the response",
+ "type": "string"
+ }
+ }
+ },
+ "ClientDiscoveryValueForSingleApi": {
+ "description": "Available operation details.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the Operation.",
+ "type": "string"
+ },
+ "display": {
+ "$ref": "#/definitions/ClientDiscoveryDisplay",
+ "description": "Contains the localized display information for this particular operation"
+ },
+ "origin": {
+ "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/ClientDiscoveryForProperties",
+ "description": "ShoeBox properties for the given operation."
+ }
+ }
+ },
+ "CrossSubscriptionRestoreSettings": {
+ "description": "Settings for Cross Subscription Restore Settings",
+ "type": "object",
+ "properties": {
+ "crossSubscriptionRestoreState": {
+ "enum": [
+ "Enabled",
+ "Disabled",
+ "PermanentlyDisabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "crossSubscriptionRestoreState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "DeletedVaultList": {
+ "description": "The response model for a list of DeletedVaults.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of DeletedVaults.",
+ "type": "array",
+ "readOnly": true,
+ "items": {
+ "$ref": "#/definitions/DeletedVault"
+ }
+ },
+ "nextLink": {
+ "description": "The value of next link.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "DeletedVault": {
+ "description": "DeletedVault information as returned by the resource provider.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "ARM ID of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "ARM name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Type of resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/DeletedVaultProperties"
+ }
+ }
+ },
+ "DeletedVaultProperties": {
+ "description": "Properties of the DeletedVault.",
+ "type": "object",
+ "properties": {
+ "vaultId": {
+ "description": "ARM Id of the Vault which was deleted.",
+ "type": "string",
+ "readOnly": true
+ },
+ "vaultDeletionTime": {
+ "description": "Time in UTC at which the Vault was deleted.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "purgeAt": {
+ "description": "Time in UTC at which the DeletedVault will be purged.",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ }
+ }
+ },
+ "DeletedVaultUndeleteInput": {
+ "description": "Input definition for DeletedVault undelete.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/DeletedVaultUndeleteInputProperties",
+ "description": "Undelete input properties."
+ }
+ }
+ },
+ "DeletedVaultUndeleteInputProperties": {
+ "description": "Input definition for DeletedVault undelete properties.",
+ "required": [
+ "recoveryResourceGroupId"
+ ],
+ "type": "object",
+ "properties": {
+ "recoveryResourceGroupId": {
+ "description": "Recovery resource group Id.",
+ "type": "string"
+ }
+ }
+ },
+ "RestoreSettings": {
+ "description": "Restore Settings of the vault",
+ "type": "object",
+ "properties": {
+ "crossSubscriptionRestoreSettings": {
+ "description": "Settings for CrossSubscriptionRestore",
+ "$ref": "#/definitions/CrossSubscriptionRestoreSettings"
+ }
+ }
+ },
+ "ImmutabilitySettings": {
+ "description": "Immutability Settings of vault",
+ "type": "object",
+ "properties": {
+ "state": {
+ "enum": [
+ "Disabled",
+ "Unlocked",
+ "Locked"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ImmutabilityState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "SoftDeleteSettings": {
+ "description": "Soft delete Settings of vault",
+ "type": "object",
+ "properties": {
+ "softDeleteState": {
+ "enum": [
+ "Invalid",
+ "Enabled",
+ "Disabled",
+ "AlwaysON"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "SoftDeleteState",
+ "modelAsString": true
+ }
+ },
+ "softDeleteRetentionPeriodInDays": {
+ "format": "int32",
+ "description": "Soft delete retention period in days",
+ "type": "integer"
+ },
+ "enhancedSecurityState": {
+ "enum": [
+ "Invalid",
+ "Enabled",
+ "Disabled",
+ "AlwaysON"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "EnhancedSecurityState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "MultiUserAuthorization": {
+ "description": "MUA Settings of vault",
+ "enum": [
+ "Invalid",
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "MultiUserAuthorization",
+ "modelAsString": true
+ }
+ },
+ "MonitoringSettings": {
+ "description": "Monitoring Settings of the vault",
+ "type": "object",
+ "properties": {
+ "azureMonitorAlertSettings": {
+ "description": "Settings for Azure Monitor based alerts",
+ "$ref": "#/definitions/AzureMonitorAlertSettings"
+ },
+ "classicAlertSettings": {
+ "description": "Settings for classic alerts",
+ "$ref": "#/definitions/ClassicAlertSettings"
+ }
+ }
+ },
+ "Resource": {
+ "description": "ARM Resource.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id represents the complete path to the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name associated with the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...",
+ "type": "string",
+ "readOnly": true
+ },
+ "etag": {
+ "description": "Optional ETag.",
+ "type": "string"
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "SecuritySettings": {
+ "description": "Security Settings of the vault",
+ "type": "object",
+ "properties": {
+ "immutabilitySettings": {
+ "description": "Immutability Settings of a vault",
+ "$ref": "#/definitions/ImmutabilitySettings"
+ },
+ "softDeleteSettings": {
+ "description": "Soft delete Settings of a vault",
+ "$ref": "#/definitions/SoftDeleteSettings"
+ },
+ "multiUserAuthorization": {
+ "description": "MUA Settings of a vault",
+ "$ref": "#/definitions/MultiUserAuthorization"
+ }
+ }
+ },
+ "Sku": {
+ "description": "Identifies the unique system identifier for each Azure resource.",
+ "required": [
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of SKU is RS0 (Recovery Services 0th version) and the tier is standard tier. They do not have affect on backend storage redundancy or any other vault settings. To manage storage redundancy, use the backupstorageconfig",
+ "enum": [
+ "Standard",
+ "RS0"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "SkuName",
+ "modelAsString": true
+ }
+ },
+ "tier": {
+ "description": "The Sku tier.",
+ "type": "string"
+ },
+ "family": {
+ "description": "The sku family",
+ "type": "string"
+ },
+ "size": {
+ "description": "The sku size",
+ "type": "string"
+ },
+ "capacity": {
+ "description": "The sku capacity",
+ "type": "string"
+ }
+ }
+ },
+ "TrackedResource": {
+ "description": "Tracked resource with location.",
+ "type": "object",
+ "required": [
+ "location"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "description": "Resource location.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "PatchTrackedResource": {
+ "description": "Tracked resource with location.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "location": {
+ "description": "Resource location.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "UpgradeDetails": {
+ "description": "Details for upgrading vault.",
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "description": "ID of the vault upgrade operation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTimeUtc": {
+ "description": "UTC time at which the upgrade operation has started.",
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "lastUpdatedTimeUtc": {
+ "description": "UTC time at which the upgrade operation status was last updated.",
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "endTimeUtc": {
+ "description": "UTC time at which the upgrade operation has ended.",
+ "type": "string",
+ "readOnly": true,
+ "format": "date-time"
+ },
+ "status": {
+ "description": "Status of the vault upgrade operation.",
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "Upgraded",
+ "Failed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "VaultUpgradeState",
+ "modelAsString": true
+ }
+ },
+ "message": {
+ "description": "Message to the user containing information about the upgrade operation.",
+ "type": "string",
+ "readOnly": true
+ },
+ "triggerType": {
+ "description": "The way the vault upgrade was triggered.",
+ "enum": [
+ "UserTriggered",
+ "ForcedUpgrade"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "TriggerType",
+ "modelAsString": true
+ }
+ },
+ "upgradedResourceId": {
+ "description": "Resource ID of the upgraded vault.",
+ "type": "string",
+ "readOnly": true
+ },
+ "previousResourceId": {
+ "description": "Resource ID of the vault before the upgrade.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "Vault": {
+ "description": "Resource information, as returned by the resource provider.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/TrackedResource"
+ }
+ ],
+ "properties": {
+ "identity": {
+ "$ref": "#/definitions/IdentityData"
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultProperties"
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku"
+ },
+ "systemData": {
+ "$ref": "#/definitions/systemData"
+ }
+ }
+ },
+ "systemData": {
+ "description": "Metadata pertaining to creation and last modification of the resource.",
+ "type": "object",
+ "readOnly": true,
+ "properties": {
+ "createdBy": {
+ "type": "string",
+ "description": "The identity that created the resource."
+ },
+ "createdByType": {
+ "type": "string",
+ "description": "The type of identity that created the resource.",
+ "enum": [
+ "User",
+ "Application",
+ "ManagedIdentity",
+ "Key"
+ ],
+ "x-ms-enum": {
+ "name": "createdByType",
+ "modelAsString": true
+ }
+ },
+ "createdAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp of resource creation (UTC)."
+ },
+ "lastModifiedBy": {
+ "type": "string",
+ "description": "The identity that last modified the resource."
+ },
+ "lastModifiedByType": {
+ "type": "string",
+ "description": "The type of identity that last modified the resource.",
+ "enum": [
+ "User",
+ "Application",
+ "ManagedIdentity",
+ "Key"
+ ],
+ "x-ms-enum": {
+ "name": "createdByType",
+ "modelAsString": true
+ }
+ },
+ "lastModifiedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The type of identity that last modified the resource."
+ }
+ }
+ },
+ "PatchVault": {
+ "description": "Patch Resource information, as returned by the resource provider.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/PatchTrackedResource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/VaultProperties"
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku"
+ },
+ "identity": {
+ "$ref": "#/definitions/IdentityData"
+ }
+ }
+ },
+ "VaultExtendedInfo": {
+ "description": "Vault extended information.",
+ "type": "object",
+ "properties": {
+ "integrityKey": {
+ "description": "Integrity key.",
+ "type": "string"
+ },
+ "encryptionKey": {
+ "description": "Encryption key.",
+ "type": "string"
+ },
+ "encryptionKeyThumbprint": {
+ "description": "Encryption key thumbprint.",
+ "type": "string"
+ },
+ "algorithm": {
+ "description": "Algorithm for Vault ExtendedInfo",
+ "type": "string"
+ }
+ }
+ },
+ "VaultExtendedInfoResource": {
+ "description": "Vault extended information.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/VaultExtendedInfo",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "VaultList": {
+ "description": "The response model for a list of Vaults.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "VaultProperties": {
+ "description": "Properties of the vault.",
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Provisioning State.",
+ "type": "string",
+ "readOnly": true
+ },
+ "upgradeDetails": {
+ "$ref": "#/definitions/UpgradeDetails"
+ },
+ "privateEndpointConnections": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnectionVaultProperties"
+ },
+ "description": "List of private endpoint connection.",
+ "readOnly": true
+ },
+ "privateEndpointStateForBackup": {
+ "description": "Private endpoint state for backup.",
+ "enum": [
+ "None",
+ "Enabled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "VaultPrivateEndpointState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpointStateForSiteRecovery": {
+ "description": "Private endpoint state for site recovery.",
+ "enum": [
+ "None",
+ "Enabled"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "VaultPrivateEndpointState",
+ "modelAsString": true
+ }
+ },
+ "encryption": {
+ "description": "Customer Managed Key details of the resource.",
+ "type": "object",
+ "properties": {
+ "keyVaultProperties": {
+ "$ref": "#/definitions/CmkKeyVaultProperties"
+ },
+ "kekIdentity": {
+ "$ref": "#/definitions/CmkKekIdentity"
+ },
+ "infrastructureEncryption": {
+ "description": "Enabling/Disabling the Double Encryption state",
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "InfrastructureEncryptionState",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "moveDetails": {
+ "description": "The details of the latest move operation performed on the Azure Resource",
+ "type": "object",
+ "properties": {
+ "operationId": {
+ "description": "OperationId of the Resource Move Operation",
+ "type": "string",
+ "readOnly": true
+ },
+ "startTimeUtc": {
+ "description": "Start Time of the Resource Move Operation",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "completionTimeUtc": {
+ "description": "End Time of the Resource Move Operation",
+ "type": "string",
+ "format": "date-time",
+ "readOnly": true
+ },
+ "sourceResourceId": {
+ "description": "Source Resource of the Resource Move Operation",
+ "type": "string",
+ "readOnly": true
+ },
+ "targetResourceId": {
+ "description": "Target Resource of the Resource Move Operation",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "moveState": {
+ "description": "The State of the Resource after the move operation",
+ "type": "string",
+ "readOnly": true,
+ "enum": [
+ "Unknown",
+ "InProgress",
+ "PrepareFailed",
+ "CommitFailed",
+ "PrepareTimedout",
+ "CommitTimedout",
+ "MoveSucceeded",
+ "Failure",
+ "CriticalFailure",
+ "PartialSuccess"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceMoveState",
+ "modelAsString": true
+ }
+ },
+ "backupStorageVersion": {
+ "description": "Backup storage version",
+ "enum": [
+ "V1",
+ "V2",
+ "Unassigned"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "BackupStorageVersion",
+ "modelAsString": true
+ }
+ },
+ "publicNetworkAccess": {
+ "description": "property to enable or disable resource provider inbound network traffic from public clients",
+ "type": "string",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "monitoringSettings": {
+ "description": "Monitoring Settings of the vault",
+ "$ref": "#/definitions/MonitoringSettings"
+ },
+ "restoreSettings": {
+ "description": "Restore Settings of the vault",
+ "$ref": "#/definitions/RestoreSettings"
+ },
+ "redundancySettings": {
+ "description": "The redundancy Settings of a Vault",
+ "type": "object",
+ "properties": {
+ "standardTierStorageRedundancy": {
+ "description": "The storage redundancy setting of a vault",
+ "enum": [
+ "Invalid",
+ "LocallyRedundant",
+ "GeoRedundant",
+ "ZoneRedundant"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "standardTierStorageRedundancy",
+ "modelAsString": true
+ }
+ },
+ "crossRegionRestore": {
+ "description": "Flag to show if Cross Region Restore is enabled on the Vault or not",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "crossRegionRestore",
+ "modelAsString": true
+ }
+ }
+ }
+ },
+ "securitySettings": {
+ "description": "Security Settings of the vault",
+ "$ref": "#/definitions/SecuritySettings"
+ },
+ "secureScore": {
+ "description": "Secure Score of Recovery Services Vault",
+ "type": "string",
+ "enum": [
+ "None",
+ "Minimum",
+ "Adequate",
+ "Maximum"
+ ],
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "SecureScoreLevel",
+ "modelAsString": true
+ }
+ },
+ "bcdrSecurityLevel": {
+ "description": "Security levels of Recovery Services Vault for business continuity and disaster recovery",
+ "type": "string",
+ "enum": [
+ "Poor",
+ "Fair",
+ "Good",
+ "Excellent"
+ ],
+ "readOnly": true,
+ "x-ms-enum": {
+ "name": "BCDRSecurityLevel",
+ "modelAsString": true
+ }
+ },
+ "resourceGuardOperationRequests": {
+ "description": "ResourceGuardOperationRequests on which LAC check will be performed",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "IdentityData": {
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "description": "Identity for the resource.",
+ "properties": {
+ "principalId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The principal ID of resource identity."
+ },
+ "tenantId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The tenant ID of resource."
+ },
+ "type": {
+ "type": "string",
+ "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.",
+ "enum": [
+ "SystemAssigned",
+ "None",
+ "UserAssigned",
+ "SystemAssigned, UserAssigned"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceIdentityType",
+ "modelAsString": true
+ }
+ },
+ "userAssignedIdentities": {
+ "description": "The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.",
+ "type": "object",
+ "additionalProperties": {
+ "$ref": "#/definitions/UserIdentity"
+ }
+ }
+ }
+ },
+ "UserIdentity": {
+ "type": "object",
+ "description": "A resource identity that is managed by the user of the service.",
+ "properties": {
+ "principalId": {
+ "description": "The principal ID of the user-assigned identity.",
+ "type": "string",
+ "readOnly": true
+ },
+ "clientId": {
+ "description": "The client ID of the user-assigned identity.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PrivateEndpointConnectionVaultProperties": {
+ "description": "Information to be stored in Vault properties as an element of privateEndpointConnections List.",
+ "readOnly": true,
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Format of id subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.[Service]/{resource}/{resourceName}/privateEndpointConnections/{connectionName}.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "name": {
+ "description": "The name of the private Endpoint Connection",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "The type, which will be of the format, Microsoft.RecoveryServices/vaults/privateEndpointConnections",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "The location of the private Endpoint connection",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "PrivateEndpointConnection": {
+ "description": "Private Endpoint Connection Response Properties.",
+ "readOnly": true,
+ "type": "object",
+ "properties": {
+ "provisioningState": {
+ "description": "Gets or sets provisioning state of the private endpoint connection.",
+ "readOnly": true,
+ "enum": [
+ "Succeeded",
+ "Deleting",
+ "Failed",
+ "Pending"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint"
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState"
+ },
+ "groupIds": {
+ "description": "Group Ids for the Private Endpoint",
+ "type": "array",
+ "items": {
+ "description": "GroupId for the PrivateEndpointConnection - AzureBackup, AzureBackup_secondary or AzureSiteRecovery",
+ "enum": [
+ "AzureBackup",
+ "AzureBackup_secondary",
+ "AzureSiteRecovery"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "VaultSubResourceType",
+ "modelAsString": true
+ }
+ }
+ }
+ }
+ },
+ "PrivateEndpoint": {
+ "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection.",
+ "readOnly": true,
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Gets or sets id.",
+ "readOnly": true,
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkServiceConnectionState": {
+ "description": "Gets or sets private link service connection state.",
+ "readOnly": true,
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "Gets or sets the status.",
+ "readOnly": true,
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "description": {
+ "description": "Gets or sets description.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "actionsRequired": {
+ "description": "Gets or sets actions required.",
+ "readOnly": true,
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkResources": {
+ "description": "Class which represent the stamps associated with the vault.",
+ "readOnly": true,
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "A collection of private link resources",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ },
+ "nextLink": {
+ "description": "Link to the next chunk of the response",
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkResource": {
+ "description": "Information of the private link resource.",
+ "readOnly": true,
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "Resource properties",
+ "x-ms-client-flatten": true
+ },
+ "id": {
+ "description": "Fully qualified identifier of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Name of the resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "e.g. Microsoft.RecoveryServices/vaults/privateLinkResources",
+ "readOnly": true,
+ "type": "string"
+ }
+ }
+ },
+ "PrivateLinkResourceProperties": {
+ "type": "object",
+ "description": "Properties of the private link resource.",
+ "properties": {
+ "groupId": {
+ "description": "e.g. f9ad6492-33d4-4690-9999-6bfd52a0d081 (Backup) or f9ad6492-33d4-4690-9999-6bfd52a0d082 (SiteRecovery)",
+ "readOnly": true,
+ "type": "string"
+ },
+ "requiredMembers": {
+ "description": "[backup-ecs1, backup-prot1, backup-prot1b, backup-prot1c, backup-id1]",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "requiredZoneNames": {
+ "description": "The private link resource Private link DNS zone name.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "CmkKeyVaultProperties": {
+ "type": "object",
+ "description": "The properties of the Key Vault which hosts CMK",
+ "properties": {
+ "keyUri": {
+ "description": "The key uri of the Customer Managed Key",
+ "type": "string"
+ }
+ }
+ },
+ "CmkKekIdentity": {
+ "type": "object",
+ "description": "The details of the identity used for CMK",
+ "properties": {
+ "useSystemAssignedIdentity": {
+ "type": "boolean",
+ "description": "Indicate that system assigned identity should be used. Mutually exclusive with 'userAssignedIdentity' field"
+ },
+ "userAssignedIdentity": {
+ "type": "string",
+ "description": "The user assigned identity to be used to grant permissions in case the type of identity used is UserAssigned"
+ }
+ }
+ },
+ "OperationResource": {
+ "type": "object",
+ "description": "Operation Resource",
+ "properties": {
+ "endTime": {
+ "description": "End time of the operation",
+ "format": "date-time",
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error",
+ "description": "Required if status == failed or status == canceled. This is the OData v4 error format, used by the RPC and will go into the v2.2 Azure REST API guidelines."
+ },
+ "id": {
+ "description": "It should match what is used to GET the operation result",
+ "type": "string"
+ },
+ "name": {
+ "description": "It must match the last segment of the \"id\" field, and will typically be a GUID / system generated value",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the operation. (InProgress/Success/Failed/Cancelled)",
+ "type": "string"
+ },
+ "startTime": {
+ "description": "Start time of the operation",
+ "format": "date-time",
+ "type": "string"
+ }
+ }
+ },
+ "CloudError": {
+ "description": "An error response from Azure Backup.",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "title": "CloudError",
+ "x-ms-external": true
+ },
+ "Error": {
+ "description": "The resource management error response.",
+ "properties": {
+ "additionalInfo": {
+ "description": "The error additional info.",
+ "items": {
+ "$ref": "#/definitions/ErrorAdditionalInfo"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "code": {
+ "description": "The error code.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "details": {
+ "description": "The error details.",
+ "items": {
+ "$ref": "#/definitions/Error"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "message": {
+ "description": "The error message.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "target": {
+ "description": "The error target.",
+ "readOnly": true,
+ "type": "string"
+ }
+ }
+ },
+ "ErrorAdditionalInfo": {
+ "description": "The resource management error additional info.",
+ "properties": {
+ "info": {
+ "description": "The additional info.",
+ "readOnly": true,
+ "type": "object"
+ },
+ "type": {
+ "description": "The additional info type.",
+ "readOnly": true,
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "SubscriptionId": {
+ "name": "subscriptionId",
+ "in": "path",
+ "description": "The subscription Id.",
+ "required": true,
+ "type": "string"
+ },
+ "ResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "description": "The name of the resource group where the recovery services vault is present.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "VaultName": {
+ "name": "vaultName",
+ "in": "path",
+ "description": "The name of the recovery services vault.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "DeletedVaultName": {
+ "name": "deletedVaultName",
+ "in": "path",
+ "description": "The name of the deleted recovery services vault.",
+ "required": true,
+ "pattern": "^[A-Za-z][A-Za-z0-9-]*$",
+ "type": "string"
+ },
+ "ApiVersion": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Client Api Version.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account."
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaultusages.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaultusages.json
new file mode 100644
index 000000000000..54dd16018afd
--- /dev/null
+++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/preview/2024-09-30-preview/vaultusages.json
@@ -0,0 +1,189 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-09-30-preview",
+ "title": "RecoveryServicesClient",
+ "x-ms-code-generation-settings": {
+ "internalConstructors": false
+ }
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "paths": {
+ "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/usages": {
+ "get": {
+ "tags": [
+ "VaultUsages"
+ ],
+ "description": "Fetches the usages of the vault.",
+ "operationId": "Usages_ListByVaults",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/VaultUsageList"
+ }
+ }
+ },
+ "deprecated": false,
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "Gets vault usages": {
+ "$ref": "./examples/ListUsages.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "VaultUsage": {
+ "description": "Usages of a vault.",
+ "type": "object",
+ "properties": {
+ "unit": {
+ "description": "Unit of the usage.",
+ "enum": [
+ "Count",
+ "Bytes",
+ "Seconds",
+ "Percent",
+ "CountPerSecond",
+ "BytesPerSecond"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "UsagesUnit",
+ "modelAsString": true
+ }
+ },
+ "quotaPeriod": {
+ "description": "Quota period of usage.",
+ "type": "string"
+ },
+ "nextResetTime": {
+ "format": "date-time",
+ "description": "Next reset time of usage.",
+ "type": "string"
+ },
+ "currentValue": {
+ "format": "int64",
+ "description": "Current value of usage.",
+ "type": "integer"
+ },
+ "limit": {
+ "format": "int64",
+ "description": "Limit of usage.",
+ "type": "integer"
+ },
+ "name": {
+ "$ref": "#/definitions/NameInfo",
+ "description": "Name of usage."
+ }
+ }
+ },
+ "VaultUsageList": {
+ "description": "Usage for vault.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "The list of usages for the given vault.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VaultUsage"
+ }
+ }
+ }
+ },
+ "NameInfo": {
+ "description": "The name of usage.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Value of usage.",
+ "type": "string"
+ },
+ "localizedValue": {
+ "description": "Localized value of usage.",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "SubscriptionId": {
+ "name": "subscriptionId",
+ "in": "path",
+ "description": "The subscription Id.",
+ "required": true,
+ "type": "string"
+ },
+ "ResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "description": "The name of the resource group where the recovery services vault is present.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "VaultName": {
+ "name": "vaultName",
+ "in": "path",
+ "description": "The name of the recovery services vault.",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "ApiVersion": {
+ "name": "api-version",
+ "in": "query",
+ "description": "Client Api Version.",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account."
+ }
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ]
+}
diff --git a/specification/recoveryservices/resource-manager/readme.md b/specification/recoveryservices/resource-manager/readme.md
index af54fd007665..ef1a5c027cf0 100644
--- a/specification/recoveryservices/resource-manager/readme.md
+++ b/specification/recoveryservices/resource-manager/readme.md
@@ -42,7 +42,6 @@ semantic-validator: true
message-format: json
```
-
### Tag: package-2024-10
These settings apply only when `--tag=package-2024-10` is specified on the command line.
@@ -55,6 +54,18 @@ input-file:
- Microsoft.RecoveryServices/stable/2024-10-01/vaultusages.json
```
+### Tag: package-preview-2024-09
+
+These settings apply only when `--tag=package-preview-2024-09` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2024-09'
+input-file:
+ - Microsoft.RecoveryServices/preview/2024-09-30-preview/registeredidentities.json
+ - Microsoft.RecoveryServices/preview/2024-09-30-preview/replicationusages.json
+ - Microsoft.RecoveryServices/preview/2024-09-30-preview/vaults.json
+ - Microsoft.RecoveryServices/preview/2024-09-30-preview/vaultusages.json
+```
+
### Tag: package-preview-2024-04
These settings apply only when `--tag=package-preview-2024-04` is specified on the command line.
@@ -78,6 +89,7 @@ input-file:
- Microsoft.RecoveryServices/stable/2024-04-01/vaults.json
- Microsoft.RecoveryServices/stable/2024-04-01/vaultusages.json
```
+
### Tag: package-2024-02
These settings apply only when `--tag=package-2024-02` is specified on the command line.
From 99c0e6059f402f1b0cbfc946cd131ba3c395a2e3 Mon Sep 17 00:00:00 2001
From: chantalolieman
Date: Thu, 9 Jan 2025 04:00:47 -0800
Subject: [PATCH 076/128] bugfix in api spec (#31695)
---
.../RedisEnterpriseDatabasesForceLink.json | 20 ++++++-----
.../2024-03-01-preview/redisenterprise.json | 35 +++++++++++++------
.../RedisEnterpriseDatabasesForceLink.json | 20 ++++++-----
.../2024-06-01-preview/redisenterprise.json | 35 +++++++++++++------
.../RedisEnterpriseDatabasesForceLink.json | 20 ++++++-----
.../2024-09-01-preview/redisenterprise.json | 35 +++++++++++++------
.../RedisEnterpriseDatabasesForceLink.json | 20 ++++++-----
.../stable/2024-10-01/redisenterprise.json | 35 +++++++++++++------
8 files changed, 140 insertions(+), 80 deletions(-)
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/examples/RedisEnterpriseDatabasesForceLink.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
index 532eae35ccc9..c8a376b52b71 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
@@ -6,15 +6,17 @@
"api-version": "2024-03-01-preview",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"parameters": {
- "groupNickname": "groupName",
- "linkedDatabases": [
- {
- "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
- },
- {
- "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
- }
- ]
+ "geoReplication": {
+ "groupNickname": "groupName",
+ "linkedDatabases": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
+ },
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
+ }
+ ]
+ }
}
},
"responses": {
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/redisenterprise.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/redisenterprise.json
index bf376f35e91f..9d570d881ba4 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/redisenterprise.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-03-01-preview/redisenterprise.json
@@ -2032,19 +2032,32 @@
"type": "object",
"description": "Parameters for reconfiguring active geo-replication, of an existing database that was previously unlinked from a replication group.",
"required": [
- "groupNickname",
- "linkedDatabases"
+ "geoReplication"
],
"properties": {
- "groupNickname": {
- "type": "string",
- "description": "The name of the group of linked database resources. This should match the existing replication group name."
- },
- "linkedDatabases": {
- "type": "array",
- "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
- "items": {
- "$ref": "#/definitions/LinkedDatabase"
+ "geoReplication": {
+ "type": "object",
+ "description": "Properties to configure geo replication for this database.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "properties": {
+ "groupNickname": {
+ "type": "string",
+ "description": "The name of the group of linked database resources. This should match the existing replication group name.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "linkedDatabases": {
+ "type": "array",
+ "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
+ "items": {
+ "$ref": "#/definitions/LinkedDatabase"
+ }
+ }
}
}
}
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/examples/RedisEnterpriseDatabasesForceLink.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
index f523cdd59fe7..4d9844634f01 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
@@ -6,15 +6,17 @@
"api-version": "2024-06-01-preview",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"parameters": {
- "groupNickname": "groupName",
- "linkedDatabases": [
- {
- "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
- },
- {
- "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
- }
- ]
+ "geoReplication": {
+ "groupNickname": "groupName",
+ "linkedDatabases": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
+ },
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
+ }
+ ]
+ }
}
},
"responses": {
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/redisenterprise.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/redisenterprise.json
index 58eced3bf28c..e887618ce8a9 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/redisenterprise.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-06-01-preview/redisenterprise.json
@@ -2033,19 +2033,32 @@
"type": "object",
"description": "Parameters for reconfiguring active geo-replication, of an existing database that was previously unlinked from a replication group.",
"required": [
- "groupNickname",
- "linkedDatabases"
+ "geoReplication"
],
"properties": {
- "groupNickname": {
- "type": "string",
- "description": "The name of the group of linked database resources. This should match the existing replication group name."
- },
- "linkedDatabases": {
- "type": "array",
- "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
- "items": {
- "$ref": "#/definitions/LinkedDatabase"
+ "geoReplication": {
+ "type": "object",
+ "description": "Properties to configure geo replication for this database.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "properties": {
+ "groupNickname": {
+ "type": "string",
+ "description": "The name of the group of linked database resources. This should match the existing replication group name.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "linkedDatabases": {
+ "type": "array",
+ "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
+ "items": {
+ "$ref": "#/definitions/LinkedDatabase"
+ }
+ }
}
}
}
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/examples/RedisEnterpriseDatabasesForceLink.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
index 43779d4b6fc9..34c90e37d8cd 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/examples/RedisEnterpriseDatabasesForceLink.json
@@ -6,15 +6,17 @@
"api-version": "2024-09-01-preview",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"parameters": {
- "groupNickname": "groupName",
- "linkedDatabases": [
- {
- "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
- },
- {
- "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
- }
- ]
+ "geoReplication": {
+ "groupNickname": "groupName",
+ "linkedDatabases": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
+ },
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
+ }
+ ]
+ }
}
},
"responses": {
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/redisenterprise.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/redisenterprise.json
index b731f4bcac98..45365c3091aa 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/redisenterprise.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/preview/2024-09-01-preview/redisenterprise.json
@@ -2555,19 +2555,32 @@
"type": "object",
"description": "Parameters for reconfiguring active geo-replication, of an existing database that was previously unlinked from a replication group.",
"required": [
- "groupNickname",
- "linkedDatabases"
+ "geoReplication"
],
"properties": {
- "groupNickname": {
- "type": "string",
- "description": "The name of the group of linked database resources. This should match the existing replication group name."
- },
- "linkedDatabases": {
- "type": "array",
- "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
- "items": {
- "$ref": "#/definitions/LinkedDatabase"
+ "geoReplication": {
+ "type": "object",
+ "description": "Properties to configure geo replication for this database.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "properties": {
+ "groupNickname": {
+ "type": "string",
+ "description": "The name of the group of linked database resources. This should match the existing replication group name.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "linkedDatabases": {
+ "type": "array",
+ "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
+ "items": {
+ "$ref": "#/definitions/LinkedDatabase"
+ }
+ }
}
}
}
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/examples/RedisEnterpriseDatabasesForceLink.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/examples/RedisEnterpriseDatabasesForceLink.json
index 7b9aaabb7e27..bb9f17b4c217 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/examples/RedisEnterpriseDatabasesForceLink.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/examples/RedisEnterpriseDatabasesForceLink.json
@@ -6,15 +6,17 @@
"api-version": "2024-10-01",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"parameters": {
- "groupNickname": "groupName",
- "linkedDatabases": [
- {
- "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
- },
- {
- "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
- }
- ]
+ "geoReplication": {
+ "groupNickname": "groupName",
+ "linkedDatabases": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Cache/redisEnterprise/cache1/databases/default"
+ },
+ {
+ "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg2/providers/Microsoft.Cache/redisEnterprise/cache2/databases/default"
+ }
+ ]
+ }
}
},
"responses": {
diff --git a/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/redisenterprise.json b/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/redisenterprise.json
index 992729cfa707..620117131bd9 100644
--- a/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/redisenterprise.json
+++ b/specification/redisenterprise/resource-manager/Microsoft.Cache/stable/2024-10-01/redisenterprise.json
@@ -2057,19 +2057,32 @@
"type": "object",
"description": "Parameters for reconfiguring active geo-replication, of an existing database that was previously unlinked from a replication group.",
"required": [
- "groupNickname",
- "linkedDatabases"
+ "geoReplication"
],
"properties": {
- "groupNickname": {
- "type": "string",
- "description": "The name of the group of linked database resources. This should match the existing replication group name."
- },
- "linkedDatabases": {
- "type": "array",
- "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
- "items": {
- "$ref": "#/definitions/LinkedDatabase"
+ "geoReplication": {
+ "type": "object",
+ "description": "Properties to configure geo replication for this database.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ],
+ "properties": {
+ "groupNickname": {
+ "type": "string",
+ "description": "The name of the group of linked database resources. This should match the existing replication group name.",
+ "x-ms-mutability": [
+ "read",
+ "create"
+ ]
+ },
+ "linkedDatabases": {
+ "type": "array",
+ "description": "The resource IDs of the databases that are expected to be linked and included in the replication group. This parameter is used to validate that the linking is to the expected (unlinked) part of the replication group, if it is splintered.",
+ "items": {
+ "$ref": "#/definitions/LinkedDatabase"
+ }
+ }
}
}
}
From 4c56d5542875b8a48ef01a9ad5886f6aaea3e482 Mon Sep 17 00:00:00 2001
From: Scott Addie <10702007+scottaddie@users.noreply.github.com>
Date: Thu, 9 Jan 2025 13:11:44 -0600
Subject: [PATCH 077/128] Rebranding of Azure AI Studio (#32063)
* Rebranding of Azure AI Studio
* Fix spelling error
---
.../preview/2024-11-01-preview/searchservice.json | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/specification/search/data-plane/Azure.Search/preview/2024-11-01-preview/searchservice.json b/specification/search/data-plane/Azure.Search/preview/2024-11-01-preview/searchservice.json
index 2445398325e1..dc9835fe0a8e 100644
--- a/specification/search/data-plane/Azure.Search/preview/2024-11-01-preview/searchservice.json
+++ b/specification/search/data-plane/Azure.Search/preview/2024-11-01-preview/searchservice.json
@@ -2851,7 +2851,7 @@
{
"value": "cjk_width",
"name": "CjkWidth",
- "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html"
+ "description": "Normalizes CJK width differences. Folds full-width ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html"
},
{
"value": "classic",
@@ -6718,7 +6718,7 @@
"description": "Specifies the properties of the AML vectorizer."
}
},
- "description": "Specifies an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog for generating the vector embedding of a query string."
+ "description": "Specifies an Azure Machine Learning endpoint deployed via the Azure AI Foundry Model Catalog for generating the vector embedding of a query string."
},
"AMLParameters": {
"type": "object",
@@ -6754,7 +6754,7 @@
},
"modelName": {
"$ref": "#/definitions/AIStudioModelCatalogName",
- "description": "The name of the embedding model from the Azure AI Studio Catalog that is deployed at the provided endpoint."
+ "description": "The name of the embedding model from the Azure AI Foundry Catalog that is deployed at the provided endpoint."
}
},
"required": [
@@ -6802,7 +6802,7 @@
}
]
},
- "description": "The name of the embedding model from the Azure AI Studio Catalog that will be called."
+ "description": "The name of the embedding model from the Azure AI Foundry Catalog that will be called."
},
"VectorSearchVectorizerKind": {
"type": "string",
@@ -6834,7 +6834,7 @@
{
"value": "aml",
"name": "AML",
- "description": "Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog at query time."
+ "description": "Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Foundry Model Catalog at query time."
}
]
},
From 008a07d8857377bdd77bcd347d11f278fba7d856 Mon Sep 17 00:00:00 2001
From: xuhumsft <116764429+xuhumsft@users.noreply.github.com>
Date: Thu, 9 Jan 2025 11:12:44 -0800
Subject: [PATCH 078/128] Dev sentinel securityinsights microsoft.security
insights 2024 10 01 preview (#31790)
* Copy files from preview/2024-04-01-preview
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to preview/2024-10-01-preview
Updated the API version from preview/2024-04-01-preview to preview/2024-10-01-preview.
* Added tag for 2024-10-01-preview in readme file
* support odata search in listing product packages (#31740)
* support odata search in listing product packages
* add new supported contentKind
* fix perttier errors
* Fix Data connectors API Typos (#31806)
* Add PurviewAudit connector (#31821)
* Add PurviewAudit connector
* prettier fix
* prettier fix
---------
Co-authored-by: Will King
* resolve comments and fix the prettier issue (#31965)
* Watchlist fix (#32047)
* reorder TI parameter to address breaking change errors (#32053)
---------
Co-authored-by: NISHILBISHT
Co-authored-by: sagamzu <52034287+sagamzu@users.noreply.github.com>
Co-authored-by: kingwil <5839248+kingwil@users.noreply.github.com>
Co-authored-by: Will King
Co-authored-by: nbatyrbb <115049492+nbatyrbb@users.noreply.github.com>
---
.../2024-10-01-preview/AlertRules.json | 2600 ++++++++++
.../2024-10-01-preview/AutomationRules.json | 1549 ++++++
.../2024-10-01-preview/BillingStatistics.json | 226 +
.../preview/2024-10-01-preview/Bookmarks.json | 751 +++
.../BusinessApplicationAgents.json | 1691 +++++++
.../2024-10-01-preview/ContentPackages.json | 319 ++
.../ContentProductPackages.json | 235 +
.../ContentProductTemplates.json | 226 +
.../2024-10-01-preview/ContentTemplates.json | 353 ++
.../EnrichmentWithWorkspace.json | 443 ++
.../preview/2024-10-01-preview/Entities.json | 1559 ++++++
.../2024-10-01-preview/EntityQueries.json | 534 +++
.../EntityQueryTemplates.json | 331 ++
.../2024-10-01-preview/FileImports.json | 575 +++
.../preview/2024-10-01-preview/Hunts.json | 994 ++++
.../preview/2024-10-01-preview/Incidents.json | 1669 +++++++
.../preview/2024-10-01-preview/Metadata.json | 774 +++
.../2024-10-01-preview/OfficeConsents.json | 234 +
.../2024-10-01-preview/OnboardingStates.json | 284 ++
.../2024-10-01-preview/Recommendations.json | 452 ++
.../SecurityMLAnalyticsSettings.json | 444 ++
.../preview/2024-10-01-preview/Settings.json | 438 ++
.../2024-10-01-preview/SourceControls.json | 1005 ++++
.../ThreatIntelligence.json | 1097 +++++
.../ThreatIntelligenceCount.json | 348 ++
.../ThreatIntelligenceQuery.json | 583 +++
.../TriggeredAnalyticsRuleRuns.json | 354 ++
.../2024-10-01-preview/Watchlists.json | 745 +++
.../WorkspaceManagerAssignments.json | 737 +++
.../WorkspaceManagerConfigurations.json | 323 ++
.../WorkspaceManagerGroups.json | 318 ++
.../WorkspaceManagerMembers.json | 310 ++
.../2024-10-01-preview/common/AlertTypes.json | 81 +
.../common/ContentCommonTypes.json | 662 +++
.../common/EntityTypes.json | 2550 ++++++++++
.../common/IncidentTypes.json | 246 +
.../common/RelationTypes.json | 98 +
.../common/ThreatIntelligenceTypes.json | 48 +
.../dataConnectorDefinitions.json | 706 +++
.../2024-10-01-preview/dataConnectors.json | 4175 +++++++++++++++++
.../actions/CreateActionOfAlertRule.json | 43 +
.../actions/DeleteActionOfAlertRule.json | 14 +
.../actions/GetActionOfAlertRuleById.json | 24 +
.../actions/GetAllActionsByAlertRule.json | 27 +
.../GetAlertRuleTemplateById.json | 53 +
.../GetAlertRuleTemplates.json | 238 +
.../alertRules/CreateFusionAlertRule.json | 845 ++++
...nAlertRuleWithFusionScenarioExclusion.json | 851 ++++
...softSecurityIncidentCreationAlertRule.json | 58 +
.../alertRules/CreateNrtAlertRule.json | 136 +
.../alertRules/CreateScheduledAlertRule.json | 270 ++
.../examples/alertRules/DeleteAlertRule.json | 13 +
.../examples/alertRules/GetAllAlertRules.json | 412 ++
.../alertRules/GetFusionAlertRule.json | 310 ++
...softSecurityIncidentCreationAlertRule.json | 30 +
.../examples/alertRules/GetNrtAlertRule.json | 55 +
.../alertRules/GetScheduledAlertRule.json | 95 +
.../AutomationRules_CreateOrUpdate.json | 195 +
.../AutomationRules_Delete.json | 17 +
.../automationRules/AutomationRules_Get.json | 73 +
.../automationRules/AutomationRules_List.json | 76 +
.../GetAllBillingStatistics.json | 26 +
.../GetBillingStatistic.json | 23 +
.../examples/bookmarks/CreateBookmark.json | 143 +
.../examples/bookmarks/DeleteBookmark.json | 13 +
.../examples/bookmarks/GetBookmarkById.json | 64 +
.../examples/bookmarks/GetBookmarks.json | 67 +
.../bookmarks/expand/PostExpandBookmark.json | 43 +
.../relations/CreateBookmarkRelation.json | 43 +
.../relations/DeleteBookmarkRelation.json | 14 +
.../relations/GetAllBookmarkRelations.json | 28 +
.../relations/GetBookmarkRelationByName.json | 25 +
.../BusinessApplicationAgent_Get.json | 38 +
...inessApplicationAgents_CreateOrUpdate.json | 68 +
.../BusinessApplicationAgents_Delete.json | 13 +
.../BusinessApplicationAgents_List.json | 42 +
.../actions/ListActions.json | 40 +
.../actions/ReportActionStatus.json | 18 +
.../actions/UndoAction.json | 16 +
.../systems/Systems_CreateOrUpdate.json | 153 +
.../systems/Systems_Delete.json | 14 +
.../systems/Systems_Get.json | 61 +
.../systems/Systems_List.json | 64 +
.../contentPackages/GetPackageById.json | 34 +
.../examples/contentPackages/GetPackages.json | 39 +
.../GetProductPackageById.json | 76 +
.../contentPackages/GetProductPackages.json | 78 +
.../contentPackages/InstallPackage.json | 151 +
.../contentPackages/UninstallPackage.json | 13 +
.../contentTemplates/DeleteTemplate.json | 13 +
.../GetProductTemplateById.json | 43 +
.../contentTemplates/GetProductTemplates.json | 45 +
.../contentTemplates/GetTemplateById.json | 41 +
.../contentTemplates/GetTemplates.json | 43 +
.../contentTemplates/InstallTemplate.json | 228 +
...teCustomizableDataConnectorDefinition.json | 258 +
.../DeleteDataConnectorDefinitionById.json | 13 +
...stomizableDataConnectorDefinitionById.json | 95 +
.../GetDataConnectorDefinitions.json | 94 +
...CheckRequirementsAzureActiveDirectory.json | 22 +
...tsAzureActiveDirectoryNoAuthorization.json | 22 +
...irementsAzureActiveDirectoryNoLicense.json | 22 +
.../CheckRequirementsAzureSecurityCenter.json | 22 +
.../CheckRequirementsDynamics365.json | 22 +
.../dataConnectors/CheckRequirementsIoT.json | 22 +
.../CheckRequirementsMdatp.json | 22 +
...RequirementsMicrosoftCloudAppSecurity.json | 22 +
...MicrosoftPurviewInformationProtection.json | 22 +
...quirementsMicrosoftThreatIntelligence.json | 22 +
...RequirementsMicrosoftThreatProtection.json | 22 +
.../CheckRequirementsOffice365Project.json | 22 +
.../CheckRequirementsOfficeATP.json | 22 +
.../CheckRequirementsOfficeIRM.json | 22 +
.../CheckRequirementsOfficePowerBI.json | 22 +
.../CheckRequirementsPurviewAudit.json | 22 +
.../CheckRequirementsThreatIntelligence.json | 22 +
...ckRequirementsThreatIntelligenceTaxii.json | 22 +
.../dataConnectors/ConnectAPIPolling.json | 24 +
.../ConnectAPIPollingV2Logs.json | 27 +
.../dataConnectors/CreateAPIPolling.json | 368 ++
.../CreateDynamics365DataConnetor.json | 57 +
.../dataConnectors/CreateGenericUI.json | 437 ++
.../CreateGoogleCloudPlatform.json | 92 +
...viewInformationProtectionDataConnetor.json | 57 +
...rosoftThreatIntelligenceDataConnector.json | 59 +
...MicrosoftThreatProtectionDataConnetor.json | 81 +
.../CreateOffice365ProjectDataConnetor.json | 57 +
.../CreateOfficeDataConnetor.json | 75 +
.../CreateOfficePowerBIDataConnector.json | 57 +
.../CreatePurviewAuditDataConnector.json | 70 +
...CreateThreatIntelligenceDataConnector.json | 59 +
...eThreatIntelligenceTaxiiDataConnector.json | 81 +
.../dataConnectors/DeleteAPIPolling.json | 13 +
.../dataConnectors/DeleteGenericUI.json | 13 +
.../DeleteGoogleCloudPlatform.json | 13 +
...viewInformationProtectionDataConnetor.json | 13 +
...rosoftThreatIntelligenceDataConnector.json | 13 +
.../DeleteOffice365ProjectDataConnetor.json | 13 +
.../DeleteOfficeDataConnetor.json | 13 +
.../DeleteOfficePowerBIDataConnetor.json | 13 +
.../DeletePurviewAuditDataConnector.json | 13 +
.../dataConnectors/DisconnectAPIPolling.json | 13 +
.../dataConnectors/GetAPIPolling.json | 133 +
.../GetAmazonWebServicesCloudTrailById.json | 28 +
.../GetAmazonWebServicesS3ById.json | 32 +
.../GetAzureActiveDirectoryById.json | 28 +
.../GetAzureAdvancedThreatProtectionById.json | 28 +
.../GetAzureSecurityCenterById.json | 28 +
.../dataConnectors/GetDataConnectors.json | 526 +++
.../GetDynamics365DataConnectorById.json | 28 +
.../examples/dataConnectors/GetGenericUI.json | 156 +
.../GetGoogleCloudPlatformById.json | 35 +
.../examples/dataConnectors/GetIoTById.json | 28 +
.../GetMicrosoftCloudAppSecurityById.json | 31 +
...tDefenderAdvancedThreatProtectionById.json | 28 +
...GetMicrosoftInsiderRiskManagementById.json | 28 +
...InformationProtectionDataConnetorById.json | 28 +
.../GetMicrosoftThreatIntelligenceById.json | 29 +
.../GetMicrosoftThreatProtectionById.json | 36 +
...Office365AdvancedThreatProtectionById.json | 28 +
.../GetOffice365ProjectDataConnetorById.json | 28 +
.../GetOfficeDataConnetorById.json | 34 +
.../GetOfficePowerBIDataConnetorById.json | 28 +
.../GetPurviewAuditDataConnectorById.json | 31 +
.../dataConnectors/GetRestApiPollerById.json | 59 +
.../GetThreatIntelligenceById.json | 29 +
.../GetThreatIntelligenceTaxiiById.json | 36 +
.../GetGeodataWithWorkspaceByIp.json | 35 +
.../GetWhoisWithWorkspaceByDomainName.json | 91 +
.../entities/GetAccountEntityById.json | 32 +
.../entities/GetAzureResourceEntityById.json | 24 +
.../GetCloudApplicationEntityById.json | 25 +
.../examples/entities/GetDnsEntityById.json | 26 +
.../examples/entities/GetEntities.json | 63 +
.../examples/entities/GetFileEntityById.json | 24 +
.../entities/GetFileHashEntityById.json | 24 +
.../examples/entities/GetHostEntityById.json | 31 +
.../entities/GetIoTDeviceEntityById.json | 45 +
.../examples/entities/GetIpEntityById.json | 23 +
.../entities/GetMailClusterEntityById.json | 44 +
.../entities/GetMailMessageEntityById.json | 48 +
.../entities/GetMailboxEntityById.json | 26 +
.../entities/GetMalwareEntityById.json | 24 +
.../entities/GetProcessEntityById.json | 25 +
.../examples/entities/GetQueries.json | 456 ++
.../entities/GetRegistryKeyEntityById.json | 24 +
.../entities/GetRegistryValueEntityById.json | 26 +
.../entities/GetSecurityAlertEntityById.json | 51 +
.../entities/GetSecurityGroupEntityById.json | 25 +
.../entities/GetSubmissionMailEntityById.json | 29 +
.../examples/entities/GetUrlEntityById.json | 23 +
.../entities/expand/PostExpandEntity.json | 52 +
.../entities/insights/PostGetInsights.json | 100 +
.../relations/GetAllEntityRelations.json | 28 +
.../relations/GetEntityRelationByName.json | 25 +
.../entities/timeline/PostTimelineEntity.json | 92 +
.../CreateEntityQueryActivity.json | 133 +
.../entityQueries/DeleteEntityQuery.json | 13 +
.../GetActivityEntityQueryById.json | 54 +
.../entityQueries/GetEntityQueries.json | 59 +
.../GetExpansionEntityQueryById.json | 34 +
.../GetActivityEntityQueryTemplateById.json | 57 +
.../GetEntityQueryTemplates.json | 105 +
.../fileImports/CreateFileImport.json | 75 +
.../fileImports/DeleteFileImport.json | 41 +
.../fileImports/GetFileImportById.json | 37 +
.../examples/fileImports/GetFileImports.json | 42 +
.../examples/hunts/CreateHunt.json | 100 +
.../examples/hunts/CreateHuntComment.json | 56 +
.../examples/hunts/CreateHuntRelation.json | 53 +
.../examples/hunts/DeleteHunt.json | 14 +
.../examples/hunts/DeleteHuntComment.json | 15 +
.../examples/hunts/DeleteHuntRelation.json | 15 +
.../examples/hunts/GetHuntById.json | 43 +
.../examples/hunts/GetHuntCommentById.json | 32 +
.../examples/hunts/GetHuntComments.json | 27 +
.../examples/hunts/GetHuntRelationById.json | 29 +
.../examples/hunts/GetHuntRelations.json | 32 +
.../examples/hunts/GetHunts.json | 46 +
.../IncidentAlerts/Incidents_ListAlerts.json | 50 +
.../Incidents_ListBookmarks.json | 47 +
.../IncidentComments_CreateOrUpdate.json | 55 +
.../IncidentComments_Delete.json | 14 +
.../IncidentComments_Get.json | 31 +
.../IncidentComments_List.json | 34 +
.../Incidents_ListEntities.json | 34 +
.../IncidentTasks_CreateOrUpdate.json | 73 +
.../IncidentTasks/IncidentTasks_Delete.json | 14 +
.../IncidentTasks/IncidentTasks_Get.json | 39 +
.../IncidentTasks/IncidentTasks_List.json | 42 +
.../IncidentTeam/Incidents_CreateTeam.json | 26 +
.../incidents/Incidents_CreateOrUpdate.json | 136 +
.../examples/incidents/Incidents_Delete.json | 13 +
.../examples/incidents/Incidents_Get.json | 63 +
.../examples/incidents/Incidents_List.json | 68 +
.../relations/CreateIncidentRelation.json | 43 +
.../relations/DeleteIncidentRelation.json | 14 +
.../relations/GetAllIncidentRelations.json | 40 +
.../relations/GetIncidentRelationByName.json | 25 +
.../manualTrigger/Entities_RunPlaybook.json | 17 +
.../manualTrigger/Incidents_RunPlaybook.json | 18 +
.../examples/metadata/DeleteMetadata.json | 13 +
.../examples/metadata/GetAllMetadata.json | 64 +
.../metadata/GetAllMetadataOData.json | 52 +
.../examples/metadata/GetMetadata.json | 104 +
.../examples/metadata/PatchMetadata.json | 35 +
.../examples/metadata/PutMetadata.json | 286 ++
.../examples/metadata/PutMetadataMinimal.json | 40 +
.../officeConsents/DeleteOfficeConsents.json | 13 +
.../officeConsents/GetOfficeConsents.json | 25 +
.../officeConsents/GetOfficeConsentsById.json | 22 +
.../CreateSentinelOnboardingState.json | 36 +
.../DeleteSentinelOnboardingState.json | 13 +
.../GetAllSentinelOnboardingStates.json | 24 +
.../GetSentinelOnboardingState.json | 21 +
.../examples/operations/ListOperations.json | 563 +++
.../recommendations/GetRecommendation.json | 42 +
.../recommendations/GetRecommendations.json | 45 +
.../recommendations/PatchRecommendation.json | 47 +
.../ReevaluateRecommendation.json | 21 +
.../repositories/GetRepositories.json | 37 +
...eateAnomalySecurityMLAnalyticsSetting.json | 245 +
.../DeleteSecurityMLAnalyticsSetting.json | 13 +
.../GetAllSecurityMLAnalyticsSettings.json | 94 +
.../GetAnomalySecurityMLAnalyticsSetting.json | 91 +
.../settings/DeleteEyesOnSetting.json | 13 +
.../examples/settings/GetAllSettings.json | 25 +
.../examples/settings/GetEyesOnSetting.json | 22 +
.../settings/UpdateEyesOnSetting.json | 40 +
.../sourcecontrols/CreateSourceControl.json | 162 +
.../sourcecontrols/DeleteSourceControl.json | 29 +
.../sourcecontrols/GetSourceControlById.json | 75 +
.../sourcecontrols/GetSourceControls.json | 78 +
.../AppendTagsThreatIntelligence.json | 18 +
.../CollectThreatIntelligenceMetrics.json | 43 +
.../CreateThreatIntelligence.json | 100 +
.../DeleteThreatIntelligence.json | 13 +
.../GetThreatIntelligence.json | 76 +
.../GetThreatIntelligenceById.json | 43 +
.../PostThreatIntelligenceCount.json | 30 +
.../PostThreatIntelligenceQuery.json | 122 +
.../QueryThreatIntelligence.json | 107 +
.../ReplaceTagsThreatIntelligence.json | 52 +
.../UpdateThreatIntelligence.json | 101 +
.../triggerRuleRun_Post.json | 23 +
.../triggeredAnalyticsRuleRun_Get.json | 29 +
.../triggeredAnalyticsRuleRuns_Get.json | 48 +
.../examples/watchlists/CreateWatchlist.json | 88 +
.../CreateWatchlistAndWatchlistItems.json | 92 +
.../watchlists/CreateWatchlistItem.json | 92 +
.../examples/watchlists/DeleteWatchlist.json | 18 +
.../watchlists/DeleteWatchlistItem.json | 15 +
.../watchlists/GetWatchlistByAlias.json | 50 +
.../watchlists/GetWatchlistItemById.json | 47 +
.../watchlists/GetWatchlistItems.json | 50 +
.../examples/watchlists/GetWatchlists.json | 53 +
.../CreateJob.json | 24 +
...ateOrUpdateWorkspaceManagerAssignment.json | 62 +
.../DeleteJob.json | 14 +
.../DeleteWorkspaceManagerAssignment.json | 13 +
.../GetAllJobs.json | 46 +
.../GetAllWorkspaceManagerAssignments.json | 35 +
.../workspaceManagerAssignments/GetJob.json | 43 +
.../GetWorkspaceManagerAssignment.json | 32 +
...OrUpdateWorkspaceManagerConfiguration.json | 38 +
.../DeleteWorkspaceManagerConfiguration.json | 13 +
.../GetAllWorkspaceManagerConfigurations.json | 25 +
.../GetWorkspaceManagerConfiguration.json | 22 +
.../CreateOrUpdateWorkspaceManagerGroup.json | 53 +
.../DeleteWorkspaceManagerGroup.json | 13 +
.../GetAllWorkspaceManagerGroups.json | 30 +
.../GetWorkspaceManagerGroup.json | 27 +
.../CreateOrUpdateWorkspaceManagerMember.json | 41 +
.../DeleteWorkspaceManagerMember.json | 13 +
.../GetAllWorkspaceManagerMembers.json | 26 +
.../GetWorkspaceManagerMember.json | 23 +
.../2024-10-01-preview/operations.json | 138 +
.../resource-manager/readme.md | 45 +-
318 files changed, 48836 insertions(+), 1 deletion(-)
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AlertRules.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AutomationRules.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BillingStatistics.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Bookmarks.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BusinessApplicationAgents.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentPackages.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductPackages.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EnrichmentWithWorkspace.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Entities.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueries.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueryTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/FileImports.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Hunts.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Incidents.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Metadata.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OfficeConsents.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OnboardingStates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Recommendations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SecurityMLAnalyticsSettings.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Settings.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SourceControls.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceCount.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceQuery.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/TriggeredAnalyticsRuleRuns.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Watchlists.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerAssignments.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerConfigurations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerGroups.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerMembers.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/AlertTypes.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ContentCommonTypes.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/EntityTypes.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/IncidentTypes.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/RelationTypes.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ThreatIntelligenceTypes.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectorDefinitions.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectors.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/CreateActionOfAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/DeleteActionOfAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetActionOfAlertRuleById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetAllActionsByAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateNrtAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateScheduledAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/DeleteAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetAllAlertRules.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetFusionAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetNrtAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetScheduledAlertRule.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Delete.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_List.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetAllBillingStatistics.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetBillingStatistic.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/CreateBookmark.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/DeleteBookmark.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarkById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarks.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/expand/PostExpandBookmark.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgent_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_CreateOrUpdate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_Delete.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_List.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ListActions.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ReportActionStatus.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/UndoAction.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_CreateOrUpdate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Delete.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_List.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackageById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackages.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackageById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackages.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/InstallPackage.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/UninstallPackage.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/DeleteTemplate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplateById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplateById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/InstallTemplate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectorDefinitionById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsIoT.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsPurviewAudit.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPolling.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateAPIPolling.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGenericUI.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreatePurviewAuditDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteAPIPolling.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGenericUI.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeletePurviewAuditDataConnector.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DisconnectAPIPolling.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAPIPolling.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDataConnectors.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGenericUI.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetIoTById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetPurviewAuditDataConnectorById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetRestApiPollerById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAccountEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAzureResourceEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetCloudApplicationEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetDnsEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetEntities.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileHashEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetHostEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIoTDeviceEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIpEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailClusterEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailMessageEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailboxEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMalwareEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetProcessEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetQueries.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryKeyEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryValueEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityAlertEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityGroupEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSubmissionMailEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetUrlEntityById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/expand/PostExpandEntity.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/insights/PostGetInsights.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetAllEntityRelations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetEntityRelationByName.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/timeline/PostTimelineEntity.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/CreateEntityQueryActivity.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/DeleteEntityQuery.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetActivityEntityQueryById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetEntityQueries.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/CreateFileImport.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/DeleteFileImport.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImportById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImports.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHunt.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntComment.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntRelation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHunt.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntComment.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntRelation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntCommentById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntComments.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelationById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHunts.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_CreateOrUpdate.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Delete.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_List.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/CreateIncidentRelation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/DeleteIncidentRelation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetAllIncidentRelations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetIncidentRelationByName.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Entities_RunPlaybook.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/DeleteMetadata.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadata.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadataOData.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetMetadata.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PatchMetadata.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadata.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadataMinimal.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/DeleteOfficeConsents.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsents.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsentsById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/operations/ListOperations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/PatchRecommendation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/ReevaluateRecommendation.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/repositories/GetRepositories.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/DeleteEyesOnSetting.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetAllSettings.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetEyesOnSetting.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/UpdateEyesOnSetting.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/CreateSourceControl.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/DeleteSourceControl.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControlById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControls.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CreateThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/QueryThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlist.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistItem.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlist.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlistItem.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistByAlias.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItemById.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItems.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlists.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateJob.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteJob.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetJob.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json
create mode 100644 specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/operations.json
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AlertRules.json
new file mode 100644
index 000000000000..007f57c6ce52
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AlertRules.json
@@ -0,0 +1,2600 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules": {
+ "get": {
+ "x-ms-examples": {
+ "Get all alert rules.": {
+ "$ref": "./examples/alertRules/GetAllAlertRules.json"
+ }
+ },
+ "tags": [
+ "Alert Rules"
+ ],
+ "description": "Gets all alert rules.",
+ "operationId": "AlertRules_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AlertRulesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a Scheduled alert rule.": {
+ "$ref": "./examples/alertRules/GetScheduledAlertRule.json"
+ },
+ "Get an Nrt alert rule.": {
+ "$ref": "./examples/alertRules/GetNrtAlertRule.json"
+ },
+ "Get a Fusion alert rule.": {
+ "$ref": "./examples/alertRules/GetFusionAlertRule.json"
+ },
+ "Get a MicrosoftSecurityIncidentCreation rule.": {
+ "$ref": "./examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json"
+ }
+ },
+ "tags": [
+ "Alert Rules"
+ ],
+ "description": "Gets the alert rule.",
+ "operationId": "AlertRules_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AlertRule"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a Scheduled alert rule.": {
+ "$ref": "./examples/alertRules/CreateScheduledAlertRule.json"
+ },
+ "Creates or updates a Nrt alert rule.": {
+ "$ref": "./examples/alertRules/CreateNrtAlertRule.json"
+ },
+ "Creates or updates a Fusion alert rule.": {
+ "$ref": "./examples/alertRules/CreateFusionAlertRule.json"
+ },
+ "Creates or updates a Fusion alert rule with scenario exclusion pattern.": {
+ "$ref": "./examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json"
+ },
+ "Creates or updates a MicrosoftSecurityIncidentCreation rule.": {
+ "$ref": "./examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json"
+ }
+ },
+ "tags": [
+ "Alert Rules"
+ ],
+ "description": "Creates or updates the alert rule.",
+ "operationId": "AlertRules_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ },
+ {
+ "$ref": "#/parameters/AlertRule"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AlertRule"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/AlertRule"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete an alert rule.": {
+ "$ref": "./examples/alertRules/DeleteAlertRule.json"
+ }
+ },
+ "tags": [
+ "Alert Rules"
+ ],
+ "description": "Delete the alert rule.",
+ "operationId": "AlertRules_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}/actions": {
+ "get": {
+ "x-ms-examples": {
+ "Get all actions of alert rule.": {
+ "$ref": "./examples/actions/GetAllActionsByAlertRule.json"
+ }
+ },
+ "tags": [
+ "Actions"
+ ],
+ "description": "Gets all actions of alert rule.",
+ "operationId": "Actions_ListByAlertRule",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ActionsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}/actions/{actionId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an action of alert rule.": {
+ "$ref": "./examples/actions/GetActionOfAlertRuleById.json"
+ }
+ },
+ "tags": [
+ "Actions"
+ ],
+ "description": "Gets the action of alert rule.",
+ "operationId": "Actions_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ },
+ {
+ "$ref": "#/parameters/ActionId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ActionResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates an action of alert rule.": {
+ "$ref": "./examples/actions/CreateActionOfAlertRule.json"
+ }
+ },
+ "tags": [
+ "Actions"
+ ],
+ "description": "Creates or updates the action of alert rule.",
+ "operationId": "Actions_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ },
+ {
+ "$ref": "#/parameters/ActionId"
+ },
+ {
+ "$ref": "#/parameters/Action"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ActionResponse"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ActionResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete an action of alert rule.": {
+ "$ref": "./examples/actions/DeleteActionOfAlertRule.json"
+ }
+ },
+ "tags": [
+ "Actions"
+ ],
+ "description": "Delete the action of alert rule.",
+ "operationId": "Actions_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ },
+ {
+ "$ref": "#/parameters/ActionId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRuleTemplates": {
+ "get": {
+ "x-ms-examples": {
+ "Get all alert rule templates.": {
+ "$ref": "./examples/alertRuleTemplates/GetAlertRuleTemplates.json"
+ }
+ },
+ "tags": [
+ "Alert Rule Templates"
+ ],
+ "description": "Gets all alert rule templates.",
+ "operationId": "AlertRuleTemplates_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AlertRuleTemplatesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRuleTemplates/{alertRuleTemplateId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get alert rule template by Id.": {
+ "$ref": "./examples/alertRuleTemplates/GetAlertRuleTemplateById.json"
+ }
+ },
+ "tags": [
+ "Alert Rule Templates"
+ ],
+ "description": "Gets the alert rule template.",
+ "operationId": "AlertRuleTemplates_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/AlertRuleTemplateId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "Action": {
+ "description": "The action",
+ "in": "body",
+ "name": "action",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ActionRequest"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "ActionId": {
+ "description": "Action ID",
+ "in": "path",
+ "name": "actionId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "AlertRule": {
+ "description": "The alert rule",
+ "in": "body",
+ "name": "alertRule",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AlertRule"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "AlertRuleTemplateId": {
+ "description": "Alert rule template ID",
+ "in": "path",
+ "name": "alertRuleTemplateId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "RuleId": {
+ "description": "Alert rule ID",
+ "in": "path",
+ "name": "ruleId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "AlertRule": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Alert rule.",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/AlertRuleKindEnum",
+ "description": "The kind of the alert rule"
+ }
+ },
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "AlertRuleKindEnum": {
+ "description": "The kind of the alert rule",
+ "enum": [
+ "Scheduled",
+ "MicrosoftSecurityIncidentCreation",
+ "Fusion",
+ "MLBehaviorAnalytics",
+ "ThreatIntelligence",
+ "NRT"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AlertRuleKind",
+ "values": [
+ {
+ "value": "Scheduled"
+ },
+ {
+ "value": "MicrosoftSecurityIncidentCreation"
+ },
+ {
+ "value": "Fusion"
+ },
+ {
+ "value": "MLBehaviorAnalytics"
+ },
+ {
+ "value": "ThreatIntelligence"
+ },
+ {
+ "value": "NRT"
+ }
+ ]
+ }
+ },
+ "AlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "description": "Alert rule template.",
+ "discriminator": "kind",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/AlertRuleKindEnum",
+ "description": "The kind of the alert rule"
+ }
+ },
+ "required": [
+ "kind"
+ ]
+ },
+ "AlertRuleTemplateDataSource": {
+ "description": "alert rule template data sources",
+ "properties": {
+ "connectorId": {
+ "description": "The connector id that provides the following data types",
+ "type": "string"
+ },
+ "dataTypes": {
+ "description": "The data types used by the alert rule template",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "AlertRuleTemplatePropertiesBase": {
+ "description": "Base alert rule template property bag.",
+ "properties": {
+ "alertRulesCreatedByTemplateCount": {
+ "description": "the number of alert rules that were created by this template",
+ "type": "integer",
+ "format": "int32"
+ },
+ "lastUpdatedDateUTC": {
+ "description": "The last time that this alert rule template has been updated.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "createdDateUTC": {
+ "description": "The time that this alert rule template has been added.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule template.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alert rule template.",
+ "type": "string"
+ },
+ "requiredDataConnectors": {
+ "description": "The required data sources for this template",
+ "items": {
+ "$ref": "#/definitions/AlertRuleTemplateDataSource"
+ },
+ "x-ms-identifiers": [
+ "connectorId"
+ ],
+ "type": "array"
+ },
+ "status": {
+ "$ref": "#/definitions/AlertRuleTemplateStatus",
+ "description": "The alert rule template status."
+ }
+ },
+ "type": "object"
+ },
+ "AlertRuleTemplateStatus": {
+ "description": "The alert rule template status.",
+ "enum": [
+ "Installed",
+ "Available",
+ "NotAvailable"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TemplateStatus",
+ "values": [
+ {
+ "description": "Alert rule template installed. and can not use more then once",
+ "value": "Installed"
+ },
+ {
+ "description": "Alert rule template is available.",
+ "value": "Available"
+ },
+ {
+ "description": "Alert rule template is not available",
+ "value": "NotAvailable"
+ }
+ ]
+ }
+ },
+ "AlertRuleTemplateWithMitreProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplatePropertiesBase"
+ }
+ ],
+ "description": "Alert rule template with MITRE property bag.",
+ "properties": {
+ "tactics": {
+ "description": "The tactics of the alert rule",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "QueryBasedAlertRuleTemplateProperties": {
+ "description": "Query based alert rule template base property bag.",
+ "properties": {
+ "query": {
+ "description": "The query that creates alerts for this rule.",
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ },
+ "version": {
+ "description": "The version of this template - in format , where all are numbers. For example <1.0.2>.",
+ "type": "string"
+ },
+ "customDetails": {
+ "description": "Dictionary of string key-value pairs of columns to be attached to the alert",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "entityMappings": {
+ "$ref": "#/definitions/EntityMappings",
+ "description": "Array of the entity mappings of the alert rule"
+ },
+ "alertDetailsOverride": {
+ "type": "object",
+ "$ref": "#/definitions/AlertDetailsOverride",
+ "description": "The alert details override settings"
+ },
+ "eventGroupingSettings": {
+ "$ref": "#/definitions/EventGroupingSettings",
+ "description": "The event grouping settings."
+ },
+ "sentinelEntitiesMappings": {
+ "$ref": "#/definitions/SentinelEntitiesMappings",
+ "description": "Array of the sentinel entity mappings of the alert rule"
+ }
+ },
+ "type": "object"
+ },
+ "AlertRuleTemplatesList": {
+ "description": "List all the alert rule templates.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of alert rule templates.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of alert rule templates.",
+ "items": {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "AlertRuleTriggerOperator": {
+ "description": "The operation against the threshold that triggers alert rule.",
+ "enum": [
+ "GreaterThan",
+ "LessThan",
+ "Equal",
+ "NotEqual"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": false,
+ "name": "TriggerOperator"
+ }
+ },
+ "AlertRulesList": {
+ "description": "List all the alert rules.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of alert rules.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of alert rules.",
+ "items": {
+ "$ref": "#/definitions/AlertRule"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "MLBehaviorAnalyticsAlertRule": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRule"
+ }
+ ],
+ "description": "Represents MLBehaviorAnalytics alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MLBehaviorAnalyticsAlertRuleProperties",
+ "description": "MLBehaviorAnalytics alert rule properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MLBehaviorAnalytics"
+ },
+ "MLBehaviorAnalyticsAlertRuleProperties": {
+ "description": "MLBehaviorAnalytics alert rule base property bag.",
+ "properties": {
+ "alertRuleTemplateName": {
+ "description": "The Name of the alert rule template used to create this rule.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alerts created by this alert rule.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this alert rule has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule.",
+ "readOnly": true
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ }
+ },
+ "required": [
+ "alertRuleTemplateName",
+ "enabled"
+ ],
+ "type": "object"
+ },
+ "MLBehaviorAnalyticsAlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ ],
+ "description": "Represents MLBehaviorAnalytics alert rule template.",
+ "properties": {
+ "properties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplateWithMitreProperties"
+ }
+ ],
+ "description": "MLBehaviorAnalytics alert rule template properties.",
+ "properties": {
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ }
+ },
+ "type": "object",
+ "required": [
+ "displayName",
+ "description",
+ "status",
+ "severity",
+ "alertRulesCreatedByTemplateCount"
+ ],
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MLBehaviorAnalytics"
+ },
+ "FusionAlertRule": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRule"
+ }
+ ],
+ "description": "Represents Fusion alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/FusionAlertRuleProperties",
+ "description": "Fusion alert rule properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Fusion"
+ },
+ "FusionAlertRuleProperties": {
+ "description": "Fusion alert rule base property bag.",
+ "properties": {
+ "alertRuleTemplateName": {
+ "description": "The Name of the alert rule template used to create this rule.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alerts created by this alert rule.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "sourceSettings": {
+ "description": "Configuration for all supported source signals in fusion detection.",
+ "items": {
+ "$ref": "#/definitions/FusionSourceSettings"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ },
+ "scenarioExclusionPatterns": {
+ "description": "Configuration to exclude scenarios in fusion detection.",
+ "items": {
+ "$ref": "#/definitions/FusionScenarioExclusionPattern"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this alert has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule.",
+ "readOnly": true
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ }
+ },
+ "required": [
+ "alertRuleTemplateName",
+ "enabled"
+ ],
+ "type": "object"
+ },
+ "FusionSourceSettings": {
+ "description": "Represents a supported source signal configuration in Fusion detection.",
+ "properties": {
+ "enabled": {
+ "description": "Determines whether this source signal is enabled or disabled in Fusion detection.",
+ "type": "boolean"
+ },
+ "sourceName": {
+ "description": "Name of the Fusion source signal. Refer to Fusion alert rule template for supported values.",
+ "type": "string"
+ },
+ "sourceSubTypes": {
+ "description": "Configuration for all source subtypes under this source signal consumed in fusion detection.",
+ "items": {
+ "$ref": "#/definitions/FusionSourceSubTypeSetting"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "required": [
+ "enabled",
+ "sourceName"
+ ],
+ "type": "object"
+ },
+ "FusionSourceSubTypeSetting": {
+ "description": "Represents a supported source subtype configuration under a source signal in Fusion detection.",
+ "properties": {
+ "enabled": {
+ "description": "Determines whether this source subtype under source signal is enabled or disabled in Fusion detection.",
+ "type": "boolean"
+ },
+ "sourceSubTypeName": {
+ "description": "The Name of the source subtype under a given source signal in Fusion detection. Refer to Fusion alert rule template for supported values.",
+ "type": "string"
+ },
+ "sourceSubTypeDisplayName": {
+ "description": "The display name of source subtype under a source signal consumed in Fusion detection.",
+ "type": "string",
+ "readOnly": true
+ },
+ "severityFilters": {
+ "description": "Severity configuration for a source subtype consumed in fusion detection.",
+ "$ref": "#/definitions/FusionSubTypeSeverityFilter",
+ "type": "object"
+ }
+ },
+ "required": [
+ "enabled",
+ "sourceSubTypeName",
+ "severityFilters"
+ ],
+ "type": "object"
+ },
+ "FusionSubTypeSeverityFilter": {
+ "description": "Represents severity configuration for a source subtype consumed in Fusion detection.",
+ "properties": {
+ "isSupported": {
+ "description": "Determines whether this source subtype supports severity configuration or not.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "filters": {
+ "description": "Individual Severity configuration settings for a given source subtype consumed in Fusion detection.",
+ "items": {
+ "$ref": "#/definitions/FusionSubTypeSeverityFiltersItem"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "FusionSubTypeSeverityFiltersItem": {
+ "description": "Represents a Severity filter setting for a given source subtype consumed in Fusion detection.",
+ "properties": {
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The Severity for a given source subtype consumed in Fusion detection."
+ },
+ "enabled": {
+ "description": "Determines whether this severity is enabled or disabled for this source subtype consumed in Fusion detection.",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "severity",
+ "enabled"
+ ],
+ "type": "object"
+ },
+ "FusionScenarioExclusionPattern": {
+ "description": "Represents a Fusion scenario exclusion patterns in Fusion detection.",
+ "properties": {
+ "exclusionPattern": {
+ "description": "Scenario exclusion pattern.",
+ "type": "string"
+ },
+ "dateAddedInUTC": {
+ "description": "DateTime when scenario exclusion pattern is added in UTC.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "exclusionPattern",
+ "dateAddedInUTC"
+ ],
+ "type": "object"
+ },
+ "FusionAlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ ],
+ "description": "Represents Fusion alert rule template.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/FusionAlertRuleTemplateProperties",
+ "description": "Fusion alert rule template properties",
+ "required": [
+ "displayName",
+ "description",
+ "status",
+ "severity",
+ "alertRulesCreatedByTemplateCount"
+ ],
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Fusion"
+ },
+ "FusionAlertRuleTemplateProperties": {
+ "description": "Fusion alert rule template properties",
+ "properties": {
+ "alertRulesCreatedByTemplateCount": {
+ "description": "the number of alert rules that were created by this template",
+ "format": "int32",
+ "type": "integer"
+ },
+ "createdDateUTC": {
+ "description": "The time that this alert rule template has been added.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "lastUpdatedDateUTC": {
+ "description": "The time that this alert rule template was last updated.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule template.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alert rule template.",
+ "type": "string"
+ },
+ "requiredDataConnectors": {
+ "description": "The required data connectors for this template",
+ "items": {
+ "$ref": "#/definitions/AlertRuleTemplateDataSource"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "status": {
+ "$ref": "#/definitions/AlertRuleTemplateStatus",
+ "description": "The alert rule template status.",
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule template",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "sourceSettings": {
+ "description": "All supported source signal configurations consumed in fusion detection.",
+ "items": {
+ "$ref": "#/definitions/FusionTemplateSourceSetting"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "x-ms-client-flatten": true
+ },
+ "FusionTemplateSourceSetting": {
+ "description": "Represents a source signal consumed in Fusion detection.",
+ "properties": {
+ "sourceName": {
+ "description": "The name of a source signal consumed in Fusion detection.",
+ "type": "string"
+ },
+ "sourceSubTypes": {
+ "description": "All supported source subtypes under this source signal consumed in fusion detection.",
+ "items": {
+ "$ref": "#/definitions/FusionTemplateSourceSubType"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "required": [
+ "sourceName"
+ ],
+ "type": "object"
+ },
+ "FusionTemplateSourceSubType": {
+ "description": "Represents a source subtype under a source signal consumed in Fusion detection.",
+ "properties": {
+ "sourceSubTypeName": {
+ "description": "The name of source subtype under a source signal consumed in Fusion detection.",
+ "type": "string"
+ },
+ "sourceSubTypeDisplayName": {
+ "description": "The display name of source subtype under a source signal consumed in Fusion detection.",
+ "type": "string",
+ "readOnly": true
+ },
+ "severityFilter": {
+ "description": "Severity configuration available for a source subtype consumed in fusion detection.",
+ "$ref": "#/definitions/FusionTemplateSubTypeSeverityFilter",
+ "type": "object"
+ }
+ },
+ "required": [
+ "sourceSubTypeName",
+ "severityFilter"
+ ],
+ "type": "object"
+ },
+ "FusionTemplateSubTypeSeverityFilter": {
+ "description": "Represents severity configurations available for a source subtype consumed in Fusion detection.",
+ "properties": {
+ "isSupported": {
+ "description": "Determines whether severity configuration is supported for this source subtype consumed in Fusion detection.",
+ "type": "boolean"
+ },
+ "severityFilters": {
+ "description": "List of all supported severities for this source subtype consumed in Fusion detection.",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "required": [
+ "isSupported"
+ ],
+ "type": "object"
+ },
+ "ThreatIntelligenceAlertRule": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRule"
+ }
+ ],
+ "description": "Represents Threat Intelligence alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ThreatIntelligenceAlertRuleProperties",
+ "description": "Threat Intelligence alert rule properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "ThreatIntelligence"
+ },
+ "ThreatIntelligenceAlertRuleProperties": {
+ "description": "Threat Intelligence alert rule base property bag.",
+ "properties": {
+ "alertRuleTemplateName": {
+ "description": "The Name of the alert rule template used to create this rule.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alerts created by this alert rule.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this alert has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule.",
+ "readOnly": true
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ }
+ },
+ "required": [
+ "alertRuleTemplateName",
+ "enabled"
+ ],
+ "type": "object"
+ },
+ "ThreatIntelligenceAlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ ],
+ "description": "Represents Threat Intelligence alert rule template.",
+ "properties": {
+ "properties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplateWithMitreProperties"
+ }
+ ],
+ "description": "Threat Intelligence alert rule template properties",
+ "properties": {
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ }
+ },
+ "required": [
+ "displayName",
+ "description",
+ "status",
+ "severity",
+ "alertRulesCreatedByTemplateCount"
+ ],
+ "type": "object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "ThreatIntelligence"
+ },
+ "MicrosoftSecurityIncidentCreationAlertRule": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRule"
+ }
+ ],
+ "description": "Represents MicrosoftSecurityIncidentCreation rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleProperties",
+ "description": "MicrosoftSecurityIncidentCreation rule properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftSecurityIncidentCreation"
+ },
+ "MicrosoftSecurityIncidentCreationAlertRuleCommonProperties": {
+ "description": "MicrosoftSecurityIncidentCreation rule common property bag.",
+ "properties": {
+ "displayNamesFilter": {
+ "description": "the alerts' displayNames on which the cases will be generated",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "displayNamesExcludeFilter": {
+ "description": "the alerts' displayNames on which the cases will not be generated",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "productFilter": {
+ "$ref": "#/definitions/MicrosoftSecurityProductName",
+ "description": "The alerts' productName on which the cases will be generated"
+ },
+ "severitiesFilter": {
+ "description": "the alerts' severities on which the cases will be generated",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "productFilter"
+ ],
+ "type": "object"
+ },
+ "MicrosoftSecurityProductName": {
+ "description": "The alerts' productName on which the cases will be generated",
+ "enum": [
+ "Microsoft Cloud App Security",
+ "Azure Security Center",
+ "Azure Advanced Threat Protection",
+ "Azure Active Directory Identity Protection",
+ "Azure Security Center for IoT",
+ "Office 365 Advanced Threat Protection",
+ "Microsoft Defender Advanced Threat Protection"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MicrosoftSecurityProductName"
+ }
+ },
+ "MicrosoftSecurityIncidentCreationAlertRuleProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleCommonProperties"
+ }
+ ],
+ "description": "MicrosoftSecurityIncidentCreation rule property bag.",
+ "properties": {
+ "alertRuleTemplateName": {
+ "description": "The Name of the alert rule template used to create this rule.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alerts created by this alert rule.",
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this alert has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "displayName",
+ "enabled",
+ "productFilter"
+ ],
+ "type": "object"
+ },
+ "MicrosoftSecurityIncidentCreationAlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ ],
+ "description": "Represents MicrosoftSecurityIncidentCreation rule template.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleTemplateProperties",
+ "description": "MicrosoftSecurityIncidentCreation rule template properties",
+ "required": [
+ "displayName",
+ "description",
+ "createdDateUTC",
+ "status",
+ "alertRulesCreatedByTemplateCount",
+ "productFilter"
+ ],
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftSecurityIncidentCreation"
+ },
+ "MicrosoftSecurityIncidentCreationAlertRuleTemplateProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplatePropertiesBase"
+ }
+ ],
+ "description": "MicrosoftSecurityIncidentCreation rule template properties",
+ "properties": {
+ "displayNamesFilter": {
+ "description": "the alerts' displayNames on which the cases will be generated",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "displayNamesExcludeFilter": {
+ "description": "the alerts' displayNames on which the cases will not be generated",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "productFilter": {
+ "$ref": "#/definitions/MicrosoftSecurityProductName",
+ "description": "The alerts' productName on which the cases will be generated"
+ },
+ "severitiesFilter": {
+ "description": "the alerts' severities on which the cases will be generated",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "x-ms-client-flatten": true
+ },
+ "ScheduledAlertRuleProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/ScheduledAlertRuleCommonProperties"
+ }
+ ],
+ "description": "Scheduled alert rule base property bag.",
+ "properties": {
+ "alertRuleTemplateName": {
+ "description": "The Name of the alert rule template used to create this rule.",
+ "type": "string"
+ },
+ "templateVersion": {
+ "description": "The version of the alert rule template used to create this rule - in format , where all are numbers, for example 0 <1.0.2>",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alerts created by this alert rule.",
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this alert rule has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "suppressionDuration": {
+ "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered.",
+ "format": "duration",
+ "type": "string"
+ },
+ "suppressionEnabled": {
+ "description": "Determines whether the suppression for this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "incidentConfiguration": {
+ "$ref": "#/definitions/IncidentConfiguration",
+ "description": "The settings of the incidents that created from alerts triggered by this analytics rule"
+ }
+ },
+ "required": [
+ "displayName",
+ "enabled",
+ "severity",
+ "query",
+ "queryFrequency",
+ "queryPeriod",
+ "triggerOperator",
+ "triggerThreshold",
+ "suppressionEnabled",
+ "suppressionDuration"
+ ],
+ "type": "object",
+ "x-ms-client-flatten": true
+ },
+ "NrtAlertRuleProperties": {
+ "description": "Nrt alert rule base property bag.",
+ "properties": {
+ "alertRuleTemplateName": {
+ "description": "The Name of the alert rule template used to create this rule.",
+ "type": "string"
+ },
+ "templateVersion": {
+ "description": "The version of the alert rule template used to create this rule - in format , where all are numbers, for example 0 <1.0.2>",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule.",
+ "type": "string"
+ },
+ "query": {
+ "description": "The query that creates alerts for this rule.",
+ "type": "string"
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "displayName": {
+ "description": "The display name for alerts created by this alert rule.",
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this alert rule has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "suppressionDuration": {
+ "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered.",
+ "format": "duration",
+ "type": "string"
+ },
+ "suppressionEnabled": {
+ "description": "Determines whether the suppression for this alert rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ },
+ "incidentConfiguration": {
+ "$ref": "#/definitions/IncidentConfiguration",
+ "description": "The settings of the incidents that created from alerts triggered by this analytics rule"
+ },
+ "customDetails": {
+ "description": "Dictionary of string key-value pairs of columns to be attached to the alert",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "entityMappings": {
+ "$ref": "#/definitions/EntityMappings",
+ "description": "Array of the entity mappings of the alert rule"
+ },
+ "alertDetailsOverride": {
+ "type": "object",
+ "$ref": "#/definitions/AlertDetailsOverride",
+ "description": "The alert details override settings"
+ },
+ "eventGroupingSettings": {
+ "$ref": "#/definitions/EventGroupingSettings",
+ "description": "The event grouping settings."
+ },
+ "sentinelEntitiesMappings": {
+ "$ref": "#/definitions/SentinelEntitiesMappings",
+ "description": "Array of the sentinel entity mappings of the alert rule"
+ }
+ },
+ "required": [
+ "displayName",
+ "enabled",
+ "severity",
+ "query",
+ "suppressionEnabled",
+ "suppressionDuration"
+ ],
+ "type": "object",
+ "x-ms-client-flatten": true
+ },
+ "ScheduledAlertRuleTemplateProperties": {
+ "description": "Scheduled alert rule template properties",
+ "properties": {
+ "alertRulesCreatedByTemplateCount": {
+ "description": "the number of alert rules that were created by this template",
+ "format": "int32",
+ "type": "integer"
+ },
+ "createdDateUTC": {
+ "description": "The time that this alert rule template has been added.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "lastUpdatedDateUTC": {
+ "description": "The time that this alert rule template was last updated.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the alert rule template.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for alert rule template.",
+ "type": "string"
+ },
+ "requiredDataConnectors": {
+ "description": "The required data connectors for this template",
+ "items": {
+ "$ref": "#/definitions/AlertRuleTemplateDataSource"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "status": {
+ "$ref": "#/definitions/AlertRuleTemplateStatus",
+ "description": "The alert rule template status.",
+ "type": "string"
+ },
+ "query": {
+ "description": "The query that creates alerts for this rule.",
+ "type": "string"
+ },
+ "queryFrequency": {
+ "description": "The frequency (in ISO 8601 duration format) for this alert rule to run.",
+ "format": "duration",
+ "type": "string"
+ },
+ "queryPeriod": {
+ "description": "The period (in ISO 8601 duration format) that this alert rule looks at.",
+ "format": "duration",
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ },
+ "triggerOperator": {
+ "$ref": "#/definitions/AlertRuleTriggerOperator",
+ "description": "The operation against the threshold that triggers alert rule."
+ },
+ "triggerThreshold": {
+ "description": "The threshold triggers this alert rule.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "tactics": {
+ "description": "The tactics of the alert rule template",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "techniques": {
+ "description": "The techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "subTechniques": {
+ "description": "The sub-techniques of the alert rule",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "version": {
+ "description": "The version of this template - in format , where all are numbers. For example <1.0.2>.",
+ "type": "string"
+ },
+ "eventGroupingSettings": {
+ "$ref": "#/definitions/EventGroupingSettings",
+ "description": "The event grouping settings."
+ },
+ "customDetails": {
+ "description": "Dictionary of string key-value pairs of columns to be attached to the alert",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "entityMappings": {
+ "$ref": "#/definitions/EntityMappings",
+ "description": "Array of the entity mappings of the alert rule"
+ },
+ "alertDetailsOverride": {
+ "type": "object",
+ "$ref": "#/definitions/AlertDetailsOverride",
+ "description": "The alert details override settings"
+ },
+ "sentinelEntitiesMappings": {
+ "$ref": "#/definitions/SentinelEntitiesMappings",
+ "description": "Array of the sentinel entity mappings of the alert rule"
+ }
+ },
+ "type": "object"
+ },
+ "ScheduledAlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ ],
+ "description": "Represents scheduled alert rule template.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ScheduledAlertRuleTemplateProperties",
+ "description": "Scheduled alert rule template properties",
+ "required": [
+ "displayName",
+ "description",
+ "status",
+ "alertRulesCreatedByTemplateCount",
+ "severity",
+ "query",
+ "queryFrequency",
+ "queryPeriod",
+ "triggerOperator",
+ "triggerThreshold",
+ "version"
+ ],
+ "type": "object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Scheduled"
+ },
+ "NrtAlertRuleTemplate": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplate"
+ }
+ ],
+ "description": "Represents NRT alert rule template.",
+ "properties": {
+ "properties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRuleTemplateWithMitreProperties"
+ },
+ {
+ "$ref": "#/definitions/QueryBasedAlertRuleTemplateProperties"
+ }
+ ],
+ "description": "NRT alert rule template properties",
+ "required": [
+ "displayName",
+ "description",
+ "status",
+ "alertRulesCreatedByTemplateCount",
+ "severity",
+ "query",
+ "version"
+ ],
+ "type": "object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "NRT"
+ },
+ "EventGroupingSettings": {
+ "description": "Event grouping settings property bag.",
+ "properties": {
+ "aggregationKind": {
+ "$ref": "#/definitions/EventGroupingAggregationKind"
+ }
+ },
+ "type": "object"
+ },
+ "EventGroupingAggregationKind": {
+ "description": "The event grouping aggregation kinds",
+ "enum": [
+ "SingleAlert",
+ "AlertPerResult"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EventGroupingAggregationKind"
+ }
+ },
+ "ScheduledAlertRule": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRule"
+ }
+ ],
+ "description": "Represents scheduled alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ScheduledAlertRuleProperties",
+ "description": "Scheduled alert rule properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Scheduled"
+ },
+ "NrtAlertRule": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertRule"
+ }
+ ],
+ "description": "Represents NRT alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/NrtAlertRuleProperties",
+ "description": "NRT alert rule properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "NRT"
+ },
+ "ScheduledAlertRuleCommonProperties": {
+ "description": "Scheduled alert rule template property bag.",
+ "properties": {
+ "query": {
+ "description": "The query that creates alerts for this rule.",
+ "type": "string"
+ },
+ "queryFrequency": {
+ "description": "The frequency (in ISO 8601 duration format) for this alert rule to run.",
+ "format": "duration",
+ "type": "string"
+ },
+ "queryPeriod": {
+ "description": "The period (in ISO 8601 duration format) that this alert rule looks at.",
+ "format": "duration",
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity for alerts created by this alert rule."
+ },
+ "triggerOperator": {
+ "$ref": "#/definitions/AlertRuleTriggerOperator",
+ "description": "The operation against the threshold that triggers alert rule."
+ },
+ "triggerThreshold": {
+ "description": "The threshold triggers this alert rule.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "eventGroupingSettings": {
+ "$ref": "#/definitions/EventGroupingSettings",
+ "description": "The event grouping settings."
+ },
+ "customDetails": {
+ "description": "Dictionary of string key-value pairs of columns to be attached to the alert",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "entityMappings": {
+ "$ref": "#/definitions/EntityMappings",
+ "description": "Array of the entity mappings of the alert rule"
+ },
+ "alertDetailsOverride": {
+ "type": "object",
+ "$ref": "#/definitions/AlertDetailsOverride",
+ "description": "The alert details override settings"
+ },
+ "sentinelEntitiesMappings": {
+ "$ref": "#/definitions/SentinelEntitiesMappings",
+ "description": "Array of the sentinel entity mappings of the alert rule"
+ }
+ },
+ "type": "object"
+ },
+ "EntityMappings": {
+ "description": "List of entity mappings of the alert rule",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityMapping"
+ },
+ "x-ms-identifiers": []
+ },
+ "EntityMapping": {
+ "description": "Single entity mapping for the alert rule",
+ "properties": {
+ "entityType": {
+ "$ref": "#/definitions/EntityMappingType"
+ },
+ "fieldMappings": {
+ "description": "array of field mappings for the given entity mapping",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FieldMapping"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "FieldMapping": {
+ "description": "A single field mapping of the mapped entity",
+ "properties": {
+ "identifier": {
+ "description": "the V3 identifier of the entity",
+ "type": "string"
+ },
+ "columnName": {
+ "description": "the column name to be mapped to the identifier",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "SentinelEntitiesMappings": {
+ "description": "List of sentinel entity mappings of the alert rule",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SentinelEntityMapping"
+ },
+ "x-ms-identifiers": []
+ },
+ "SentinelEntityMapping": {
+ "description": "A single sentinel entity mapping",
+ "properties": {
+ "columnName": {
+ "description": "the column name to be mapped to the SentinelEntities",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AlertDetailsOverride": {
+ "description": "Settings for how to dynamically override alert static details",
+ "properties": {
+ "alertDisplayNameFormat": {
+ "description": "the format containing columns name(s) to override the alert name",
+ "type": "string"
+ },
+ "alertDescriptionFormat": {
+ "description": "the format containing columns name(s) to override the alert description",
+ "type": "string"
+ },
+ "alertTacticsColumnName": {
+ "description": "the column name to take the alert tactics from",
+ "type": "string"
+ },
+ "alertSeverityColumnName": {
+ "description": "the column name to take the alert severity from",
+ "type": "string"
+ },
+ "alertDynamicProperties": {
+ "description": "List of additional dynamic properties to override",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AlertPropertyMapping"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "AlertPropertyMapping": {
+ "description": "A single alert property mapping to override",
+ "properties": {
+ "alertProperty": {
+ "$ref": "#/definitions/AlertProperty"
+ },
+ "value": {
+ "description": "the column name to use to override this property",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "IncidentConfiguration": {
+ "description": "Incident Configuration property bag.",
+ "properties": {
+ "createIncident": {
+ "description": "Create incidents from alerts triggered by this analytics rule",
+ "type": "boolean"
+ },
+ "groupingConfiguration": {
+ "$ref": "#/definitions/GroupingConfiguration",
+ "description": "Set how the alerts that are triggered by this analytics rule, are grouped into incidents"
+ }
+ },
+ "type": "object",
+ "required": [
+ "createIncident"
+ ]
+ },
+ "GroupingConfiguration": {
+ "description": "Grouping configuration property bag.",
+ "properties": {
+ "enabled": {
+ "description": "Grouping enabled",
+ "type": "boolean"
+ },
+ "reopenClosedIncident": {
+ "description": "Re-open closed matching incidents",
+ "type": "boolean"
+ },
+ "lookbackDuration": {
+ "description": "Limit the group to alerts created within the lookback duration (in ISO 8601 duration format)",
+ "format": "duration",
+ "type": "string"
+ },
+ "matchingMethod": {
+ "description": "Grouping matching method. When method is Selected at least one of groupByEntities, groupByAlertDetails, groupByCustomDetails must be provided and not empty.",
+ "enum": [
+ "AllEntities",
+ "AnyAlert",
+ "Selected"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MatchingMethod",
+ "values": [
+ {
+ "description": "Grouping alerts into a single incident if all the entities match",
+ "value": "AllEntities"
+ },
+ {
+ "description": "Grouping any alerts triggered by this rule into a single incident",
+ "value": "AnyAlert"
+ },
+ {
+ "description": "Grouping alerts into a single incident if the selected entities, custom details and alert details match",
+ "value": "Selected"
+ }
+ ]
+ }
+ },
+ "groupByEntities": {
+ "description": "A list of entity types to group by (when matchingMethod is Selected). Only entities defined in the current alert rule may be used.",
+ "items": {
+ "$ref": "#/definitions/EntityMappingType"
+ },
+ "type": "array"
+ },
+ "groupByAlertDetails": {
+ "description": "A list of alert details to group by (when matchingMethod is Selected)",
+ "items": {
+ "description": "Alert detail",
+ "enum": [
+ "DisplayName",
+ "Severity"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AlertDetail",
+ "values": [
+ {
+ "description": "Alert display name",
+ "value": "DisplayName"
+ },
+ {
+ "description": "Alert severity",
+ "value": "Severity"
+ }
+ ]
+ }
+ },
+ "type": "array"
+ },
+ "groupByCustomDetails": {
+ "description": "A list of custom details keys to group by (when matchingMethod is Selected). Only keys defined in the current alert rule may be used.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "enabled",
+ "reopenClosedIncident",
+ "lookbackDuration",
+ "matchingMethod"
+ ]
+ },
+ "ActionRequest": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Action for alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ActionRequestProperties",
+ "description": "Action properties for put request",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "ActionPropertiesBase": {
+ "description": "Action property bag base.",
+ "properties": {
+ "logicAppResourceId": {
+ "description": "Logic App Resource Id, /subscriptions/{my-subscription}/resourceGroups/{my-resource-group}/providers/Microsoft.Logic/workflows/{my-workflow-id}.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "logicAppResourceId"
+ ],
+ "type": "object"
+ },
+ "ActionRequestProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/ActionPropertiesBase"
+ }
+ ],
+ "description": "Action property bag.",
+ "properties": {
+ "triggerUri": {
+ "description": "Logic App Callback URL for this specific workflow.",
+ "type": "string",
+ "x-ms-secret": true
+ }
+ },
+ "required": [
+ "triggerUri"
+ ],
+ "type": "object"
+ },
+ "ActionResponse": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Action for alert rule.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ActionResponseProperties",
+ "description": "Action properties for get request",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "ActionResponseProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/ActionPropertiesBase"
+ }
+ ],
+ "description": "Action property bag.",
+ "properties": {
+ "workflowId": {
+ "description": "The name of the logic app's workflow.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ActionsList": {
+ "description": "List all the actions.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of actions.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of actions.",
+ "items": {
+ "$ref": "#/definitions/ActionResponse"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "EntityMappingType": {
+ "description": "The V3 type of the mapped entity",
+ "enum": [
+ "Account",
+ "Host",
+ "IP",
+ "Malware",
+ "File",
+ "Process",
+ "CloudApplication",
+ "DNS",
+ "AzureResource",
+ "FileHash",
+ "RegistryKey",
+ "RegistryValue",
+ "SecurityGroup",
+ "URL",
+ "Mailbox",
+ "MailCluster",
+ "MailMessage",
+ "SubmissionMail"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityMappingType",
+ "values": [
+ {
+ "description": "User account entity type",
+ "value": "Account"
+ },
+ {
+ "description": "Host entity type",
+ "value": "Host"
+ },
+ {
+ "description": "IP address entity type",
+ "value": "IP"
+ },
+ {
+ "description": "Malware entity type",
+ "value": "Malware"
+ },
+ {
+ "description": "System file entity type",
+ "value": "File"
+ },
+ {
+ "description": "Process entity type",
+ "value": "Process"
+ },
+ {
+ "description": "Cloud app entity type",
+ "value": "CloudApplication"
+ },
+ {
+ "description": "DNS entity type",
+ "value": "DNS"
+ },
+ {
+ "description": "Azure resource entity type",
+ "value": "AzureResource"
+ },
+ {
+ "description": "File-hash entity type",
+ "value": "FileHash"
+ },
+ {
+ "description": "Registry key entity type",
+ "value": "RegistryKey"
+ },
+ {
+ "description": "Registry value entity type",
+ "value": "RegistryValue"
+ },
+ {
+ "description": "Security group entity type",
+ "value": "SecurityGroup"
+ },
+ {
+ "description": "URL entity type",
+ "value": "URL"
+ },
+ {
+ "description": "Mailbox entity type",
+ "value": "Mailbox"
+ },
+ {
+ "description": "Mail cluster entity type",
+ "value": "MailCluster"
+ },
+ {
+ "description": "Mail message entity type",
+ "value": "MailMessage"
+ },
+ {
+ "description": "Submission mail entity type",
+ "value": "SubmissionMail"
+ }
+ ]
+ }
+ },
+ "AlertProperty": {
+ "description": "The V3 alert property",
+ "enum": [
+ "AlertLink",
+ "ConfidenceLevel",
+ "ConfidenceScore",
+ "ExtendedLinks",
+ "ProductName",
+ "ProviderName",
+ "ProductComponentName",
+ "RemediationSteps",
+ "Techniques",
+ "SubTechniques"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AlertProperty",
+ "values": [
+ {
+ "description": "Alert's link",
+ "value": "AlertLink"
+ },
+ {
+ "description": "Confidence level property",
+ "value": "ConfidenceLevel"
+ },
+ {
+ "description": "Confidence score",
+ "value": "ConfidenceScore"
+ },
+ {
+ "description": "Extended links to the alert",
+ "value": "ExtendedLinks"
+ },
+ {
+ "description": "Product name alert property",
+ "value": "ProductName"
+ },
+ {
+ "description": "Provider name alert property",
+ "value": "ProviderName"
+ },
+ {
+ "description": "Product component name alert property",
+ "value": "ProductComponentName"
+ },
+ {
+ "description": "Remediation steps alert property",
+ "value": "RemediationSteps"
+ },
+ {
+ "description": "Techniques alert property",
+ "value": "Techniques"
+ },
+ {
+ "description": "SubTechniques alert property",
+ "value": "SubTechniques"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AutomationRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AutomationRules.json
new file mode 100644
index 000000000000..c731167cf1f7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/AutomationRules.json
@@ -0,0 +1,1549 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/automationRules/{automationRuleId}": {
+ "get": {
+ "tags": [
+ "automationRules"
+ ],
+ "description": "Gets the automation rule.",
+ "operationId": "AutomationRules_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/AutomationRuleId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/AutomationRule"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AutomationRules_Get": {
+ "$ref": "./examples/automationRules/AutomationRules_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "automationRules"
+ ],
+ "description": "Creates or updates the automation rule.",
+ "operationId": "AutomationRules_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/AutomationRuleId"
+ },
+ {
+ "in": "body",
+ "name": "automationRuleToUpsert",
+ "description": "The automation rule",
+ "schema": {
+ "$ref": "#/definitions/AutomationRule"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/AutomationRule"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/AutomationRule"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AutomationRules_CreateOrUpdate": {
+ "$ref": "./examples/automationRules/AutomationRules_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "automationRules"
+ ],
+ "description": "Delete the automation rule.",
+ "operationId": "AutomationRules_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/AutomationRuleId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "type": "object"
+ }
+ },
+ "204": {
+ "description": "No Content",
+ "schema": {
+ "type": "object"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AutomationRules_Delete": {
+ "$ref": "./examples/automationRules/AutomationRules_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/automationRules": {
+ "get": {
+ "tags": [
+ "automationRules"
+ ],
+ "description": "Gets all automation rules.",
+ "operationId": "AutomationRules_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/AutomationRulesList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "AutomationRules_List": {
+ "$ref": "./examples/automationRules/AutomationRules_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityIdentifier}/runPlaybook": {
+ "post": {
+ "tags": [
+ "manualTrigger"
+ ],
+ "description": "Triggers playbook on a specific entity.",
+ "operationId": "Entities_RunPlaybook",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "entityIdentifier",
+ "description": "Entity identifier.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "requestBody",
+ "description": "Describes the request body for triggering a playbook on an entity.",
+ "schema": {
+ "$ref": "#/definitions/EntityManualTriggerRequestBody"
+ }
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Entities_RunPlaybook": {
+ "$ref": "./examples/manualTrigger/Entities_RunPlaybook.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentIdentifier}/runPlaybook": {
+ "post": {
+ "tags": [
+ "manualTrigger"
+ ],
+ "description": "Triggers playbook on a specific incident",
+ "operationId": "Incidents_RunPlaybook",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "incidentIdentifier",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "body",
+ "name": "requestBody",
+ "schema": {
+ "$ref": "#/definitions/ManualTriggerRequestBody"
+ }
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Success",
+ "schema": {
+ "type": "object"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_RunPlaybook": {
+ "$ref": "./examples/manualTrigger/Incidents_RunPlaybook.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ActionType": {
+ "description": "The type of the automation rule action.",
+ "enum": [
+ "ModifyProperties",
+ "RunPlaybook",
+ "AddIncidentTask"
+ ],
+ "type": "string",
+ "example": "ModifyProperties",
+ "x-ms-enum": {
+ "name": "ActionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "ModifyProperties",
+ "description": "Modify an object's properties"
+ },
+ {
+ "value": "RunPlaybook",
+ "description": "Run a playbook on an object"
+ },
+ {
+ "value": "AddIncidentTask",
+ "description": "Add a task to an incident object"
+ }
+ ]
+ }
+ },
+ "AddIncidentTaskActionProperties": {
+ "required": [
+ "title"
+ ],
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "The title of the task.",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the task.",
+ "type": "string"
+ }
+ }
+ },
+ "AutomationRule": {
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/AutomationRuleProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "AutomationRuleAction": {
+ "description": "Describes an automation rule action.",
+ "required": [
+ "actionType",
+ "order"
+ ],
+ "type": "object",
+ "properties": {
+ "order": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "actionType": {
+ "$ref": "#/definitions/ActionType"
+ }
+ },
+ "discriminator": "actionType"
+ },
+ "AutomationRuleAddIncidentTaskAction": {
+ "description": "Describes an automation rule action to add a task to an incident",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleAction"
+ }
+ ],
+ "properties": {
+ "actionConfiguration": {
+ "type": "object",
+ "$ref": "#/definitions/AddIncidentTaskActionProperties"
+ }
+ },
+ "x-ms-discriminator-value": "AddIncidentTask",
+ "x-ms-client-flatten": true
+ },
+ "AutomationRuleBooleanCondition": {
+ "type": "object",
+ "properties": {
+ "operator": {
+ "$ref": "#/definitions/AutomationRuleBooleanConditionSupportedOperator"
+ },
+ "innerConditions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ },
+ "x-ms-identifiers": [],
+ "minItems": 2,
+ "maxItems": 10
+ }
+ }
+ },
+ "AutomationRuleBooleanConditionSupportedOperator": {
+ "enum": [
+ "And",
+ "Or"
+ ],
+ "type": "string",
+ "example": "And",
+ "x-ms-enum": {
+ "name": "AutomationRuleBooleanConditionSupportedOperator",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "And",
+ "description": "Evaluates as true if all the item conditions are evaluated as true"
+ },
+ {
+ "value": "Or",
+ "description": "Evaluates as true if at least one of the item conditions are evaluated as true"
+ }
+ ]
+ }
+ },
+ "AutomationRuleCondition": {
+ "description": "Describes an automation rule condition.",
+ "required": [
+ "conditionType"
+ ],
+ "type": "object",
+ "properties": {
+ "conditionType": {
+ "$ref": "#/definitions/ConditionType"
+ }
+ },
+ "discriminator": "conditionType"
+ },
+ "AutomationRuleModifyPropertiesAction": {
+ "description": "Describes an automation rule action to modify an object's properties",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleAction"
+ }
+ ],
+ "properties": {
+ "actionConfiguration": {
+ "type": "object",
+ "$ref": "#/definitions/IncidentPropertiesAction"
+ }
+ },
+ "x-ms-discriminator-value": "ModifyProperties",
+ "x-ms-client-flatten": true
+ },
+ "AutomationRuleProperties": {
+ "description": "Automation rule properties",
+ "required": [
+ "actions",
+ "displayName",
+ "order",
+ "triggeringLogic"
+ ],
+ "type": "object",
+ "properties": {
+ "displayName": {
+ "description": "The display name of the automation rule.",
+ "type": "string",
+ "maxLength": 500
+ },
+ "order": {
+ "format": "int32",
+ "description": "The order of execution of the automation rule.",
+ "type": "integer",
+ "minimum": 1,
+ "maximum": 1000
+ },
+ "triggeringLogic": {
+ "$ref": "#/definitions/AutomationRuleTriggeringLogic"
+ },
+ "actions": {
+ "description": "The actions to execute when the automation rule is triggered.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AutomationRuleAction"
+ },
+ "x-ms-identifiers": [],
+ "maxItems": 20
+ },
+ "lastModifiedTimeUtc": {
+ "format": "date-time",
+ "description": "The last time the automation rule was updated.",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdTimeUtc": {
+ "format": "date-time",
+ "description": "The time the automation rule was created.",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastModifiedBy": {
+ "readOnly": true,
+ "$ref": "../../../common/2.0/types.json#/definitions/ClientInfo"
+ },
+ "createdBy": {
+ "readOnly": true,
+ "$ref": "../../../common/2.0/types.json#/definitions/ClientInfo"
+ }
+ }
+ },
+ "AutomationRulePropertyArrayChangedConditionSupportedArrayType": {
+ "enum": [
+ "Alerts",
+ "Labels",
+ "Tactics",
+ "Comments"
+ ],
+ "type": "string",
+ "example": "Alerts",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyArrayChangedConditionSupportedArrayType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Alerts",
+ "description": "Evaluate the condition on the alerts"
+ },
+ {
+ "value": "Labels",
+ "description": "Evaluate the condition on the labels"
+ },
+ {
+ "value": "Tactics",
+ "description": "Evaluate the condition on the tactics"
+ },
+ {
+ "value": "Comments",
+ "description": "Evaluate the condition on the comments"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyArrayChangedConditionSupportedChangeType": {
+ "enum": [
+ "Added"
+ ],
+ "type": "string",
+ "example": "Added",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyArrayChangedConditionSupportedChangeType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Added",
+ "description": "Evaluate the condition on items added to the array"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyArrayChangedValuesCondition": {
+ "type": "object",
+ "properties": {
+ "arrayType": {
+ "$ref": "#/definitions/AutomationRulePropertyArrayChangedConditionSupportedArrayType"
+ },
+ "changeType": {
+ "$ref": "#/definitions/AutomationRulePropertyArrayChangedConditionSupportedChangeType"
+ }
+ }
+ },
+ "AutomationRulePropertyArrayConditionSupportedArrayConditionType": {
+ "enum": [
+ "AnyItem",
+ "AllItems"
+ ],
+ "type": "string",
+ "example": "AnyItem",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyArrayConditionSupportedArrayConditionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "AnyItem",
+ "description": "Evaluate the condition as true if any item fulfills it"
+ },
+ {
+ "value": "AllItems",
+ "description": "Evaluate the condition as true if all the items fulfill it"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyArrayConditionSupportedArrayType": {
+ "enum": [
+ "CustomDetails",
+ "CustomDetailValues",
+ "IncidentLabels"
+ ],
+ "type": "string",
+ "example": "CustomDetails",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyArrayConditionSupportedArrayType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "CustomDetails",
+ "description": "Evaluate the condition on the custom detail keys"
+ },
+ {
+ "value": "CustomDetailValues",
+ "description": "Evaluate the condition on a custom detail's values"
+ },
+ {
+ "value": "IncidentLabels",
+ "description": "Evaluate the condition on the incident labels"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyArrayValuesCondition": {
+ "type": "object",
+ "properties": {
+ "arrayType": {
+ "$ref": "#/definitions/AutomationRulePropertyArrayConditionSupportedArrayType"
+ },
+ "arrayConditionType": {
+ "$ref": "#/definitions/AutomationRulePropertyArrayConditionSupportedArrayConditionType"
+ },
+ "itemConditions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ },
+ "x-ms-identifiers": [],
+ "maxItems": 10
+ }
+ }
+ },
+ "AutomationRulePropertyChangedConditionSupportedChangedType": {
+ "enum": [
+ "ChangedFrom",
+ "ChangedTo"
+ ],
+ "type": "string",
+ "example": "ChangedFrom",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyChangedConditionSupportedChangedType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "ChangedFrom",
+ "description": "Evaluate the condition on the previous value of the property"
+ },
+ {
+ "value": "ChangedTo",
+ "description": "Evaluate the condition on the updated value of the property"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyChangedConditionSupportedPropertyType": {
+ "enum": [
+ "IncidentSeverity",
+ "IncidentStatus",
+ "IncidentOwner"
+ ],
+ "type": "string",
+ "example": "IncidentSeverity",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyChangedConditionSupportedPropertyType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "IncidentSeverity",
+ "description": "Evaluate the condition on the incident severity"
+ },
+ {
+ "value": "IncidentStatus",
+ "description": "Evaluate the condition on the incident status"
+ },
+ {
+ "value": "IncidentOwner",
+ "description": "Evaluate the condition on the incident owner"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyConditionSupportedOperator": {
+ "enum": [
+ "Equals",
+ "NotEquals",
+ "Contains",
+ "NotContains",
+ "StartsWith",
+ "NotStartsWith",
+ "EndsWith",
+ "NotEndsWith"
+ ],
+ "type": "string",
+ "example": "Equals",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyConditionSupportedOperator",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Equals",
+ "description": "Evaluates if the property equals at least one of the condition values"
+ },
+ {
+ "value": "NotEquals",
+ "description": "Evaluates if the property does not equal any of the condition values"
+ },
+ {
+ "value": "Contains",
+ "description": "Evaluates if the property contains at least one of the condition values"
+ },
+ {
+ "value": "NotContains",
+ "description": "Evaluates if the property does not contain any of the condition values"
+ },
+ {
+ "value": "StartsWith",
+ "description": "Evaluates if the property starts with any of the condition values"
+ },
+ {
+ "value": "NotStartsWith",
+ "description": "Evaluates if the property does not start with any of the condition values"
+ },
+ {
+ "value": "EndsWith",
+ "description": "Evaluates if the property ends with any of the condition values"
+ },
+ {
+ "value": "NotEndsWith",
+ "description": "Evaluates if the property does not end with any of the condition values"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyConditionSupportedProperty": {
+ "description": "The property to evaluate in an automation rule property condition.",
+ "enum": [
+ "IncidentTitle",
+ "IncidentDescription",
+ "IncidentSeverity",
+ "IncidentStatus",
+ "IncidentRelatedAnalyticRuleIds",
+ "IncidentTactics",
+ "IncidentLabel",
+ "IncidentProviderName",
+ "IncidentUpdatedBySource",
+ "IncidentCustomDetailsKey",
+ "IncidentCustomDetailsValue",
+ "AccountAadTenantId",
+ "AccountAadUserId",
+ "AccountName",
+ "AccountNTDomain",
+ "AccountPUID",
+ "AccountSid",
+ "AccountObjectGuid",
+ "AccountUPNSuffix",
+ "AlertProductNames",
+ "AlertAnalyticRuleIds",
+ "AzureResourceResourceId",
+ "AzureResourceSubscriptionId",
+ "CloudApplicationAppId",
+ "CloudApplicationAppName",
+ "DNSDomainName",
+ "FileDirectory",
+ "FileName",
+ "FileHashValue",
+ "HostAzureID",
+ "HostName",
+ "HostNetBiosName",
+ "HostNTDomain",
+ "HostOSVersion",
+ "IoTDeviceId",
+ "IoTDeviceName",
+ "IoTDeviceType",
+ "IoTDeviceVendor",
+ "IoTDeviceModel",
+ "IoTDeviceOperatingSystem",
+ "IPAddress",
+ "MailboxDisplayName",
+ "MailboxPrimaryAddress",
+ "MailboxUPN",
+ "MailMessageDeliveryAction",
+ "MailMessageDeliveryLocation",
+ "MailMessageRecipient",
+ "MailMessageSenderIP",
+ "MailMessageSubject",
+ "MailMessageP1Sender",
+ "MailMessageP2Sender",
+ "MalwareCategory",
+ "MalwareName",
+ "ProcessCommandLine",
+ "ProcessId",
+ "RegistryKey",
+ "RegistryValueData",
+ "Url"
+ ],
+ "type": "string",
+ "example": "IncidentTitle",
+ "x-ms-enum": {
+ "name": "AutomationRulePropertyConditionSupportedProperty",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "IncidentTitle",
+ "description": "The title of the incident"
+ },
+ {
+ "value": "IncidentDescription",
+ "description": "The description of the incident"
+ },
+ {
+ "value": "IncidentSeverity",
+ "description": "The severity of the incident"
+ },
+ {
+ "value": "IncidentStatus",
+ "description": "The status of the incident"
+ },
+ {
+ "value": "IncidentRelatedAnalyticRuleIds",
+ "description": "The related Analytic rule ids of the incident"
+ },
+ {
+ "value": "IncidentTactics",
+ "description": "The tactics of the incident"
+ },
+ {
+ "value": "IncidentLabel",
+ "description": "The labels of the incident"
+ },
+ {
+ "value": "IncidentProviderName",
+ "description": "The provider name of the incident"
+ },
+ {
+ "value": "IncidentUpdatedBySource",
+ "description": "The update source of the incident"
+ },
+ {
+ "value": "IncidentCustomDetailsKey",
+ "description": "The incident custom detail key"
+ },
+ {
+ "value": "IncidentCustomDetailsValue",
+ "description": "The incident custom detail value"
+ },
+ {
+ "value": "AccountAadTenantId",
+ "description": "The account Azure Active Directory tenant id"
+ },
+ {
+ "value": "AccountAadUserId",
+ "description": "The account Azure Active Directory user id"
+ },
+ {
+ "value": "AccountName",
+ "description": "The account name"
+ },
+ {
+ "value": "AccountNTDomain",
+ "description": "The account NetBIOS domain name"
+ },
+ {
+ "value": "AccountPUID",
+ "description": "The account Azure Active Directory Passport User ID"
+ },
+ {
+ "value": "AccountSid",
+ "description": "The account security identifier"
+ },
+ {
+ "value": "AccountObjectGuid",
+ "description": "The account unique identifier"
+ },
+ {
+ "value": "AccountUPNSuffix",
+ "description": "The account user principal name suffix"
+ },
+ {
+ "value": "AlertProductNames",
+ "description": "The name of the product of the alert"
+ },
+ {
+ "value": "AlertAnalyticRuleIds",
+ "description": "The analytic rule ids of the alert"
+ },
+ {
+ "value": "AzureResourceResourceId",
+ "description": "The Azure resource id"
+ },
+ {
+ "value": "AzureResourceSubscriptionId",
+ "description": "The Azure resource subscription id"
+ },
+ {
+ "value": "CloudApplicationAppId",
+ "description": "The cloud application identifier"
+ },
+ {
+ "value": "CloudApplicationAppName",
+ "description": "The cloud application name"
+ },
+ {
+ "value": "DNSDomainName",
+ "description": "The dns record domain name"
+ },
+ {
+ "value": "FileDirectory",
+ "description": "The file directory full path"
+ },
+ {
+ "value": "FileName",
+ "description": "The file name without path"
+ },
+ {
+ "value": "FileHashValue",
+ "description": "The file hash value"
+ },
+ {
+ "value": "HostAzureID",
+ "description": "The host Azure resource id"
+ },
+ {
+ "value": "HostName",
+ "description": "The host name without domain"
+ },
+ {
+ "value": "HostNetBiosName",
+ "description": "The host NetBIOS name"
+ },
+ {
+ "value": "HostNTDomain",
+ "description": "The host NT domain"
+ },
+ {
+ "value": "HostOSVersion",
+ "description": "The host operating system"
+ },
+ {
+ "value": "IoTDeviceId",
+ "description": "\"The IoT device id"
+ },
+ {
+ "value": "IoTDeviceName",
+ "description": "The IoT device name"
+ },
+ {
+ "value": "IoTDeviceType",
+ "description": "The IoT device type"
+ },
+ {
+ "value": "IoTDeviceVendor",
+ "description": "The IoT device vendor"
+ },
+ {
+ "value": "IoTDeviceModel",
+ "description": "The IoT device model"
+ },
+ {
+ "value": "IoTDeviceOperatingSystem",
+ "description": "The IoT device operating system"
+ },
+ {
+ "value": "IPAddress",
+ "description": "The IP address"
+ },
+ {
+ "value": "MailboxDisplayName",
+ "description": "The mailbox display name"
+ },
+ {
+ "value": "MailboxPrimaryAddress",
+ "description": "The mailbox primary address"
+ },
+ {
+ "value": "MailboxUPN",
+ "description": "The mailbox user principal name"
+ },
+ {
+ "value": "MailMessageDeliveryAction",
+ "description": "The mail message delivery action"
+ },
+ {
+ "value": "MailMessageDeliveryLocation",
+ "description": "The mail message delivery location"
+ },
+ {
+ "value": "MailMessageRecipient",
+ "description": "The mail message recipient"
+ },
+ {
+ "value": "MailMessageSenderIP",
+ "description": "The mail message sender IP address"
+ },
+ {
+ "value": "MailMessageSubject",
+ "description": "The mail message subject"
+ },
+ {
+ "value": "MailMessageP1Sender",
+ "description": "The mail message P1 sender"
+ },
+ {
+ "value": "MailMessageP2Sender",
+ "description": "The mail message P2 sender"
+ },
+ {
+ "value": "MalwareCategory",
+ "description": "The malware category"
+ },
+ {
+ "value": "MalwareName",
+ "description": "The malware name"
+ },
+ {
+ "value": "ProcessCommandLine",
+ "description": "The process execution command line"
+ },
+ {
+ "value": "ProcessId",
+ "description": "The process id"
+ },
+ {
+ "value": "RegistryKey",
+ "description": "The registry key path"
+ },
+ {
+ "value": "RegistryValueData",
+ "description": "The registry key value in string formatted representation"
+ },
+ {
+ "value": "Url",
+ "description": "The url"
+ }
+ ]
+ }
+ },
+ "AutomationRulePropertyValuesChangedCondition": {
+ "type": "object",
+ "properties": {
+ "propertyName": {
+ "$ref": "#/definitions/AutomationRulePropertyChangedConditionSupportedPropertyType"
+ },
+ "changeType": {
+ "$ref": "#/definitions/AutomationRulePropertyChangedConditionSupportedChangedType"
+ },
+ "operator": {
+ "$ref": "#/definitions/AutomationRulePropertyConditionSupportedOperator"
+ },
+ "propertyValues": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "AutomationRulePropertyValuesCondition": {
+ "type": "object",
+ "properties": {
+ "propertyName": {
+ "$ref": "#/definitions/AutomationRulePropertyConditionSupportedProperty"
+ },
+ "operator": {
+ "$ref": "#/definitions/AutomationRulePropertyConditionSupportedOperator"
+ },
+ "propertyValues": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "AutomationRuleRunPlaybookAction": {
+ "description": "Describes an automation rule action to run a playbook",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleAction"
+ }
+ ],
+ "properties": {
+ "actionConfiguration": {
+ "type": "object",
+ "$ref": "#/definitions/PlaybookActionProperties"
+ }
+ },
+ "x-ms-discriminator-value": "RunPlaybook",
+ "x-ms-client-flatten": true
+ },
+ "AutomationRulesList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AutomationRule"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ },
+ "AutomationRuleTriggeringLogic": {
+ "description": "Describes automation rule triggering logic.",
+ "required": [
+ "isEnabled",
+ "triggersOn",
+ "triggersWhen"
+ ],
+ "type": "object",
+ "properties": {
+ "isEnabled": {
+ "description": "Determines whether the automation rule is enabled or disabled.",
+ "type": "boolean"
+ },
+ "expirationTimeUtc": {
+ "format": "date-time",
+ "description": "Determines when the automation rule should automatically expire and be disabled.",
+ "type": "string"
+ },
+ "triggersOn": {
+ "$ref": "#/definitions/triggersOn"
+ },
+ "triggersWhen": {
+ "$ref": "#/definitions/triggersWhen"
+ },
+ "conditions": {
+ "description": "The conditions to evaluate to determine if the automation rule should be triggered on a given object.",
+ "type": "array",
+ "maxItems": 50,
+ "items": {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ },
+ "x-ms-identifiers": [
+ "conditionType"
+ ]
+ }
+ }
+ },
+ "BooleanConditionProperties": {
+ "description": "Describes an automation rule condition that applies a boolean operator (e.g AND, OR) to conditions",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ }
+ ],
+ "properties": {
+ "conditionProperties": {
+ "type": "object",
+ "$ref": "#/definitions/AutomationRuleBooleanCondition"
+ }
+ },
+ "x-ms-discriminator-value": "Boolean",
+ "x-ms-client-flatten": true
+ },
+ "ConditionType": {
+ "enum": [
+ "Property",
+ "PropertyArray",
+ "PropertyChanged",
+ "PropertyArrayChanged",
+ "Boolean"
+ ],
+ "type": "string",
+ "example": "Property",
+ "x-ms-enum": {
+ "name": "ConditionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Property",
+ "description": "Evaluate an object property value"
+ },
+ {
+ "value": "PropertyArray",
+ "description": "Evaluate an object array property value"
+ },
+ {
+ "value": "PropertyChanged",
+ "description": "Evaluate an object property changed value"
+ },
+ {
+ "value": "PropertyArrayChanged",
+ "description": "Evaluate an object array property changed value"
+ },
+ {
+ "value": "Boolean",
+ "description": "Apply a boolean operator (e.g AND, OR) to conditions"
+ }
+ ]
+ }
+ },
+ "EntityManualTriggerRequestBody": {
+ "type": "object",
+ "description": "Describes the request body for triggering a playbook on an entity.",
+ "required": [
+ "logicAppsResourceId"
+ ],
+ "properties": {
+ "incidentArmId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "scopes": [
+ "Extension"
+ ],
+ "type": "Microsoft.SecurityInsights/incidents"
+ }
+ ]
+ },
+ "description": "Incident ARM id."
+ },
+ "tenantId": {
+ "format": "uuid",
+ "type": "string",
+ "description": "The tenant id of the playbook resource."
+ },
+ "logicAppsResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Logic/workflows"
+ },
+ {
+ "type": "Microsoft.Web/sites"
+ }
+ ]
+ },
+ "description": "The resource id of the playbook resource."
+ }
+ }
+ },
+ "IncidentPropertiesAction": {
+ "type": "object",
+ "properties": {
+ "severity": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentSeverityEnum"
+ },
+ "status": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentStatusEnum"
+ },
+ "classification": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentClassificationEnum"
+ },
+ "classificationReason": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentClassificationReasonEnum"
+ },
+ "classificationComment": {
+ "description": "Describes the reason the incident was closed.",
+ "type": "string"
+ },
+ "owner": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentOwnerInfo"
+ },
+ "labels": {
+ "description": "List of labels to add to the incident.",
+ "type": "array",
+ "x-ms-identifiers": [
+ "labelName"
+ ],
+ "items": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentLabel"
+ }
+ }
+ }
+ },
+ "ManualTriggerRequestBody": {
+ "type": "object",
+ "required": [
+ "logicAppsResourceId"
+ ],
+ "properties": {
+ "tenantId": {
+ "format": "uuid",
+ "type": "string"
+ },
+ "logicAppsResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Logic/workflows"
+ },
+ {
+ "type": "Microsoft.Web/sites"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "PlaybookActionProperties": {
+ "type": "object",
+ "required": [
+ "logicAppResourceId"
+ ],
+ "properties": {
+ "logicAppResourceId": {
+ "description": "The resource id of the playbook resource.",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Logic/workflows"
+ },
+ {
+ "type": "Microsoft.Web/sites"
+ }
+ ]
+ }
+ },
+ "tenantId": {
+ "format": "uuid",
+ "description": "The tenant id of the playbook resource.",
+ "type": "string"
+ }
+ }
+ },
+ "PropertyArrayChangedConditionProperties": {
+ "description": "Describes an automation rule condition that evaluates an array property's value change",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ }
+ ],
+ "properties": {
+ "conditionProperties": {
+ "type": "object",
+ "$ref": "#/definitions/AutomationRulePropertyArrayChangedValuesCondition"
+ }
+ },
+ "x-ms-discriminator-value": "PropertyArrayChanged",
+ "x-ms-client-flatten": true
+ },
+ "PropertyArrayConditionProperties": {
+ "description": "Describes an automation rule condition that evaluates an array property's value",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ }
+ ],
+ "properties": {
+ "conditionProperties": {
+ "type": "object",
+ "$ref": "#/definitions/AutomationRulePropertyArrayValuesCondition"
+ }
+ },
+ "x-ms-discriminator-value": "PropertyArray",
+ "x-ms-client-flatten": true
+ },
+ "PropertyChangedConditionProperties": {
+ "description": "Describes an automation rule condition that evaluates a property's value change",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ }
+ ],
+ "properties": {
+ "conditionProperties": {
+ "type": "object",
+ "$ref": "#/definitions/AutomationRulePropertyValuesChangedCondition"
+ }
+ },
+ "x-ms-discriminator-value": "PropertyChanged",
+ "x-ms-client-flatten": true
+ },
+ "PropertyConditionProperties": {
+ "description": "Describes an automation rule condition that evaluates a property's value",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AutomationRuleCondition"
+ }
+ ],
+ "properties": {
+ "conditionProperties": {
+ "type": "object",
+ "$ref": "#/definitions/AutomationRulePropertyValuesCondition"
+ }
+ },
+ "x-ms-discriminator-value": "Property",
+ "x-ms-client-flatten": true
+ },
+ "triggersOn": {
+ "enum": [
+ "Incidents",
+ "Alerts"
+ ],
+ "type": "string",
+ "example": "Incidents",
+ "x-ms-enum": {
+ "name": "triggersOn",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Incidents",
+ "description": "Trigger on Incidents"
+ },
+ {
+ "value": "Alerts",
+ "description": "Trigger on Alerts"
+ }
+ ]
+ }
+ },
+ "triggersWhen": {
+ "enum": [
+ "Created",
+ "Updated"
+ ],
+ "type": "string",
+ "example": "Created",
+ "x-ms-enum": {
+ "name": "triggersWhen",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Created",
+ "description": "Trigger on created objects"
+ },
+ {
+ "value": "Updated",
+ "description": "Trigger on updated objects"
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "AutomationRule": {
+ "name": "automationRule",
+ "description": "The automation rule",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/AutomationRule"
+ }
+ },
+ "AutomationRuleId": {
+ "in": "path",
+ "name": "automationRuleId",
+ "description": "Automation rule ID",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ },
+ "description": "Azure Active Directory OAuth2 Flow"
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BillingStatistics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BillingStatistics.json
new file mode 100644
index 000000000000..97e6d0cba513
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BillingStatistics.json
@@ -0,0 +1,226 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/billingStatistics": {
+ "get": {
+ "x-ms-examples": {
+ "Get all Microsoft Sentinel billing statistics.": {
+ "$ref": "./examples/billingStatistics/GetAllBillingStatistics.json"
+ }
+ },
+ "tags": [
+ "billingStatistics"
+ ],
+ "description": "Gets all Microsoft Sentinel billing statistics.",
+ "operationId": "BillingStatistics_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/BillingStatisticList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/billingStatistics/{billingStatisticName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a billing statistic.": {
+ "$ref": "./examples/billingStatistics/GetBillingStatistic.json"
+ }
+ },
+ "tags": [
+ "billingStatistics"
+ ],
+ "description": "Gets a billing statistic",
+ "operationId": "BillingStatistics_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BillingStatisticName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/BillingStatistic"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BillingStatisticList": {
+ "description": "List of all Microsoft Sentinel billing statistics.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of billing statistics.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of billing statistics.",
+ "items": {
+ "$ref": "#/definitions/BillingStatistic"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "BillingStatistic": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/AzureEntityResource"
+ }
+ ],
+ "description": "Billing statistic",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/BillingStatisticKindEnum",
+ "description": "The kind of the billing statistic"
+ }
+ },
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "BillingStatisticKindEnum": {
+ "description": "The kind of the billing statistic",
+ "enum": [
+ "SapSolutionUsage"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "BillingStatisticKind",
+ "values": [
+ {
+ "value": "SapSolutionUsage"
+ }
+ ]
+ }
+ },
+ "SapSolutionUsageStatistic": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/BillingStatistic"
+ }
+ ],
+ "description": "Billing statistic about the Microsoft Sentinel solution for SAP Usage",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SapSolutionUsageStatisticProperties",
+ "description": "The SAP solution usage object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "SapSolutionUsage"
+ },
+ "SapSolutionUsageStatisticProperties": {
+ "description": "Properties of the billing statistic about the Microsoft Sentinel solution for SAP usage",
+ "properties": {
+ "activeSystemIdCount": {
+ "description": "The latest count of active SAP system IDs under the Microsoft Sentinel solution for SAP Usage",
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "BillingStatisticName": {
+ "description": "The name of the billing statistic",
+ "in": "path",
+ "name": "billingStatisticName",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Bookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Bookmarks.json
new file mode 100644
index 000000000000..ad74217d64aa
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Bookmarks.json
@@ -0,0 +1,751 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks": {
+ "get": {
+ "x-ms-examples": {
+ "Get all bookmarks.": {
+ "$ref": "./examples/bookmarks/GetBookmarks.json"
+ }
+ },
+ "tags": [
+ "Bookmarks"
+ ],
+ "description": "Gets all bookmarks.",
+ "operationId": "Bookmarks_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/BookmarkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks/{bookmarkId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a bookmark.": {
+ "$ref": "./examples/bookmarks/GetBookmarkById.json"
+ }
+ },
+ "tags": [
+ "Bookmarks"
+ ],
+ "description": "Gets a bookmark.",
+ "operationId": "Bookmarks_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Bookmark"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a bookmark.": {
+ "$ref": "./examples/bookmarks/CreateBookmark.json"
+ }
+ },
+ "tags": [
+ "Bookmarks"
+ ],
+ "description": "Creates or updates the bookmark.",
+ "operationId": "Bookmarks_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ },
+ {
+ "$ref": "#/parameters/Bookmark"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Bookmark"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Bookmark"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a bookmark.": {
+ "$ref": "./examples/bookmarks/DeleteBookmark.json"
+ }
+ },
+ "tags": [
+ "Bookmarks"
+ ],
+ "description": "Delete the bookmark.",
+ "operationId": "Bookmarks_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks/{bookmarkId}/relations": {
+ "get": {
+ "x-ms-examples": {
+ "Get all bookmark relations.": {
+ "$ref": "./examples/bookmarks/relations/GetAllBookmarkRelations.json"
+ }
+ },
+ "tags": [
+ "BookmarkRelations"
+ ],
+ "description": "Gets all bookmark relations.",
+ "operationId": "BookmarkRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/RelationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-odata": "./common/RelationTypes.json#/definitions/Relation",
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks/{bookmarkId}/expand": {
+ "post": {
+ "x-ms-examples": {
+ "Expand an bookmark": {
+ "$ref": "./examples/bookmarks/expand/PostExpandBookmark.json"
+ }
+ },
+ "description": "Expand an bookmark",
+ "operationId": "Bookmark_Expand",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ },
+ {
+ "$ref": "#/parameters/BookmarkExpandRequestBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/BookmarkExpandResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "tags": [
+ "Bookmark"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks/{bookmarkId}/relations/{relationName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a bookmark relation.": {
+ "$ref": "./examples/bookmarks/relations/GetBookmarkRelationByName.json"
+ }
+ },
+ "tags": [
+ "BookmarkRelations"
+ ],
+ "description": "Gets a bookmark relation.",
+ "operationId": "BookmarkRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a bookmark relation.": {
+ "$ref": "./examples/bookmarks/relations/CreateBookmarkRelation.json"
+ }
+ },
+ "tags": [
+ "BookmarkRelations"
+ ],
+ "description": "Creates the bookmark relation.",
+ "operationId": "BookmarkRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/Relation"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete the bookmark relation.": {
+ "$ref": "./examples/bookmarks/relations/DeleteBookmarkRelation.json"
+ }
+ },
+ "tags": [
+ "BookmarkRelations"
+ ],
+ "description": "Delete the bookmark relation.",
+ "operationId": "BookmarkRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/BookmarkId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "Bookmark": {
+ "description": "The bookmark",
+ "in": "body",
+ "name": "bookmark",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Bookmark"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "BookmarkExpandRequestBody": {
+ "description": "The parameters required to execute an expand operation on the given bookmark.",
+ "in": "body",
+ "name": "parameters",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/BookmarkExpandParameters"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "BookmarkId": {
+ "description": "Bookmark ID",
+ "in": "path",
+ "name": "bookmarkId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "Bookmark": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a bookmark in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/BookmarkProperties",
+ "description": "Bookmark properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "BookmarkExpandParameters": {
+ "description": "The parameters required to execute an expand operation on the given bookmark.",
+ "properties": {
+ "endTime": {
+ "description": "The end date filter, so the only expansion results returned are before this date.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "expansionId": {
+ "description": "The Id of the expansion to perform.",
+ "format": "uuid",
+ "type": "string"
+ },
+ "startTime": {
+ "description": "The start date filter, so the only expansion results returned are after this date.",
+ "format": "date-time",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BookmarkExpandResponse": {
+ "description": "The entity expansion result operation response.",
+ "properties": {
+ "metaData": {
+ "$ref": "./common/EntityTypes.json#/definitions/ExpansionResultsMetadata",
+ "description": "The metadata from the expansion operation results."
+ },
+ "value": {
+ "description": "The expansion result values.",
+ "properties": {
+ "entities": {
+ "description": "Array of the expansion result entities.",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/Entity"
+ },
+ "type": "array"
+ },
+ "edges": {
+ "description": "Array of expansion result connected entities",
+ "items": {
+ "$ref": "#/definitions/ConnectedEntity"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "BookmarkList": {
+ "description": "List all the bookmarks.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of bookmarks.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of bookmarks.",
+ "items": {
+ "$ref": "#/definitions/Bookmark"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "BookmarkProperties": {
+ "description": "Describes bookmark properties",
+ "properties": {
+ "created": {
+ "description": "The time the bookmark was created",
+ "format": "date-time",
+ "type": "string"
+ },
+ "createdBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that created the bookmark",
+ "type": "object"
+ },
+ "displayName": {
+ "description": "The display name of the bookmark",
+ "type": "string"
+ },
+ "labels": {
+ "description": "List of labels relevant to this bookmark",
+ "items": {
+ "$ref": "../../../common/2.0/types.json#/definitions/Label"
+ },
+ "type": "array"
+ },
+ "notes": {
+ "description": "The notes of the bookmark",
+ "type": "string"
+ },
+ "query": {
+ "description": "The query of the bookmark.",
+ "type": "string"
+ },
+ "queryResult": {
+ "description": "The query result of the bookmark.",
+ "type": "string"
+ },
+ "updated": {
+ "description": "The last time the bookmark was updated",
+ "format": "date-time",
+ "type": "string"
+ },
+ "updatedBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that updated the bookmark",
+ "type": "object"
+ },
+ "eventTime": {
+ "description": "The bookmark event time",
+ "format": "date-time",
+ "type": "string"
+ },
+ "queryStartTime": {
+ "description": "The start time for the query",
+ "format": "date-time",
+ "type": "string"
+ },
+ "queryEndTime": {
+ "description": "The end time for the query",
+ "format": "date-time",
+ "type": "string"
+ },
+ "incidentInfo": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentInfo",
+ "description": "Describes an incident that relates to bookmark",
+ "type": "object"
+ },
+ "entityMappings": {
+ "$ref": "#/definitions/EntityMappingsList",
+ "description": "Describes the entity mappings of the bookmark",
+ "type": "object"
+ },
+ "tactics": {
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "description": "A list of relevant mitre attacks",
+ "type": "array"
+ },
+ "techniques": {
+ "items": {
+ "$ref": "#/definitions/AttackTechnique"
+ },
+ "description": "A list of relevant mitre techniques",
+ "type": "array"
+ }
+ },
+ "required": [
+ "displayName",
+ "query"
+ ],
+ "type": "object"
+ },
+ "ConnectedEntity": {
+ "description": "Expansion result connected entities",
+ "properties": {
+ "targetEntityId": {
+ "description": "Entity Id of the connected entity",
+ "type": "string"
+ },
+ "additionalData": {
+ "description": "key-value pairs for a connected entity mapping",
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "EntityMappingsList": {
+ "description": "Describes the entity mappings of the bookmark",
+ "items": {
+ "$ref": "#/definitions/BookmarkEntityMappings"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ },
+ "BookmarkEntityMappings": {
+ "description": "Describes the entity mappings of a single entity",
+ "properties": {
+ "entityType": {
+ "description": "The entity type",
+ "type": "string"
+ },
+ "fieldMappings": {
+ "description": "Array of fields mapping for that entity type",
+ "items": {
+ "$ref": "#/definitions/EntityFieldMapping"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "EntityFieldMapping": {
+ "description": "Map identifiers of a single entity",
+ "properties": {
+ "identifier": {
+ "description": "Alert V3 identifier",
+ "type": "string"
+ },
+ "value": {
+ "description": "The value of the identifier",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AttackTechnique": {
+ "description": "Mitre technique (https://attack.mitre.org/matrices/enterprise/)",
+ "type": "string"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BusinessApplicationAgents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BusinessApplicationAgents.json
new file mode 100644
index 000000000000..ef195309b757
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/BusinessApplicationAgents.json
@@ -0,0 +1,1691 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents/{agentResourceName}": {
+ "put": {
+ "tags": [
+ "businessApplicationAgents"
+ ],
+ "description": "Creates or updates the Business Application Agent.",
+ "operationId": "BusinessApplicationAgents_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "agentToUpsert",
+ "description": "The Business Application Agent",
+ "schema": {
+ "$ref": "#/definitions/BusinessApplicationAgentResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/BusinessApplicationAgentResource"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/BusinessApplicationAgentResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "BusinessApplicationAgents_CreateOrUpdate": {
+ "$ref": "./examples/businessApplicationAgents/BusinessApplicationAgents_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "businessApplicationAgents"
+ ],
+ "description": "Gets Business Application Agent.",
+ "operationId": "BusinessApplicationAgent_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/BusinessApplicationAgentResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "BusinessApplicationAgent_Get": {
+ "$ref": "./examples/businessApplicationAgents/BusinessApplicationAgent_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "businessApplicationAgents"
+ ],
+ "description": "Delete the Business Application Agent.",
+ "operationId": "BusinessApplicationAgents_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "BusinessApplicationAgents_Delete": {
+ "$ref": "./examples/businessApplicationAgents/BusinessApplicationAgents_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents": {
+ "get": {
+ "tags": [
+ "businessApplicationAgents"
+ ],
+ "description": "Gets all Business Application Agents under the workspace.",
+ "operationId": "BusinessApplicationAgents_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/BusinessApplicationAgentsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "BusinessApplicationAgents_List": {
+ "$ref": "./examples/businessApplicationAgents/BusinessApplicationAgents_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents/{agentResourceName}/systems/{systemResourceName}": {
+ "put": {
+ "tags": [
+ "systems"
+ ],
+ "description": "Creates or updates the system.",
+ "operationId": "Systems_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "path",
+ "name": "systemResourceName",
+ "description": "The name of the system.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "systemToUpsert",
+ "description": "The system to upsert.",
+ "schema": {
+ "$ref": "#/definitions/SystemResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/SystemResource"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SystemResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Systems_CreateOrUpdate": {
+ "$ref": "./examples/businessApplicationAgents/systems/Systems_CreateOrUpdate.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "systems"
+ ],
+ "description": "Gets the system.",
+ "operationId": "Systems_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "path",
+ "name": "systemResourceName",
+ "description": "The name of the system.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/SystemResource"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Systems_Get": {
+ "$ref": "./examples/businessApplicationAgents/systems/Systems_Get.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "systems"
+ ],
+ "description": "Deletes the system.",
+ "operationId": "Systems_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "path",
+ "name": "systemResourceName",
+ "description": "The name of the system.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Systems_Delete": {
+ "$ref": "./examples/businessApplicationAgents/systems/Systems_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents/{agentResourceName}/systems": {
+ "get": {
+ "tags": [
+ "systems"
+ ],
+ "description": "ListAll the systems.",
+ "operationId": "Systems_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Ok",
+ "schema": {
+ "$ref": "#/definitions/SystemsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Systems_List": {
+ "$ref": "./examples/businessApplicationAgents/systems/Systems_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents/{agentResourceName}/systems/{systemResourceName}/listActions": {
+ "post": {
+ "tags": [
+ "SystemsActions"
+ ],
+ "operationId": "Systems_ListActions",
+ "description": "List of actions for a business application system.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "path",
+ "name": "systemResourceName",
+ "description": "The name of the system.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "List actions for a business application system",
+ "schema": {
+ "$ref": "#/definitions/ListActionsResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ListActions": {
+ "$ref": "./examples/businessApplicationAgents/actions/ListActions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents/{agentResourceName}/systems/{systemResourceName}/undoAction": {
+ "post": {
+ "tags": [
+ "SystemsActions"
+ ],
+ "operationId": "Systems_UndoAction",
+ "description": "Undo action, based on the actionId.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "path",
+ "name": "systemResourceName",
+ "description": "The name of the system.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "body",
+ "description": "Undo action, based on the actionId.",
+ "name": "payload",
+ "schema": {
+ "$ref": "#/definitions/UndoActionPayload"
+ }
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "UndoAction": {
+ "$ref": "./examples/businessApplicationAgents/actions/UndoAction.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/businessApplicationAgents/{agentResourceName}/systems/{systemResourceName}/reportActionStatus": {
+ "post": {
+ "tags": [
+ "SystemsActions"
+ ],
+ "operationId": "Systems_ReportActionStatus",
+ "description": "Report the status of the action.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "in": "path",
+ "name": "agentResourceName",
+ "description": "Business Application Agent Name",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "path",
+ "name": "systemResourceName",
+ "description": "The name of the system.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9,-]*$",
+ "minLength": 3,
+ "maxLength": 63
+ },
+ {
+ "in": "body",
+ "name": "payload",
+ "description": "Report a status of the action that was performed by the agent",
+ "schema": {
+ "$ref": "#/definitions/ReportActionStatusPayload"
+ }
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "ReportActionStatus": {
+ "$ref": "./examples/businessApplicationAgents/actions/ReportActionStatus.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BusinessApplicationAgentResource": {
+ "description": "Describes the configuration of a Business Application Agent.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/AgentProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "AgentConfiguration": {
+ "description": "Describes the configuration of a Business Application Agent.",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/AgentType"
+ }
+ },
+ "discriminator": "type"
+ },
+ "AgentProperties": {
+ "required": [
+ "configuration",
+ "displayName"
+ ],
+ "type": "object",
+ "properties": {
+ "configuration": {
+ "$ref": "#/definitions/AgentConfiguration"
+ },
+ "agentSystems": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AgentSystem"
+ },
+ "readOnly": true
+ },
+ "displayName": {
+ "minLength": 1,
+ "type": "string"
+ },
+ "lastModifiedTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "AgentSystem": {
+ "description": "Describes the configuration of a system inside the agent.",
+ "type": "object",
+ "properties": {
+ "systemResourceName": {
+ "type": "string"
+ },
+ "systemDisplayName": {
+ "type": "string"
+ }
+ }
+ },
+ "AgentType": {
+ "description": "Type of the agent",
+ "enum": [
+ "SAP"
+ ],
+ "type": "string",
+ "example": "SAP",
+ "x-ms-enum": {
+ "name": "AgentType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "SAP"
+ }
+ ]
+ }
+ },
+ "BusinessApplicationAgentsList": {
+ "description": "List of agents.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BusinessApplicationAgentResource"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ },
+ "KeyVaultAuthenticationMode": {
+ "description": "Type for authentication identity to key vault",
+ "enum": [
+ "ManagedIdentity",
+ "ServicePrincipal"
+ ],
+ "type": "string",
+ "example": "ManagedIdentity",
+ "x-ms-enum": {
+ "name": "KeyVaultAuthenticationMode",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "ManagedIdentity"
+ },
+ {
+ "value": "ServicePrincipal"
+ }
+ ]
+ }
+ },
+ "SapAgentConfiguration": {
+ "description": "Describes the configuration of a SAP Docker agent.",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/AgentConfiguration"
+ }
+ ],
+ "properties": {
+ "agentContainerName": {
+ "description": "The name of the docker agent.\r\nonly letters with numbers, underscores and hyphens are allowed\r\nexample: \"my-agent\"",
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$",
+ "type": "string"
+ },
+ "sdkPath": {
+ "description": "The SDK path (a file not a folder) on the agent machine.\r\nexample: \"/path/to/nwrfc750P_8-70002755.zip\"",
+ "pattern": "^/(([^/]+/)*nwrfc75.*\\.zip$)|^((?:[a-zA-Z]:)?(?:\\\\|\\\\\\\\)(?:[^\\\\/:*?\"<>|\\r\\n]+\\\\)*nwrfc75.*\\.zip)$",
+ "type": "string"
+ },
+ "sncPath": {
+ "description": "The SNC path (a folder not a file) on the agent machine.\r\nexample: \"/path/to/snc\"",
+ "pattern": "^\\/(?:[^/]+\\/)*[^/]+$|^(?:[a-zA-Z]:)?(?:\\\\|\\\\\\\\)(?:[^\\\\/:*?\"<>|\\r\\n]+\\\\)*[^\\\\/:*?\"<>|\\r\\n]*$",
+ "type": "string"
+ },
+ "keyVaultResourceId": {
+ "description": "The key vault resource id to access the key vault.\r\nexample: \"/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.KeyVault/vaults/myVault\"",
+ "pattern": "^\\/?subscriptions\\/([^\\/]+)\\/resourceGroups\\/([^\\/]+)\\/providers\\/Microsoft\\.KeyVault\\/vaults\\/([^\\/]+)$",
+ "type": "string"
+ },
+ "keyVaultAuthenticationMode": {
+ "description": "The key mode of the agent.\r\nManagedIdentity|ApplicationIdentity are the options",
+ "$ref": "#/definitions/KeyVaultAuthenticationMode"
+ },
+ "secretSource": {
+ "description": "The secret source of the agent.\r\nAzureKeyVault is the option",
+ "$ref": "#/definitions/SecretSource"
+ },
+ "type": {
+ "$ref": "#/definitions/AgentType"
+ }
+ },
+ "x-ms-discriminator-value": "SAP"
+ },
+ "SecretSource": {
+ "description": "Type for Secret Source - Azure Key Vault",
+ "enum": [
+ "AzureKeyVault"
+ ],
+ "type": "string",
+ "example": "AzureKeyVault",
+ "x-ms-enum": {
+ "name": "SecretSource",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "AzureKeyVault"
+ }
+ ]
+ }
+ },
+ "ListActionsResponse": {
+ "description": "List all actions for a system to perform.",
+ "properties": {
+ "value": {
+ "description": "Array of actions.",
+ "items": {
+ "$ref": "#/definitions/Action"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ },
+ "nextLink": {
+ "description": "The link to fetch the next page of actions.",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "Action": {
+ "description": "Represents an action to perform on a specific system.",
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/ListActionKind",
+ "description": "The actions kind"
+ }
+ },
+ "type": "object"
+ },
+ "ListActionKind": {
+ "description": "The kind of the action",
+ "enum": [
+ "LockUser",
+ "UnlockUser"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ListActionKind",
+ "values": [
+ {
+ "value": "LockUser"
+ },
+ {
+ "value": "UnlockUser"
+ }
+ ]
+ }
+ },
+ "LockUserAction": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Action"
+ }
+ ],
+ "description": "Represents lock user action.",
+ "properties": {
+ "user": {
+ "type": "string",
+ "description": "The user to lock"
+ },
+ "failureReason": {
+ "type": "string",
+ "description": "The reason of the failure of the action. Empty if the action is successful."
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "LockUser"
+ },
+ "UnlockUserAction": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Action"
+ }
+ ],
+ "description": "Represents an unlock user action.",
+ "properties": {
+ "user": {
+ "type": "string",
+ "description": "The user to unlock"
+ },
+ "failureReason": {
+ "type": "string",
+ "description": "The reason of the failure of the action. Empty if the action is successful."
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "UnlockUser"
+ },
+ "UndoActionPayload": {
+ "description": "Represents the undo action.",
+ "properties": {
+ "actionId": {
+ "type": "string",
+ "description": "The action ID of the original action that was performed and now need to undo"
+ }
+ },
+ "type": "object"
+ },
+ "ReportActionStatusPayload": {
+ "description": "Report the status of an action that was performed by the agent",
+ "type": "object",
+ "properties": {
+ "actionId": {
+ "type": "string",
+ "description": "The action ID to perform"
+ },
+ "actionStatus": {
+ "description": "The status of the action that was performed by the agent",
+ "type": "string"
+ },
+ "failureReason": {
+ "description": "The reason of the failure of the action. Empty if the action is successful.",
+ "type": "string"
+ }
+ }
+ },
+ "ActionStatus": {
+ "description": "The status of the action that was performed by the agent",
+ "enum": [
+ "Pending",
+ "Completed",
+ "Failed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ActionStatus",
+ "values": [
+ {
+ "value": "Pending",
+ "description": "Actions is pending"
+ },
+ {
+ "value": "Completed",
+ "description": "The action is completed successfully."
+ },
+ {
+ "value": "Failed",
+ "description": "The action failed."
+ }
+ ]
+ }
+ },
+ "SapAuthenticationType": {
+ "description": "Types of authentication to SAP.",
+ "enum": [
+ "UsernamePassword",
+ "Snc",
+ "SncWithUsernamePassword"
+ ],
+ "type": "string",
+ "example": "UsernamePassword",
+ "x-ms-enum": {
+ "name": "SapAuthenticationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "UsernamePassword"
+ },
+ {
+ "value": "Snc"
+ },
+ {
+ "value": "SncWithUsernamePassword"
+ }
+ ]
+ }
+ },
+ "ConfigurationType": {
+ "description": "Represents the types of configuration for a system.",
+ "enum": [
+ "SAP"
+ ],
+ "type": "string",
+ "example": "SAP",
+ "x-ms-enum": {
+ "name": "ConfigurationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "SAP"
+ }
+ ]
+ }
+ },
+ "HttpsConfigurationType": {
+ "description": "Represents the types of HTTPS configuration to connect to the SapControl service.",
+ "enum": [
+ "HttpOnly",
+ "HttpsWithSslVerification",
+ "HttpsWithoutSslVerification"
+ ],
+ "type": "string",
+ "example": "HttpOnly",
+ "x-ms-enum": {
+ "name": "HttpsConfigurationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "HttpOnly"
+ },
+ {
+ "value": "HttpsWithSslVerification"
+ },
+ {
+ "value": "HttpsWithoutSslVerification"
+ }
+ ]
+ }
+ },
+ "IngestionType": {
+ "description": "Types of ingestion.",
+ "enum": [
+ "Full",
+ "Incremental"
+ ],
+ "type": "string",
+ "example": "Full",
+ "x-ms-enum": {
+ "name": "IngestionType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Full"
+ },
+ {
+ "value": "Incremental"
+ }
+ ]
+ }
+ },
+ "Log": {
+ "description": "Describes a log.",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/LogType"
+ },
+ "ingestionType": {
+ "$ref": "#/definitions/IngestionType"
+ },
+ "status": {
+ "$ref": "#/definitions/LogStatusType"
+ },
+ "scheduleInterval": {
+ "format": "int32",
+ "description": "The schedule interval in seconds.",
+ "type": "integer"
+ },
+ "bulkSize": {
+ "format": "int32",
+ "description": "The bulk size for the log.",
+ "type": "integer"
+ },
+ "filters": {
+ "description": "The filters for the log.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "LogStatusType": {
+ "description": "Types of log status.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "example": "Enabled",
+ "x-ms-enum": {
+ "name": "LogStatusType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Enabled"
+ },
+ {
+ "value": "Disabled"
+ }
+ ]
+ }
+ },
+ "LogType": {
+ "description": "Types of logs and tables.",
+ "enum": [
+ "AbapAuditLog",
+ "AbapJobLog",
+ "AbapSpoolLog",
+ "AbapSpoolOutputLog",
+ "AbapChangeDocsLog",
+ "AbapAppLog",
+ "AbapWorkflowLog",
+ "AbapCrLog",
+ "AbapTableDataLog",
+ "AbapFilesLogs",
+ "JavaFilesLogs",
+ "AGRTCODES",
+ "USR01",
+ "USR02",
+ "AGR1251",
+ "AGRUSERS",
+ "AGRPROF",
+ "UST04",
+ "USR21",
+ "ADR6",
+ "ADCP",
+ "USR05",
+ "USGRPUSER",
+ "USERADDR",
+ "DEVACCESS",
+ "AGRDEFINE",
+ "PAHI",
+ "AGRAGRS",
+ "USRSTAMP",
+ "AGRFLAGS",
+ "SNCSYSACL",
+ "USRACL"
+ ],
+ "type": "string",
+ "example": "AbapAuditLog",
+ "x-ms-enum": {
+ "name": "LogType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "AbapAuditLog"
+ },
+ {
+ "value": "AbapJobLog"
+ },
+ {
+ "value": "AbapSpoolLog"
+ },
+ {
+ "value": "AbapSpoolOutputLog"
+ },
+ {
+ "value": "AbapChangeDocsLog"
+ },
+ {
+ "value": "AbapAppLog"
+ },
+ {
+ "value": "AbapWorkflowLog"
+ },
+ {
+ "value": "AbapCrLog"
+ },
+ {
+ "value": "AbapTableDataLog"
+ },
+ {
+ "value": "AbapFilesLogs"
+ },
+ {
+ "value": "JavaFilesLogs"
+ },
+ {
+ "value": "AGRTCODES"
+ },
+ {
+ "value": "USR01"
+ },
+ {
+ "value": "USR02"
+ },
+ {
+ "value": "AGR1251"
+ },
+ {
+ "value": "AGRUSERS"
+ },
+ {
+ "value": "AGRPROF"
+ },
+ {
+ "value": "UST04"
+ },
+ {
+ "value": "USR21"
+ },
+ {
+ "value": "ADR6"
+ },
+ {
+ "value": "ADCP"
+ },
+ {
+ "value": "USR05"
+ },
+ {
+ "value": "USGRPUSER"
+ },
+ {
+ "value": "USERADDR"
+ },
+ {
+ "value": "DEVACCESS"
+ },
+ {
+ "value": "AGRDEFINE"
+ },
+ {
+ "value": "PAHI"
+ },
+ {
+ "value": "AGRAGRS"
+ },
+ {
+ "value": "USRSTAMP"
+ },
+ {
+ "value": "AGRFLAGS"
+ },
+ {
+ "value": "SNCSYSACL"
+ },
+ {
+ "value": "USRACL"
+ }
+ ]
+ }
+ },
+ "RfcConnector": {
+ "description": "Describes the Rfc connector.",
+ "required": [
+ "client",
+ "systemId",
+ "systemNumber",
+ "type"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SystemsConfigurationConnector"
+ }
+ ],
+ "properties": {
+ "abapServerHost": {
+ "description": "FQDN, hostname, or IP address of the ABAP server.",
+ "type": "string"
+ },
+ "messageServerHost": {
+ "description": "FQDN, hostname, or IP address of the Message server.",
+ "type": "string"
+ },
+ "group": {
+ "description": "Logon group of the message server.",
+ "type": "string"
+ },
+ "messageServerService": {
+ "description": "Port number, or service name (from /etc/services) of the message server.",
+ "type": "string"
+ },
+ "sncQop": {
+ "description": "SNC QOP.\r\nOptions are 1, 2, 3, 8, 9.",
+ "pattern": "^[1,2,3,8,9]$",
+ "type": "string"
+ },
+ "codePage": {
+ "description": "The SAP code page used for character encoding.\r\nExample - 1100",
+ "pattern": "^(?:[a-zA-Z0-9]{4}|UTF-8)$",
+ "type": "string"
+ },
+ "systemNumber": {
+ "description": "System number of the ABAP server.",
+ "minLength": 1,
+ "pattern": "^\\d{1,3}$",
+ "type": "string"
+ },
+ "systemId": {
+ "description": "System ID of the ABAP server.\r\nExample - A4H",
+ "minLength": 1,
+ "pattern": "^[a-zA-Z0-9]{3}$",
+ "type": "string"
+ },
+ "client": {
+ "description": "Client number of the ABAP server.\r\nExample - 001",
+ "minLength": 1,
+ "pattern": "^[0-9]{3}$",
+ "type": "string"
+ },
+ "authenticationType": {
+ "description": "The authentication type to SAP.",
+ "$ref": "#/definitions/SapAuthenticationType"
+ },
+ "type": {
+ "$ref": "#/definitions/SystemConfigurationConnectorType"
+ }
+ },
+ "x-ms-discriminator-value": "Rfc"
+ },
+ "SapControlConnector": {
+ "description": "Describes the SapControl connector configuration.",
+ "required": [
+ "instance",
+ "server",
+ "type"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SystemsConfigurationConnector"
+ }
+ ],
+ "properties": {
+ "server": {
+ "description": "The server name.\r\nFQDN or IP address.",
+ "minLength": 1,
+ "pattern": "^([a-zA-Z0-9]+(-[a-zA-Z0-9]+)*\\.)+[a-zA-Z]{2,}$|^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}$",
+ "type": "string"
+ },
+ "instance": {
+ "description": "The instance number. Only 2 digits are allowed.",
+ "minLength": 1,
+ "pattern": "^\\d{2}$",
+ "type": "string"
+ },
+ "timezone": {
+ "description": "The timezone.\r\nexample: \"GMT+0\" or \"GMT-8\"\r\ndefault: \"GMT+0\"",
+ "default": "GMT+0",
+ "pattern": "^GMT[+-]\\d+$",
+ "type": "string"
+ },
+ "port": {
+ "description": "The port of the SOAP connection to SAP Control.",
+ "pattern": "^\\d{1,5}$",
+ "type": "string"
+ },
+ "httpsConfiguration": {
+ "$ref": "#/definitions/HttpsConfigurationType"
+ },
+ "type": {
+ "$ref": "#/definitions/SystemConfigurationConnectorType"
+ }
+ },
+ "x-ms-discriminator-value": "SapControl"
+ },
+ "SapSystemsConfiguration": {
+ "description": "Describes the SAP configuration.",
+ "required": [
+ "connector",
+ "type"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SystemsConfiguration"
+ }
+ ],
+ "properties": {
+ "azureResourceId": {
+ "description": "azure resource id\r\nexample: \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM\"",
+ "pattern": "^\\/?subscriptions\\/([^\\/]+)\\/resourceGroups\\/([^\\/]+)\\/providers\\/([^\\/]+)\\/([^\\/]+)\\/([^\\/]+)$",
+ "type": "string"
+ },
+ "connector": {
+ "$ref": "#/definitions/SystemsConfigurationConnector"
+ },
+ "logs": {
+ "description": "The logs configuration.",
+ "type": "array",
+ "x-ms-identifiers": [],
+ "items": {
+ "$ref": "#/definitions/Log"
+ }
+ },
+ "type": {
+ "$ref": "#/definitions/ConfigurationType"
+ }
+ },
+ "x-ms-discriminator-value": "SAP"
+ },
+ "SystemResource": {
+ "description": "Describes the system within the agent.",
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/SystemProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "SystemConfigurationConnectorType": {
+ "description": "Represents the types of SAP systems.",
+ "enum": [
+ "Rfc",
+ "SapControl"
+ ],
+ "type": "string",
+ "example": "Rfc",
+ "x-ms-enum": {
+ "name": "SystemConfigurationConnectorType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Rfc"
+ },
+ {
+ "value": "SapControl"
+ }
+ ]
+ }
+ },
+ "SystemProperties": {
+ "description": "The properties of the system.",
+ "required": [
+ "configuration",
+ "displayName"
+ ],
+ "type": "object",
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/SystemStatusType"
+ },
+ "configuration": {
+ "$ref": "#/definitions/SystemsConfiguration"
+ },
+ "displayName": {
+ "minLength": 1,
+ "type": "string"
+ },
+ "lastModifiedTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SystemStatusType": {
+ "description": "The status of the system.",
+ "enum": [
+ "Running",
+ "Stopped"
+ ],
+ "type": "string",
+ "example": "Running",
+ "x-ms-enum": {
+ "name": "SystemStatusType",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Running"
+ },
+ {
+ "value": "Stopped"
+ }
+ ]
+ }
+ },
+ "SystemsConfiguration": {
+ "description": "The configuration of the system.",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/ConfigurationType"
+ }
+ },
+ "discriminator": "type"
+ },
+ "SystemsConfigurationConnector": {
+ "description": "Base Model for SAP System Connector.",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "$ref": "#/definitions/SystemConfigurationConnectorType"
+ }
+ },
+ "discriminator": "type"
+ },
+ "SystemsList": {
+ "description": "List of Agent's Systems.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SystemResource"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "BusinessApplicationAgentResource": {
+ "name": "businessApplicationAgentResource",
+ "description": "The Business Application Agent Resource",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/BusinessApplicationAgentResource"
+ }
+ },
+ "BusinessApplicationAgentId": {
+ "in": "path",
+ "name": "businessApplicationAgentId",
+ "description": "BusinessApplicationAgent ID",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "SystemResource": {
+ "name": "systemResource",
+ "description": "The system resource",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/SystemResource"
+ }
+ },
+ "SystemId": {
+ "in": "path",
+ "name": "systemId",
+ "description": "System ID",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ },
+ "description": "Azure Active Directory OAuth2 Flow"
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "tags": [
+ {
+ "name": "BusinessApplicationAgents",
+ "description": "Controller that handles requests forwarded from ASI RP for agents resources CRUD ARM APIs."
+ },
+ {
+ "name": "Systems",
+ "description": "Controller that handles requests forwarded from ASI RP for systems resources CRUD ARM APIs."
+ }
+ ],
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentPackages.json
new file mode 100644
index 000000000000..74241286a8ae
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentPackages.json
@@ -0,0 +1,319 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentPackages": {
+ "get": {
+ "x-ms-examples": {
+ "Get all available packages.": {
+ "$ref": "./examples/contentPackages/GetPackages.json"
+ }
+ },
+ "tags": [
+ "ContentPackages"
+ ],
+ "description": "Gets all installed packages.",
+ "operationId": "ContentPackages_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSearch"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataCount"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkip"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/packageList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentPackages/{packageId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get installed packages by id.": {
+ "$ref": "./examples/contentPackages/GetPackageById.json"
+ }
+ },
+ "tags": [
+ "ContentPackages"
+ ],
+ "description": "Gets an installed packages by its id.",
+ "operationId": "ContentPackages_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/PackageIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/packageModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Install a package to the workspace.": {
+ "$ref": "./examples/contentPackages/InstallPackage.json"
+ }
+ },
+ "tags": [
+ "ContentPackages"
+ ],
+ "description": "Install a package to the workspace.",
+ "operationId": "ContentPackage_Install",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/PackageIdParameter"
+ },
+ {
+ "$ref": "#/parameters/PackageInstallationProperties"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, a package is updated.",
+ "schema": {
+ "$ref": "#/definitions/packageModel"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/packageModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Uninstall a package from the workspace.": {
+ "$ref": "./examples/contentPackages/UninstallPackage.json"
+ }
+ },
+ "tags": [
+ "ContentPackages"
+ ],
+ "description": "Uninstall a package from the workspace.",
+ "operationId": "ContentPackage_Uninstall",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/PackageIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "packageList": {
+ "description": "List available packages.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of packages.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of packages.",
+ "items": {
+ "$ref": "#/definitions/packageModel"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "packageModel": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Package in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "description": "package properties",
+ "$ref": "#/definitions/packageProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "packageProperties": {
+ "description": "Describes package properties",
+ "allOf": [
+ {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/packageBaseProperties"
+ }
+ ],
+ "required": [
+ "contentId",
+ "contentProductId",
+ "contentKind",
+ "version",
+ "displayName"
+ ],
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "PackageIdParameter": {
+ "description": "package Id",
+ "in": "path",
+ "name": "packageId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "PackageInstallationProperties": {
+ "description": "Package installation properties",
+ "in": "body",
+ "name": "packageInstallationProperties",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/packageModel"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductPackages.json
new file mode 100644
index 000000000000..7b1b750652e7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductPackages.json
@@ -0,0 +1,235 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentProductPackages": {
+ "get": {
+ "x-ms-examples": {
+ "Get all available packages.": {
+ "$ref": "./examples/contentPackages/GetProductPackages.json"
+ }
+ },
+ "tags": [
+ "ContentProductPackages"
+ ],
+ "description": "Gets all packages from the catalog.\nExpandable properties:\n- properties/installed\n- properties/packagedContent",
+ "operationId": "ProductPackages_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSearch"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/productPackageList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentProductPackages/{packageId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a package.": {
+ "$ref": "./examples/contentPackages/GetProductPackageById.json"
+ }
+ },
+ "tags": [
+ "ContentProductPackages"
+ ],
+ "description": "Gets a package by its identifier from the catalog.",
+ "operationId": "ProductPackage_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/PackageIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/productPackageModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "productPackageList": {
+ "description": "List available packages.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of packages.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of packages.",
+ "items": {
+ "$ref": "#/definitions/productPackageModel"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "productPackageModel": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Package in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "description": "package properties",
+ "$ref": "#/definitions/productPackageProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "productPackageProperties": {
+ "description": "Describes package properties",
+ "allOf": [
+ {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/packageBaseProperties",
+ "description": "The content id of the package"
+ },
+ {
+ "$ref": "#/definitions/productPackageAdditionalProperties",
+ "description": "The package kind"
+ }
+ ],
+ "required": [
+ "contentId",
+ "contentKind",
+ "version",
+ "displayName"
+ ],
+ "type": "object"
+ },
+ "productPackageAdditionalProperties": {
+ "description": "product package additional properties",
+ "properties": {
+ "installedVersion": {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/metadataVersion",
+ "description": "The version of the installed package, null or absent means not installed."
+ },
+ "metadataResourceId": {
+ "description": "The metadata resource id.",
+ "type": "string",
+ "format": "arm-id"
+ },
+ "packagedContent": {
+ "$ref": "#/definitions/packagedContent",
+ "description": "The json of the ARM template to deploy. Expandable."
+ }
+ },
+ "type": "object"
+ },
+ "packagedContent": {
+ "type": "object",
+ "description": "The json of the ARM template to deploy"
+ }
+ },
+ "parameters": {
+ "PackageIdParameter": {
+ "description": "package Id",
+ "in": "path",
+ "name": "packageId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductTemplates.json
new file mode 100644
index 000000000000..318f5fde9143
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductTemplates.json
@@ -0,0 +1,226 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentProductTemplates": {
+ "get": {
+ "x-ms-examples": {
+ "Get all installed templates.": {
+ "$ref": "./examples/contentTemplates/GetProductTemplates.json"
+ }
+ },
+ "tags": [
+ "ContentProductTemplates"
+ ],
+ "description": "Gets all templates in the catalog.",
+ "operationId": "ProductTemplates_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSearch"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataCount"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkip"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/productTemplateList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentproducttemplates/{templateId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a template.": {
+ "$ref": "./examples/contentTemplates/GetProductTemplateById.json"
+ }
+ },
+ "tags": [
+ "ContentProductTemplates"
+ ],
+ "description": "Gets a template by its identifier.",
+ "operationId": "ProductTemplate_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/templateIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/productTemplateModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "productTemplateList": {
+ "description": "List of all the template.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Array of templates.",
+ "items": {
+ "$ref": "#/definitions/productTemplateModel"
+ },
+ "type": "array"
+ },
+ "nextLink": {
+ "description": "URL to fetch the next page of template.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "productTemplateModel": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Template resource definition.",
+ "properties": {
+ "properties": {
+ "description": "template properties",
+ "$ref": "#/definitions/productTemplateProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "productTemplateProperties": {
+ "allOf": [
+ {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/templateBaseProperties"
+ },
+ {
+ "$ref": "#/definitions/productTemplateAdditionalProperties"
+ }
+ ],
+ "description": "Template property bag.",
+ "required": [
+ "contentId",
+ "version",
+ "displayName",
+ "contentKind",
+ "source"
+ ]
+ },
+ "productTemplateAdditionalProperties": {
+ "description": "additional properties of product template.",
+ "type": "object",
+ "properties": {
+ "packagedContent": {
+ "type": "object",
+ "description": "The json of the ARM template to deploy"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "templateIdParameter": {
+ "description": "template Id",
+ "in": "path",
+ "name": "templateId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentTemplates.json
new file mode 100644
index 000000000000..c9f191ede5fa
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentTemplates.json
@@ -0,0 +1,353 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentTemplates": {
+ "get": {
+ "x-ms-examples": {
+ "Get all installed templates.": {
+ "$ref": "./examples/contentTemplates/GetTemplates.json"
+ }
+ },
+ "tags": [
+ "ContentTemplates"
+ ],
+ "description": "Gets all installed templates.\nExpandable properties:\n- properties/mainTemplate\n- properties/dependantTemplates",
+ "operationId": "ContentTemplates_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataExpand"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSearch"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataCount"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkip"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/templateList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/contentTemplates/{templateId}": {
+ "put": {
+ "x-ms-examples": {
+ "Get a template.": {
+ "$ref": "./examples/contentTemplates/InstallTemplate.json"
+ }
+ },
+ "tags": [
+ "ContentTemplates"
+ ],
+ "description": "Install a template.",
+ "operationId": "ContentTemplate_Install",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/templateIdParameter"
+ },
+ {
+ "$ref": "#/parameters/templateInstallationProperties"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, a template is updated.",
+ "schema": {
+ "$ref": "#/definitions/templateModel"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/templateModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "get": {
+ "x-ms-examples": {
+ "Get a template.": {
+ "$ref": "./examples/contentTemplates/GetTemplateById.json"
+ }
+ },
+ "tags": [
+ "ContentTemplates"
+ ],
+ "description": "Gets a template byt its identifier.\nExpandable properties:\n- properties/mainTemplate\n- properties/dependantTemplates",
+ "operationId": "ContentTemplate_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/templateIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/templateModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete metadata.": {
+ "$ref": "./examples/contentTemplates/DeleteTemplate.json"
+ }
+ },
+ "tags": [
+ "ContentTemplates"
+ ],
+ "description": "Delete an installed template.",
+ "operationId": "ContentTemplate_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/templateIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "templateList": {
+ "description": "List of all the template.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Array of templates.",
+ "items": {
+ "$ref": "#/definitions/templateModel"
+ },
+ "type": "array"
+ },
+ "nextLink": {
+ "description": "URL to fetch the next page of template.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "templateModel": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Template resource definition.",
+ "properties": {
+ "properties": {
+ "description": "template properties",
+ "$ref": "#/definitions/templateProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "templateProperties": {
+ "allOf": [
+ {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/templateBaseProperties"
+ },
+ {
+ "$ref": "#/definitions/templateAdditionalProperties"
+ }
+ ],
+ "description": "Template property bag.",
+ "required": [
+ "contentId",
+ "version",
+ "displayName",
+ "contentKind",
+ "source",
+ "packageId",
+ "packageVersion",
+ "contentProductId"
+ ],
+ "type": "object"
+ },
+ "templateAdditionalProperties": {
+ "description": "additional properties of product template.",
+ "type": "object",
+ "properties": {
+ "mainTemplate": {
+ "$ref": "#/definitions/mainTemplate",
+ "description": "The JSON of the ARM template to deploy active content. Expandable."
+ },
+ "dependantTemplates": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/templateProperties"
+ },
+ "description": "Dependant templates. Expandable.",
+ "readOnly": true,
+ "x-ms-identifiers": [
+ "contentId"
+ ]
+ }
+ }
+ },
+ "mainTemplate": {
+ "description": "The JSON of the ARM template to deploy active content",
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "templateIdParameter": {
+ "description": "template Id",
+ "in": "path",
+ "name": "templateId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "templateInstallationProperties": {
+ "description": "Template installation properties",
+ "in": "body",
+ "name": "templateInstallationProperties",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/templateModel"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EnrichmentWithWorkspace.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EnrichmentWithWorkspace.json
new file mode 100644
index 000000000000..aef8eae6cc2b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EnrichmentWithWorkspace.json
@@ -0,0 +1,443 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/enrichment/{enrichmentType}/listGeodataByIp": {
+ "post": {
+ "x-ms-examples": {
+ "Get geodata for a single IP address": {
+ "$ref": "./examples/enrichment/GetGeodataWithWorkspaceByIp.json"
+ }
+ },
+ "tags": [
+ "Enrichment"
+ ],
+ "description": "Get geodata for a single IP address",
+ "operationId": "ListGeodataByIp",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EnrichmentType"
+ },
+ {
+ "$ref": "#/parameters/EnrichmentIpAddressBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EnrichmentIpGeodata"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to enrich this ip.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/enrichment/{enrichmentType}/listWhoisByDomain": {
+ "post": {
+ "x-ms-examples": {
+ "Get whois information for a single domain name": {
+ "$ref": "./examples/enrichment/GetWhoisWithWorkspaceByDomainName.json"
+ }
+ },
+ "tags": [
+ "Enrichment"
+ ],
+ "description": "Get whois information for a single domain name",
+ "operationId": "ListWhoisByDomain",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EnrichmentType"
+ },
+ {
+ "$ref": "#/parameters/EnrichmentDomainBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EnrichmentDomainWhois"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to enrich this domain.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "EnrichmentIpAddressBody": {
+ "description": "IP address (v4 or v6) to be enriched",
+ "in": "body",
+ "name": "ipAddressBody",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EnrichmentIpAddressBody"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "EnrichmentDomainBody": {
+ "description": "Domain name to be enriched. Only domain name is accepted",
+ "in": "body",
+ "name": "domainBody",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EnrichmentDomainBody"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "EnrichmentType": {
+ "description": "Enrichment type",
+ "in": "path",
+ "name": "enrichmentType",
+ "required": true,
+ "enum": [
+ "main"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EnrichmentType",
+ "values": [
+ {
+ "value": "main"
+ }
+ ]
+ },
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "EnrichmentIpAddressBody": {
+ "description": "IP address (v4 or v6) to be enriched",
+ "properties": {
+ "ipAddress": {
+ "description": "The dotted-decimal or colon-separated string representation of the IP address",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentDomainBody": {
+ "description": "Domain name to be enriched",
+ "properties": {
+ "domain": {
+ "description": "The domain name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentDomainWhois": {
+ "description": "Whois information for a given domain and associated metadata",
+ "properties": {
+ "domain": {
+ "description": "The domain for this whois record",
+ "type": "string"
+ },
+ "server": {
+ "description": "The hostname of this registrar's whois server",
+ "type": "string"
+ },
+ "created": {
+ "description": "The timestamp at which this record was created",
+ "format": "date-time",
+ "type": "string"
+ },
+ "updated": {
+ "description": "The timestamp at which this record was last updated",
+ "format": "date-time",
+ "type": "string"
+ },
+ "expires": {
+ "description": "The timestamp at which this record will expire",
+ "format": "date-time",
+ "type": "string"
+ },
+ "parsedWhois": {
+ "description": "The whois record for a given domain",
+ "$ref": "#/definitions/EnrichmentDomainWhoisDetails"
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentDomainWhoisDetails": {
+ "description": "The whois record for a given domain",
+ "properties": {
+ "registrar": {
+ "description": "The registrar associated with this domain",
+ "$ref": "#/definitions/EnrichmentDomainWhoisRegistrarDetails"
+ },
+ "contacts": {
+ "description": "The set of contacts associated with this domain",
+ "$ref": "#/definitions/EnrichmentDomainWhoisContacts"
+ },
+ "nameServers": {
+ "description": "A list of name servers associated with this domain",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "statuses": {
+ "description": "The set of status flags for this whois record",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentDomainWhoisRegistrarDetails": {
+ "description": "The registrar associated with this domain",
+ "properties": {
+ "name": {
+ "description": "The name of this registrar",
+ "type": "string"
+ },
+ "abuseContactEmail": {
+ "description": "This registrar's abuse contact email",
+ "type": "string"
+ },
+ "abuseContactPhone": {
+ "description": "This registrar's abuse contact phone number",
+ "type": "string"
+ },
+ "ianaId": {
+ "description": "This registrar's Internet Assigned Numbers Authority id",
+ "type": "string"
+ },
+ "url": {
+ "description": "This registrar's URL",
+ "type": "string"
+ },
+ "whoisServer": {
+ "description": "The hostname of this registrar's whois server",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentDomainWhoisContacts": {
+ "description": "The set of contacts associated with this domain",
+ "properties": {
+ "admin": {
+ "description": "The admin contact for this whois record",
+ "$ref": "#/definitions/EnrichmentDomainWhoisContact"
+ },
+ "billing": {
+ "description": "The billing contact for this whois record",
+ "$ref": "#/definitions/EnrichmentDomainWhoisContact"
+ },
+ "registrant": {
+ "description": "The registrant contact for this whois record",
+ "$ref": "#/definitions/EnrichmentDomainWhoisContact"
+ },
+ "tech": {
+ "description": "The technical contact for this whois record",
+ "$ref": "#/definitions/EnrichmentDomainWhoisContact"
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentDomainWhoisContact": {
+ "description": "An individual contact associated with this domain",
+ "properties": {
+ "name": {
+ "description": "The name of this contact",
+ "type": "string"
+ },
+ "org": {
+ "description": "The organization for this contact",
+ "type": "string"
+ },
+ "street": {
+ "description": "A list describing the street address for this contact",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "city": {
+ "description": "The city for this contact",
+ "type": "string"
+ },
+ "state": {
+ "description": "The state for this contact",
+ "type": "string"
+ },
+ "postal": {
+ "description": "The postal code for this contact",
+ "type": "string"
+ },
+ "country": {
+ "description": "The country for this contact",
+ "type": "string"
+ },
+ "phone": {
+ "description": "The phone number for this contact",
+ "type": "string"
+ },
+ "fax": {
+ "description": "The fax number for this contact",
+ "type": "string"
+ },
+ "email": {
+ "description": "The email address for this contact",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "EnrichmentIpGeodata": {
+ "description": "Geodata information for a given IP address",
+ "properties": {
+ "asn": {
+ "description": "The autonomous system number associated with this IP address",
+ "type": "string"
+ },
+ "carrier": {
+ "description": "The name of the carrier for this IP address",
+ "type": "string"
+ },
+ "city": {
+ "description": "The city this IP address is located in",
+ "type": "string"
+ },
+ "cityConfidenceFactor": {
+ "description": "A numeric rating of confidence that the value in the 'city' field is correct, on a scale of 0-100",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "continent": {
+ "description": "The continent this IP address is located on",
+ "type": "string"
+ },
+ "country": {
+ "description": "The county this IP address is located in",
+ "type": "string"
+ },
+ "countryConfidenceFactor": {
+ "description": "A numeric rating of confidence that the value in the 'country' field is correct on a scale of 0-100",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "ipAddr": {
+ "description": "The dotted-decimal or colon-separated string representation of the IP address",
+ "type": "string"
+ },
+ "ipRoutingType": {
+ "description": "A description of the connection type of this IP address",
+ "type": "string"
+ },
+ "latitude": {
+ "description": "The latitude of this IP address",
+ "type": "string"
+ },
+ "longitude": {
+ "description": "The longitude of this IP address",
+ "type": "string"
+ },
+ "organization": {
+ "description": "The name of the organization for this IP address",
+ "type": "string"
+ },
+ "organizationType": {
+ "description": "The type of the organization for this IP address",
+ "type": "string"
+ },
+ "region": {
+ "description": "The geographic region this IP address is located in",
+ "type": "string"
+ },
+ "state": {
+ "description": "The state this IP address is located in",
+ "type": "string"
+ },
+ "stateConfidenceFactor": {
+ "description": "A numeric rating of confidence that the value in the 'state' field is correct on a scale of 0-100",
+ "type": "integer",
+ "format": "int32",
+ "minimum": 0,
+ "maximum": 100
+ },
+ "stateCode": {
+ "description": "The abbreviated name for the state this IP address is located in",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Entities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Entities.json
new file mode 100644
index 000000000000..f9d4c4470d92
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Entities.json
@@ -0,0 +1,1559 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities": {
+ "get": {
+ "x-ms-examples": {
+ "Get all entities.": {
+ "$ref": "./examples/entities/GetEntities.json"
+ }
+ },
+ "tags": [
+ "Entities"
+ ],
+ "description": "Gets all entities.",
+ "operationId": "Entities_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an account entity.": {
+ "$ref": "./examples/entities/GetAccountEntityById.json"
+ },
+ "Get a host entity.": {
+ "$ref": "./examples/entities/GetHostEntityById.json"
+ },
+ "Get a file entity.": {
+ "$ref": "./examples/entities/GetFileEntityById.json"
+ },
+ "Get a security alert entity.": {
+ "$ref": "./examples/entities/GetSecurityAlertEntityById.json"
+ },
+ "Get a file hash entity.": {
+ "$ref": "./examples/entities/GetFileHashEntityById.json"
+ },
+ "Get a malware entity.": {
+ "$ref": "./examples/entities/GetMalwareEntityById.json"
+ },
+ "Get a security group entity.": {
+ "$ref": "./examples/entities/GetSecurityGroupEntityById.json"
+ },
+ "Get an azure resource entity.": {
+ "$ref": "./examples/entities/GetAzureResourceEntityById.json"
+ },
+ "Get a cloud application entity.": {
+ "$ref": "./examples/entities/GetCloudApplicationEntityById.json"
+ },
+ "Get a process entity.": {
+ "$ref": "./examples/entities/GetProcessEntityById.json"
+ },
+ "Get a dns entity.": {
+ "$ref": "./examples/entities/GetDnsEntityById.json"
+ },
+ "Get an ip entity.": {
+ "$ref": "./examples/entities/GetIpEntityById.json"
+ },
+ "Get a registry key entity.": {
+ "$ref": "./examples/entities/GetRegistryKeyEntityById.json"
+ },
+ "Get a registry value entity.": {
+ "$ref": "./examples/entities/GetRegistryValueEntityById.json"
+ },
+ "Get a url entity.": {
+ "$ref": "./examples/entities/GetUrlEntityById.json"
+ },
+ "Get an IoT device entity.": {
+ "$ref": "./examples/entities/GetIoTDeviceEntityById.json"
+ },
+ "Get a mailCluster entity.": {
+ "$ref": "./examples/entities/GetMailClusterEntityById.json"
+ },
+ "Get a mailbox entity.": {
+ "$ref": "./examples/entities/GetMailboxEntityById.json"
+ },
+ "Get a mailMessage entity.": {
+ "$ref": "./examples/entities/GetMailMessageEntityById.json"
+ },
+ "Get a submissionMail entity.": {
+ "$ref": "./examples/entities/GetSubmissionMailEntityById.json"
+ }
+ },
+ "tags": [
+ "Entities"
+ ],
+ "description": "Gets an entity.",
+ "operationId": "Entities_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/EntityTypes.json#/definitions/Entity"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/expand": {
+ "post": {
+ "x-ms-examples": {
+ "Expand an entity": {
+ "$ref": "./examples/entities/expand/PostExpandEntity.json"
+ }
+ },
+ "tags": [
+ "Entities"
+ ],
+ "description": "Expands an entity.",
+ "operationId": "Entities_Expand",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ },
+ {
+ "$ref": "#/parameters/EntityExpandRequestBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityExpandResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/getTimeline": {
+ "post": {
+ "x-ms-examples": {
+ "Entity timeline": {
+ "$ref": "./examples/entities/timeline/PostTimelineEntity.json"
+ }
+ },
+ "tags": [
+ "Entities"
+ ],
+ "description": "Timeline for an entity.",
+ "operationId": "EntitiesGetTimeline_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ },
+ {
+ "$ref": "#/parameters/EntityTimelineRequestBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityTimelineResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/queries": {
+ "get": {
+ "x-ms-examples": {
+ "Get Entity Query": {
+ "$ref": "./examples/entities/GetQueries.json"
+ }
+ },
+ "tags": [
+ "Entities"
+ ],
+ "description": "Get Insights and Activities for an entity.",
+ "operationId": "Entities_Queries",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ },
+ {
+ "$ref": "#/parameters/EntityQueryKindParam"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/GetQueriesResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/getInsights": {
+ "post": {
+ "x-ms-examples": {
+ "Entity Insight": {
+ "$ref": "./examples/entities/insights/PostGetInsights.json"
+ }
+ },
+ "tags": [
+ "Entities"
+ ],
+ "description": "Execute Insights for an entity.",
+ "operationId": "Entities_GetInsights",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ },
+ {
+ "$ref": "#/parameters/GetInsightsEntityQueriesRequestBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityGetInsightsResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/relations": {
+ "get": {
+ "x-ms-examples": {
+ "Get all relations of an entity.": {
+ "$ref": "./examples/entities/relations/GetAllEntityRelations.json"
+ }
+ },
+ "tags": [
+ "EntityRelations"
+ ],
+ "description": "Gets all relations of an entity.",
+ "operationId": "EntitiesRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/RelationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-odata": "./common/RelationTypes.json#/definitions/Relation",
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/relations/{relationName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an entity relation.": {
+ "$ref": "./examples/entities/relations/GetEntityRelationByName.json"
+ }
+ },
+ "tags": [
+ "EntityRelations"
+ ],
+ "description": "Gets an entity relation.",
+ "operationId": "EntityRelations_GetRelation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "EntityExpandRequestBody": {
+ "description": "The parameters required to execute an expand operation on the given entity.",
+ "in": "body",
+ "name": "parameters",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EntityExpandParameters"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "EntityId": {
+ "description": "entity ID",
+ "in": "path",
+ "name": "entityId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "EntityTimelineRequestBody": {
+ "description": "The parameters required to execute an timeline operation on the given entity.",
+ "in": "body",
+ "name": "parameters",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EntityTimelineParameters"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "EntityQueryKindParam": {
+ "description": "The Kind parameter for queries",
+ "in": "query",
+ "name": "kind",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "Insight"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityItemQueryKind",
+ "values": [
+ {
+ "description": "insight",
+ "value": "Insight"
+ }
+ ]
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "GetInsightsEntityQueriesRequestBody": {
+ "description": "The parameters required to execute insights on the given entity.",
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/EntityGetInsightsParameters"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "ActivityTimelineItem": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityTimelineItem"
+ }
+ ],
+ "description": "Represents Activity timeline item.",
+ "properties": {
+ "queryId": {
+ "type": "string",
+ "description": "The activity query id."
+ },
+ "bucketStartTimeUTC": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The grouping bucket start time."
+ },
+ "bucketEndTimeUTC": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The grouping bucket end time."
+ },
+ "firstActivityTimeUTC": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The time of the first activity in the grouping bucket."
+ },
+ "lastActivityTimeUTC": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The time of the last activity in the grouping bucket."
+ },
+ "content": {
+ "type": "string",
+ "description": "The activity timeline content."
+ },
+ "title": {
+ "type": "string",
+ "description": "The activity timeline title."
+ }
+ },
+ "required": [
+ "queryId",
+ "bucketStartTimeUTC",
+ "bucketEndTimeUTC",
+ "firstActivityTimeUTC",
+ "lastActivityTimeUTC",
+ "content",
+ "title"
+ ],
+ "type": "object",
+ "x-ms-discriminator-value": "Activity"
+ },
+ "BookmarkTimelineItem": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityTimelineItem"
+ }
+ ],
+ "description": "Represents bookmark timeline item.",
+ "properties": {
+ "azureResourceId": {
+ "type": "string",
+ "description": "The bookmark azure resource id."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The bookmark display name."
+ },
+ "notes": {
+ "type": "string",
+ "description": "The notes of the bookmark"
+ },
+ "endTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The bookmark end time."
+ },
+ "startTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The bookmark start time."
+ },
+ "eventTime": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The bookmark event time."
+ },
+ "createdBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that created the bookmark"
+ },
+ "labels": {
+ "description": "List of labels relevant to this bookmark",
+ "items": {
+ "$ref": "../../../common/2.0/types.json#/definitions/Label"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "azureResourceId"
+ ],
+ "type": "object",
+ "x-ms-discriminator-value": "Bookmark"
+ },
+ "AnomalyTimelineItem": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityTimelineItem"
+ }
+ ],
+ "description": "Represents anomaly timeline item.",
+ "properties": {
+ "azureResourceId": {
+ "type": "string",
+ "description": "The anomaly azure resource id."
+ },
+ "productName": {
+ "type": "string",
+ "description": "The anomaly product name."
+ },
+ "description": {
+ "type": "string",
+ "description": "The anomaly description."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The anomaly name."
+ },
+ "endTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The anomaly end time."
+ },
+ "startTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The anomaly start time."
+ },
+ "timeGenerated": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The anomaly generated time."
+ },
+ "vendor": {
+ "type": "string",
+ "description": "The name of the anomaly vendor."
+ },
+ "intent": {
+ "type": "string",
+ "description": "The intent of the anomaly."
+ },
+ "techniques": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "technique of the anomaly"
+ },
+ "description": "The techniques of the anomaly."
+ },
+ "reasons": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "Reason of the anomaly"
+ },
+ "description": "The reasons that cause the anomaly."
+ }
+ },
+ "required": [
+ "azureResourceId",
+ "displayName",
+ "endTimeUtc",
+ "startTimeUtc",
+ "timeGenerated"
+ ],
+ "type": "object",
+ "x-ms-discriminator-value": "Anomaly"
+ },
+ "EntityGetInsightsParameters": {
+ "description": "The parameters required to execute insights operation on the given entity.",
+ "type": "object",
+ "properties": {
+ "startTime": {
+ "description": "The start timeline date, so the results returned are after this date.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "endTime": {
+ "description": "The end timeline date, so the results returned are before this date.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "addDefaultExtendedTimeRange": {
+ "description": "Indicates if query time range should be extended with default time range of the query. Default value is false",
+ "type": "boolean"
+ },
+ "insightQueryIds": {
+ "description": "List of Insights Query Id. If empty, default value is all insights of this entity",
+ "type": "array",
+ "items": {
+ "description": "Insight Query Id (GUID)",
+ "format": "uuid",
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "startTime",
+ "endTime"
+ ]
+ },
+ "EntityGetInsightsResponse": {
+ "description": "The Get Insights result operation response.",
+ "properties": {
+ "metaData": {
+ "$ref": "#/definitions/GetInsightsResultsMetadata",
+ "description": "The metadata from the get insights operation results."
+ },
+ "value": {
+ "description": "The insights result values.",
+ "items": {
+ "$ref": "#/definitions/EntityInsightItem"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "EntityEdges": {
+ "description": "The edge that connects the entity to the other entity.",
+ "properties": {
+ "targetEntityId": {
+ "description": "The target entity Id.",
+ "type": "string"
+ },
+ "additionalData": {
+ "additionalProperties": true,
+ "description": "A bag of custom fields that should be part of the entity and will be presented to the user.",
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "EntityExpandParameters": {
+ "description": "The parameters required to execute an expand operation on the given entity.",
+ "properties": {
+ "endTime": {
+ "description": "The end date filter, so the only expansion results returned are before this date.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "expansionId": {
+ "description": "The Id of the expansion to perform.",
+ "format": "uuid",
+ "type": "string"
+ },
+ "startTime": {
+ "description": "The start date filter, so the only expansion results returned are after this date.",
+ "format": "date-time",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "EntityExpandResponse": {
+ "description": "The entity expansion result operation response.",
+ "properties": {
+ "metaData": {
+ "$ref": "./common/EntityTypes.json#/definitions/ExpansionResultsMetadata",
+ "description": "The metadata from the expansion operation results."
+ },
+ "value": {
+ "description": "The expansion result values.",
+ "properties": {
+ "entities": {
+ "description": "Array of the expansion result entities.",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/Entity"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "edges": {
+ "description": "Array of edges that connects the entity to the list of entities.",
+ "items": {
+ "$ref": "#/definitions/EntityEdges"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "EntityInsightItem": {
+ "description": "Entity insight Item.",
+ "type": "object",
+ "properties": {
+ "queryId": {
+ "type": "string",
+ "description": "The query id of the insight"
+ },
+ "queryTimeInterval": {
+ "type": "object",
+ "description": "The Time interval that the query actually executed on.",
+ "properties": {
+ "startTime": {
+ "format": "date-time",
+ "type": "string",
+ "description": "Insight query start time"
+ },
+ "endTime": {
+ "format": "date-time",
+ "type": "string",
+ "description": "Insight query end time"
+ }
+ }
+ },
+ "tableQueryResults": {
+ "$ref": "#/definitions/InsightsTableResult",
+ "description": "Query results for table insights query."
+ },
+ "chartQueryResults": {
+ "type": "array",
+ "description": "Query results for table insights query.",
+ "items": {
+ "$ref": "#/definitions/InsightsTableResult",
+ "description": "Query results for table insights query."
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "EntityList": {
+ "description": "List of all the entities.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of entities.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of entities.",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/Entity"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "EntityTimelineItem": {
+ "description": "Entity timeline Item.",
+ "discriminator": "kind",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/EntityTimelineKind",
+ "description": "The entity query kind type."
+ }
+ },
+ "required": [
+ "kind"
+ ]
+ },
+ "EntityTimelineResponse": {
+ "description": "The entity timeline result operation response.",
+ "properties": {
+ "metaData": {
+ "$ref": "#/definitions/TimelineResultsMetadata",
+ "description": "The metadata from the timeline operation results."
+ },
+ "value": {
+ "description": "The timeline result values.",
+ "items": {
+ "$ref": "#/definitions/EntityTimelineItem"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "EntityTimelineKind": {
+ "description": "The entity query kind",
+ "enum": [
+ "Activity",
+ "Bookmark",
+ "SecurityAlert",
+ "Anomaly"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityTimelineKind",
+ "values": [
+ {
+ "description": "activity",
+ "value": "Activity"
+ },
+ {
+ "description": "bookmarks",
+ "value": "Bookmark"
+ },
+ {
+ "description": "security alerts",
+ "value": "SecurityAlert"
+ },
+ {
+ "description": "anomaly",
+ "value": "Anomaly"
+ }
+ ]
+ }
+ },
+ "EntityTimelineParameters": {
+ "description": "The parameters required to execute s timeline operation on the given entity.",
+ "properties": {
+ "kinds": {
+ "description": "Array of timeline Item kinds.",
+ "items": {
+ "$ref": "#/definitions/EntityTimelineKind"
+ },
+ "type": "array"
+ },
+ "startTime": {
+ "description": "The start timeline date, so the results returned are after this date.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "endTime": {
+ "description": "The end timeline date, so the results returned are before this date.",
+ "format": "date-time",
+ "type": "string"
+ },
+ "numberOfBucket": {
+ "description": "The number of bucket for timeline queries aggregation.",
+ "type": "integer",
+ "format": "int32"
+ }
+ },
+ "type": "object",
+ "required": [
+ "startTime",
+ "endTime"
+ ]
+ },
+ "EntityQueryItem": {
+ "description": "An abstract Query item for entity",
+ "type": "object",
+ "discriminator": "kind",
+ "properties": {
+ "id": {
+ "description": "Query Template ARM ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Query Template ARM Name",
+ "type": "string"
+ },
+ "type": {
+ "description": "ARM Type",
+ "type": "string"
+ },
+ "kind": {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityQueryKind",
+ "description": "The kind of the entity query"
+ }
+ },
+ "required": [
+ "kind"
+ ]
+ },
+ "EntityQueryItemProperties": {
+ "description": "An properties abstract Query item for entity",
+ "type": "object",
+ "properties": {
+ "dataTypes": {
+ "description": "Data types for template",
+ "type": "array",
+ "items": {
+ "properties": {
+ "dataType": {
+ "description": "Data type name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "x-ms-identifiers": []
+ },
+ "inputEntityType": {
+ "description": "The type of the entity",
+ "$ref": "./common/EntityTypes.json#/definitions/EntityInnerType"
+ },
+ "requiredInputFieldsSets": {
+ "description": "Data types for template",
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "entitiesFilter": {
+ "description": "The query applied only to entities matching to all filters",
+ "type": "object"
+ }
+ }
+ },
+ "InsightsTableResult": {
+ "type": "object",
+ "description": "Query results for table insights query.",
+ "properties": {
+ "columns": {
+ "type": "array",
+ "description": "Columns Metadata of the table",
+ "items": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "the type of the colum"
+ },
+ "name": {
+ "type": "string",
+ "description": "the name of the colum"
+ }
+ },
+ "type": "object"
+ },
+ "x-ms-identifiers": []
+ },
+ "rows": {
+ "type": "array",
+ "description": "Rows data of the table",
+ "items": {
+ "type": "array",
+ "description": "Single row of data",
+ "items": {
+ "type": "string",
+ "description": "Cell in the table"
+ }
+ }
+ }
+ }
+ },
+ "InsightQueryItem": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityQueryItem"
+ }
+ ],
+ "description": "Represents Insight Query.",
+ "properties": {
+ "properties": {
+ "description": "Properties bag for InsightQueryItem",
+ "$ref": "#/definitions/InsightQueryItemProperties"
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Insight"
+ },
+ "InsightQueryItemProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityQueryItemProperties"
+ }
+ ],
+ "description": "Represents Insight Query.",
+ "properties": {
+ "displayName": {
+ "type": "string",
+ "description": "The insight display name."
+ },
+ "description": {
+ "type": "string",
+ "description": "The insight description."
+ },
+ "baseQuery": {
+ "type": "string",
+ "description": "The base query of the insight."
+ },
+ "tableQuery": {
+ "type": "object",
+ "description": "The insight table query.",
+ "properties": {
+ "columnsDefinitions": {
+ "type": "array",
+ "description": "List of insight column definitions.",
+ "items": {
+ "properties": {
+ "header": {
+ "type": "string",
+ "description": "Insight column header."
+ },
+ "outputType": {
+ "type": "string",
+ "description": "Insights Column type.",
+ "enum": [
+ "Number",
+ "String",
+ "Date",
+ "Entity"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "outputType"
+ }
+ },
+ "supportDeepLink": {
+ "type": "boolean",
+ "description": "Is query supports deep-link."
+ }
+ },
+ "type": "object"
+ },
+ "x-ms-identifiers": []
+ },
+ "queriesDefinitions": {
+ "type": "array",
+ "description": "List of insight queries definitions.",
+ "x-ms-identifiers": [],
+ "items": {
+ "properties": {
+ "filter": {
+ "type": "string",
+ "description": "Insight column header."
+ },
+ "summarize": {
+ "type": "string",
+ "description": "Insight column header."
+ },
+ "project": {
+ "type": "string",
+ "description": "Insight column header."
+ },
+ "linkColumnsDefinitions": {
+ "type": "array",
+ "description": "Insight column header.",
+ "x-ms-identifiers": [],
+ "items": {
+ "properties": {
+ "projectedName": {
+ "type": "string",
+ "description": "Insight Link Definition Projected Name."
+ },
+ "Query": {
+ "type": "string",
+ "description": "Insight Link Definition Query."
+ }
+ },
+ "type": "object"
+ }
+ }
+ },
+ "type": "object"
+ }
+ }
+ }
+ },
+ "chartQuery": {
+ "type": "object",
+ "description": "The insight chart query."
+ },
+ "additionalQuery": {
+ "type": "object",
+ "description": "The activity query definitions.",
+ "properties": {
+ "query": {
+ "type": "string",
+ "description": "The insight query."
+ },
+ "text": {
+ "type": "string",
+ "description": "The insight text."
+ }
+ }
+ },
+ "defaultTimeRange": {
+ "type": "object",
+ "description": "The insight chart query.",
+ "properties": {
+ "beforeRange": {
+ "type": "string",
+ "description": "The padding for the start time of the query."
+ },
+ "afterRange": {
+ "type": "string",
+ "description": "The padding for the end time of the query."
+ }
+ }
+ },
+ "referenceTimeRange": {
+ "type": "object",
+ "description": "The insight chart query.",
+ "properties": {
+ "beforeRange": {
+ "type": "string",
+ "description": "Additional query time for looking back."
+ }
+ }
+ }
+ },
+ "type": "object"
+ },
+ "GetInsightsResultsMetadata": {
+ "description": "Get Insights result metadata.",
+ "properties": {
+ "totalCount": {
+ "description": "the total items found for the insights request",
+ "type": "integer",
+ "format": "int32"
+ },
+ "errors": {
+ "description": "information about the failed queries",
+ "items": {
+ "$ref": "#/definitions/GetInsightsErrorKind"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "required": [
+ "totalCount"
+ ],
+ "type": "object"
+ },
+ "GetInsightsErrorKind": {
+ "description": "GetInsights Query Errors.",
+ "properties": {
+ "kind": {
+ "description": "the query kind",
+ "type": "string",
+ "enum": [
+ "Insight"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "GetInsightsError",
+ "values": [
+ {
+ "value": "Insight"
+ }
+ ]
+ }
+ },
+ "queryId": {
+ "description": "the query id",
+ "type": "string"
+ },
+ "errorMessage": {
+ "description": "the error message",
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind",
+ "errorMessage"
+ ],
+ "type": "object"
+ },
+ "GetQueriesResponse": {
+ "description": "Retrieve queries for entity result operation response.",
+ "properties": {
+ "value": {
+ "description": "The query result values.",
+ "items": {
+ "$ref": "#/definitions/EntityQueryItem"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "SecurityAlertTimelineItem": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityTimelineItem"
+ }
+ ],
+ "description": "Represents security alert timeline item.",
+ "properties": {
+ "azureResourceId": {
+ "type": "string",
+ "description": "The alert azure resource id."
+ },
+ "productName": {
+ "type": "string",
+ "description": "The alert product name."
+ },
+ "description": {
+ "type": "string",
+ "description": "The alert description."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "The alert name."
+ },
+ "severity": {
+ "$ref": "./common/AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The alert severity."
+ },
+ "endTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The alert end time."
+ },
+ "startTimeUtc": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The alert start time."
+ },
+ "timeGenerated": {
+ "format": "date-time",
+ "type": "string",
+ "description": "The alert generated time."
+ },
+ "alertType": {
+ "type": "string",
+ "description": "The name of the alert type."
+ },
+ "intent": {
+ "type": "string",
+ "description": "The intent of the alert.",
+ "enum": [
+ "Unknown",
+ "Probing",
+ "Exploitation",
+ "Persistence",
+ "PrivilegeEscalation",
+ "DefenseEvasion",
+ "CredentialAccess",
+ "Discovery",
+ "LateralMovement",
+ "Execution",
+ "Collection",
+ "Exfiltration",
+ "CommandAndControl",
+ "Impact"
+ ],
+ "readOnly": true,
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KillChainIntent",
+ "values": [
+ {
+ "description": "The default value.",
+ "value": "Unknown"
+ },
+ {
+ "description": "Probing could be an attempt to access a certain resource regardless of a malicious intent or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt originating from outside the network in attempt to scan the target system and find a way in.",
+ "value": "Probing"
+ },
+ {
+ "description": "Exploitation is the stage where an attacker manage to get foothold on the attacked resource. This stage is applicable not only for compute hosts, but also for resources such as user accounts, certificates etc. Adversaries will often be able to control the resource after this stage.",
+ "value": "Exploitation"
+ },
+ {
+ "description": "Persistence is any access, action, or configuration change to a system that gives an adversary a persistent presence on that system. Adversaries will often need to maintain access to systems through interruptions such as system restarts, loss of credentials, or other failures that would require a remote access tool to restart or alternate backdoor for them to regain access.",
+ "value": "Persistence"
+ },
+ {
+ "description": "Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. Certain tools or actions require a higher level of privilege to work and are likely necessary at many points throughout an operation. User accounts with permissions to access specific systems or perform specific functions necessary for adversaries to achieve their objective may also be considered an escalation of privilege.",
+ "value": "PrivilegeEscalation"
+ },
+ {
+ "description": "Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. Sometimes these actions are the same as or variations of techniques in other categories that have the added benefit of subverting a particular defense or mitigation. ",
+ "value": "DefenseEvasion"
+ },
+ {
+ "description": "Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. Adversaries will likely attempt to obtain legitimate credentials from users or administrator accounts (local system administrator or domain users with administrator access) to use within the network. With sufficient access within a network, an adversary can create accounts for later use within the environment.",
+ "value": "CredentialAccess"
+ },
+ {
+ "description": "Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. When adversaries gain access to a new system, they must navigate themselves to what they now have control of and what benefits operating from that system give to their current objective or overall goals during the intrusion. The operating system provides many native tools that aid in this post-compromise information-gathering phase.",
+ "value": "Discovery"
+ },
+ {
+ "description": "Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. The lateral movement techniques could allow an adversary to gather information from a system without needing additional tools, such as a remote access tool. An adversary can use lateral movement for many purposes, including remote Execution of tools, pivoting to additional systems, access to specific information or files, access to additional credentials, or to cause an effect.",
+ "value": "LateralMovement"
+ },
+ {
+ "description": "The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. This tactic is often used in conjunction with lateral movement to expand access to remote systems on a network.",
+ "value": "Execution"
+ },
+ {
+ "description": "Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.",
+ "value": "Collection"
+ },
+ {
+ "description": "Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.",
+ "value": "Exfiltration"
+ },
+ {
+ "description": "The command and control tactic represents how adversaries communicate with systems under their control within a target network.",
+ "value": "CommandAndControl"
+ },
+ {
+ "description": "The impact intent primary objective is to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. This would often refer to techniques such as ransom-ware, defacement, data manipulation and others.",
+ "value": "Impact"
+ }
+ ]
+ }
+ },
+ "techniques": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "technique of the alert"
+ },
+ "description": "The techniques of the alert."
+ }
+ },
+ "required": [
+ "azureResourceId",
+ "displayName",
+ "severity",
+ "endTimeUtc",
+ "startTimeUtc",
+ "timeGenerated",
+ "alertType"
+ ],
+ "type": "object",
+ "x-ms-discriminator-value": "SecurityAlert"
+ },
+ "TimelineError": {
+ "description": "Timeline Query Errors.",
+ "properties": {
+ "kind": {
+ "description": "the query kind",
+ "$ref": "#/definitions/EntityTimelineKind"
+ },
+ "queryId": {
+ "description": "the query id",
+ "type": "string"
+ },
+ "errorMessage": {
+ "description": "the error message",
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind",
+ "errorMessage"
+ ],
+ "type": "object"
+ },
+ "TimelineResultsMetadata": {
+ "description": "Expansion result metadata.",
+ "properties": {
+ "totalCount": {
+ "description": "the total items found for the timeline request",
+ "type": "integer",
+ "format": "int32"
+ },
+ "aggregations": {
+ "description": "timeline aggregation per kind",
+ "items": {
+ "$ref": "#/definitions/TimelineAggregation"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "errors": {
+ "description": "information about the failure queries",
+ "items": {
+ "$ref": "#/definitions/TimelineError"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "required": [
+ "totalCount",
+ "aggregations"
+ ],
+ "type": "object"
+ },
+ "TimelineAggregation": {
+ "description": "timeline aggregation information per kind",
+ "properties": {
+ "count": {
+ "description": "the total items found for a kind",
+ "type": "integer",
+ "format": "int32"
+ },
+ "kind": {
+ "description": "the query kind",
+ "$ref": "#/definitions/EntityTimelineKind"
+ }
+ },
+ "required": [
+ "kind",
+ "count"
+ ],
+ "type": "object"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueries.json
new file mode 100644
index 000000000000..eba0dac1ffc1
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueries.json
@@ -0,0 +1,534 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entityQueries": {
+ "get": {
+ "x-ms-examples": {
+ "Get all entity queries.": {
+ "$ref": "./examples/entityQueries/GetEntityQueries.json"
+ }
+ },
+ "tags": [
+ "EntityQueries"
+ ],
+ "description": "Gets all entity queries.",
+ "operationId": "EntityQueries_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/EntityQueryKind"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityQueryList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entityQueries/{entityQueryId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an Expansion entity query.": {
+ "$ref": "./examples/entityQueries/GetExpansionEntityQueryById.json"
+ },
+ "Get an Activity entity query.": {
+ "$ref": "./examples/entityQueries/GetActivityEntityQueryById.json"
+ }
+ },
+ "tags": [
+ "EntityQueries"
+ ],
+ "description": "Gets an entity query.",
+ "operationId": "EntityQueries_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityQueryId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityQuery"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates an Activity entity query.": {
+ "$ref": "./examples/entityQueries/CreateEntityQueryActivity.json"
+ }
+ },
+ "tags": [
+ "EntityQueries"
+ ],
+ "description": "Creates or updates the entity query.",
+ "operationId": "EntityQueries_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityQueryId"
+ },
+ {
+ "$ref": "#/parameters/CustomEntityQuery"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityQuery"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/EntityQuery"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete an entity query.": {
+ "$ref": "./examples/entityQueries/DeleteEntityQuery.json"
+ }
+ },
+ "tags": [
+ "EntityQueries"
+ ],
+ "description": "Delete the entity query.",
+ "operationId": "EntityQueries_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityQueryId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CustomEntityQueryKind": {
+ "description": "The kind of the entity query that supports put request.",
+ "enum": [
+ "Activity"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "CustomEntityQueryKind",
+ "values": [
+ {
+ "value": "Activity"
+ }
+ ]
+ }
+ },
+ "EntityQueryList": {
+ "description": "List of all the entity queries.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of entity queries.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of entity queries.",
+ "items": {
+ "$ref": "#/definitions/EntityQuery"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "EntityQuery": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Specific entity query.",
+ "discriminator": "kind",
+ "properties": {
+ "kind": {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityQueryKind",
+ "description": "the entity query kind"
+ }
+ },
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "CustomEntityQuery": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Specific entity query that supports put requests.",
+ "discriminator": "kind",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/CustomEntityQueryKind",
+ "description": "the entity query kind"
+ }
+ },
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "ExpansionEntityQuery": {
+ "description": "Represents Expansion entity query.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityQuery"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ExpansionEntityQueriesProperties",
+ "description": "Expansion entity query properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Expansion"
+ },
+ "ExpansionEntityQueriesProperties": {
+ "description": "Describes expansion entity query properties",
+ "properties": {
+ "dataSources": {
+ "description": "List of the data sources that are required to run the query",
+ "items": {
+ "description": "data source",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "displayName": {
+ "description": "The query display name",
+ "type": "string"
+ },
+ "inputEntityType": {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityInnerType",
+ "description": "The type of the query's source entity"
+ },
+ "inputFields": {
+ "description": "List of the fields of the source entity that are required to run the query",
+ "items": {
+ "description": "input field",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "outputEntityTypes": {
+ "description": "List of the desired output types to be constructed from the result",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityInnerType",
+ "description": "output entity type"
+ },
+ "type": "array"
+ },
+ "queryTemplate": {
+ "description": "The template query string to be parsed and formatted",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ActivityEntityQuery": {
+ "description": "Represents Activity entity query.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityQuery"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ActivityEntityQueriesProperties",
+ "description": "Activity entity query properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Activity"
+ },
+ "ActivityCustomEntityQuery": {
+ "description": "Represents Activity entity query.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CustomEntityQuery"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ActivityEntityQueriesProperties",
+ "description": "Activity entity query properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Activity"
+ },
+ "ActivityEntityQueriesProperties": {
+ "description": "Describes activity entity query properties",
+ "properties": {
+ "title": {
+ "description": "The entity query title",
+ "type": "string"
+ },
+ "content": {
+ "description": "The entity query content to display in timeline",
+ "type": "string"
+ },
+ "description": {
+ "description": "The entity query description",
+ "type": "string"
+ },
+ "queryDefinitions": {
+ "description": "The Activity query definitions",
+ "properties": {
+ "query": {
+ "description": "The Activity query to run on a given entity",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "inputEntityType": {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityInnerType",
+ "description": "The type of the query's source entity"
+ },
+ "requiredInputFieldsSets": {
+ "description": "List of the fields of the source entity that are required to run the query",
+ "items": {
+ "description": "Sub sets of the field of the source entity that are required to run the query",
+ "items": {
+ "description": "Required input field name",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "type": "array"
+ },
+ "entitiesFilter": {
+ "description": "The query applied only to entities matching to all filters",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Filter field name",
+ "items": {
+ "description": "Filter field values",
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "templateName": {
+ "description": "The template id this activity was created from",
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this activity is enabled or disabled.",
+ "type": "boolean"
+ },
+ "createdTimeUtc": {
+ "description": "The time the activity was created",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "lastModifiedTimeUtc": {
+ "description": "The last time the activity was updated",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "EntityQueryId": {
+ "description": "entity query ID",
+ "in": "path",
+ "name": "entityQueryId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "EntityQueryKind": {
+ "description": "The entity query kind we want to fetch",
+ "in": "query",
+ "name": "kind",
+ "required": false,
+ "enum": [
+ "Expansion",
+ "Activity"
+ ],
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "x-ms-enum": {
+ "name": "EntityQueryTemplateKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Activity"
+ },
+ {
+ "value": "Insight"
+ },
+ {
+ "value": "SecurityAlert"
+ },
+ {
+ "value": "Bookmark"
+ },
+ {
+ "value": "Expansion"
+ },
+ {
+ "value": "GuidedInsight"
+ },
+ {
+ "value": "Anomaly"
+ }
+ ]
+ }
+ },
+ "CustomEntityQuery": {
+ "description": "The entity query we want to create or update",
+ "in": "body",
+ "name": "entityQuery",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CustomEntityQuery"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueryTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueryTemplates.json
new file mode 100644
index 000000000000..390a5064476a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueryTemplates.json
@@ -0,0 +1,331 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entityQueryTemplates": {
+ "get": {
+ "x-ms-examples": {
+ "Get all entity query templates.": {
+ "$ref": "./examples/entityQueryTemplates/GetEntityQueryTemplates.json"
+ }
+ },
+ "tags": [
+ "EntityQueries"
+ ],
+ "description": "Gets all entity query templates.",
+ "operationId": "EntityQueryTemplates_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/EntityQueryTemplateKind"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityQueryTemplateList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entityQueryTemplates/{entityQueryTemplateId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an Activity entity query template.": {
+ "$ref": "./examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json"
+ }
+ },
+ "tags": [
+ "EntityQueries"
+ ],
+ "description": "Gets an entity query.",
+ "operationId": "EntityQueryTemplates_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/EntityQueryTemplateId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/EntityQueryTemplate"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "EntityQueryTemplateKind": {
+ "description": "The kind of the entity query template.",
+ "enum": [
+ "Activity"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityQueryTemplateKind",
+ "values": [
+ {
+ "value": "Activity"
+ }
+ ]
+ }
+ },
+ "EntityQueryTemplateList": {
+ "description": "List of all the entity query templates.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of entity query templates.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of entity query templates.",
+ "items": {
+ "$ref": "#/definitions/EntityQueryTemplate"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "EntityQueryTemplate": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "description": "Specific entity query template.",
+ "discriminator": "kind",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/EntityQueryTemplateKind",
+ "description": "the entity query template kind"
+ }
+ },
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "ActivityEntityQueryTemplate": {
+ "description": "Represents Activity entity query.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityQueryTemplate"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ActivityEntityQueryTemplateProperties",
+ "description": "Activity entity query properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Activity"
+ },
+ "ActivityEntityQueryTemplateProperties": {
+ "description": "Describes activity entity query properties",
+ "properties": {
+ "title": {
+ "description": "The entity query title",
+ "type": "string"
+ },
+ "content": {
+ "description": "The entity query content to display in timeline",
+ "type": "string"
+ },
+ "description": {
+ "description": "The entity query description",
+ "type": "string"
+ },
+ "queryDefinitions": {
+ "description": "The Activity query definitions",
+ "properties": {
+ "query": {
+ "description": "The Activity query to run on a given entity",
+ "type": "string"
+ },
+ "summarizeBy": {
+ "description": "The dimensions we want to summarize the timeline results on, this is comma separated list",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "dataTypes": {
+ "description": "List of required data types for the given entity query template",
+ "items": {
+ "$ref": "#/definitions/DataTypeDefinitions"
+ },
+ "type": "array"
+ },
+ "inputEntityType": {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityInnerType",
+ "description": "The type of the query's source entity"
+ },
+ "requiredInputFieldsSets": {
+ "description": "List of the fields of the source entity that are required to run the query",
+ "items": {
+ "description": "Sub sets of the field of the source entity that are required to run the query",
+ "items": {
+ "description": "Required input field name",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "type": "array"
+ },
+ "entitiesFilter": {
+ "description": "The query applied only to entities matching to all filters",
+ "type": "object",
+ "additionalProperties": {
+ "description": "Filter field name",
+ "items": {
+ "description": "Filter field values",
+ "type": "string"
+ },
+ "type": "array"
+ }
+ }
+ },
+ "type": "object"
+ },
+ "DataTypeDefinitions": {
+ "description": "The data type definition",
+ "properties": {
+ "dataType": {
+ "description": "The data type name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "EntityQueryTemplateId": {
+ "description": "entity query template ID",
+ "in": "path",
+ "name": "entityQueryTemplateId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "EntityQueryTemplateKind": {
+ "description": "The entity template query kind we want to fetch",
+ "in": "query",
+ "name": "kind",
+ "required": false,
+ "enum": [
+ "Activity"
+ ],
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "x-ms-enum": {
+ "name": "EntityQueryTemplateKind",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Activity"
+ },
+ {
+ "value": "Insight"
+ },
+ {
+ "value": "SecurityAlert"
+ },
+ {
+ "value": "Bookmark"
+ },
+ {
+ "value": "Expansion"
+ },
+ {
+ "value": "GuidedInsight"
+ },
+ {
+ "value": "Anomaly"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/FileImports.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/FileImports.json
new file mode 100644
index 000000000000..c0c276632be8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/FileImports.json
@@ -0,0 +1,575 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/fileImports": {
+ "get": {
+ "x-ms-examples": {
+ "Get all file imports.": {
+ "$ref": "./examples/fileImports/GetFileImports.json"
+ }
+ },
+ "tags": [
+ "FileImports"
+ ],
+ "description": "Gets all file imports.",
+ "operationId": "FileImports_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/FileImportList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/fileImports/{fileImportId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a file import.": {
+ "$ref": "./examples/fileImports/GetFileImportById.json"
+ }
+ },
+ "tags": [
+ "FileImports"
+ ],
+ "description": "Gets a file import.",
+ "operationId": "FileImports_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/FileImportId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/FileImport"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Create a file import.": {
+ "$ref": "./examples/fileImports/CreateFileImport.json"
+ }
+ },
+ "tags": [
+ "FileImports"
+ ],
+ "description": "Creates the file import.",
+ "operationId": "FileImports_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/FileImportId"
+ },
+ {
+ "$ref": "#/parameters/FileImport"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/FileImport"
+ }
+ },
+ "200": {
+ "description": "Succeeded",
+ "schema": {
+ "$ref": "#/definitions/FileImport"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a file import.": {
+ "$ref": "./examples/fileImports/DeleteFileImport.json"
+ }
+ },
+ "tags": [
+ "FileImports"
+ ],
+ "description": "Delete the file import.",
+ "operationId": "FileImports_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/FileImportId"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/FileImport"
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "FileMetadata": {
+ "description": "Represents a file.",
+ "properties": {
+ "fileFormat": {
+ "description": "The format of the file",
+ "enum": [
+ "CSV",
+ "JSON",
+ "Unspecified"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "fileFormat",
+ "values": [
+ {
+ "description": "A CSV file.",
+ "value": "CSV"
+ },
+ {
+ "description": "A JSON file.",
+ "value": "JSON"
+ },
+ {
+ "description": "A file of other format.",
+ "value": "Unspecified"
+ }
+ ]
+ }
+ },
+ "fileName": {
+ "description": "The name of the file.",
+ "type": "string"
+ },
+ "fileSize": {
+ "description": "The size of the file.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "fileContentUri": {
+ "description": "A URI with a valid SAS token to allow uploading / downloading the file.",
+ "type": "string",
+ "readOnly": true
+ },
+ "deleteStatus": {
+ "description": "Indicates whether the file was deleted from the storage account.",
+ "enum": [
+ "Deleted",
+ "NotDeleted",
+ "Unspecified"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DeleteStatus",
+ "values": [
+ {
+ "description": "The file was deleted.",
+ "value": "Deleted"
+ },
+ {
+ "description": "The file was not deleted.",
+ "value": "NotDeleted"
+ },
+ {
+ "description": "Unspecified",
+ "value": "Unspecified"
+ }
+ ]
+ },
+ "readOnly": true
+ }
+ },
+ "type": "object"
+ },
+ "FileImport": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "description": "Represents a file import in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/FileImportProperties",
+ "description": "File import properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "FileImportList": {
+ "description": "List all the file imports.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of file imports.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of file imports.",
+ "items": {
+ "$ref": "#/definitions/FileImport"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "FileImportProperties": {
+ "description": "Describes the FileImport's properties",
+ "properties": {
+ "ingestionMode": {
+ "description": "Describes how to ingest the records in the file.",
+ "enum": [
+ "IngestOnlyIfAllAreValid",
+ "IngestAnyValidRecords",
+ "Unspecified"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IngestionMode",
+ "values": [
+ {
+ "description": "No records should be ingested when invalid records are detected.",
+ "value": "IngestOnlyIfAllAreValid"
+ },
+ {
+ "description": "Valid records should still be ingested when invalid records are detected.",
+ "value": "IngestAnyValidRecords"
+ },
+ {
+ "description": "Unspecified",
+ "value": "Unspecified"
+ }
+ ]
+ }
+ },
+ "contentType": {
+ "description": "The content type of this file.",
+ "enum": [
+ "BasicIndicator",
+ "StixIndicator",
+ "Unspecified"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "FileImportContentType",
+ "values": [
+ {
+ "description": "File containing records with the core fields of an indicator, plus the observables to construct the STIX pattern.",
+ "value": "BasicIndicator"
+ },
+ {
+ "description": "File containing STIX indicators.",
+ "value": "StixIndicator"
+ },
+ {
+ "description": "File containing other records.",
+ "value": "Unspecified"
+ }
+ ]
+ }
+ },
+ "createdTimeUTC": {
+ "description": "The time the file was imported.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "errorFile": {
+ "description": "Represents the error file (if the import was ingested with errors or failed the validation).",
+ "$ref": "#/definitions/FileMetadata",
+ "readOnly": true,
+ "type": "object"
+ },
+ "errorsPreview": {
+ "description": "An ordered list of some of the errors that were encountered during validation.",
+ "items": {
+ "description": "An error that were encountered during validation.",
+ "$ref": "#/definitions/ValidationError"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "importFile": {
+ "description": "Represents the imported file.",
+ "$ref": "#/definitions/FileMetadata",
+ "type": "object"
+ },
+ "ingestedRecordCount": {
+ "description": "The number of records that have been successfully ingested.",
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ "source": {
+ "description": "The source for the data in the file.",
+ "type": "string"
+ },
+ "state": {
+ "description": "The state of the file import.",
+ "enum": [
+ "FatalError",
+ "Ingested",
+ "IngestedWithErrors",
+ "InProgress",
+ "Invalid",
+ "WaitingForUpload",
+ "Unspecified"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "FileImportState",
+ "values": [
+ {
+ "description": "A fatal error has occurred while ingesting the file.",
+ "value": "FatalError"
+ },
+ {
+ "description": "The file has been ingested.",
+ "value": "Ingested"
+ },
+ {
+ "description": "The file has been ingested with errors.",
+ "value": "IngestedWithErrors"
+ },
+ {
+ "description": "The file ingestion is in progress.",
+ "value": "InProgress"
+ },
+ {
+ "description": "The file is invalid.",
+ "value": "Invalid"
+ },
+ {
+ "description": "Waiting for the file to be uploaded.",
+ "value": "WaitingForUpload"
+ },
+ {
+ "description": "Unspecified state.",
+ "value": "Unspecified"
+ }
+ ]
+ }
+ },
+ "totalRecordCount": {
+ "description": "The number of records in the file.",
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ "validRecordCount": {
+ "description": "The number of records that have passed validation.",
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ "filesValidUntilTimeUTC": {
+ "description": "The time the files associated with this import are deleted from the storage account.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "importValidUntilTimeUTC": {
+ "description": "The time the file import record is soft deleted from the database and history.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "ingestionMode",
+ "contentType",
+ "importFile",
+ "source"
+ ],
+ "type": "object"
+ },
+ "ValidationError": {
+ "description": "Describes an error encountered in the file during validation.",
+ "properties": {
+ "recordIndex": {
+ "description": "The number of the record that has the error.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "errorMessages": {
+ "description": "A list of descriptions of the error.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "FileImportId": {
+ "description": "File import ID",
+ "in": "path",
+ "name": "fileImportId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "FileImport": {
+ "description": "The file import",
+ "in": "body",
+ "name": "fileImport",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FileImport"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Hunts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Hunts.json
new file mode 100644
index 000000000000..876827699552
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Hunts.json
@@ -0,0 +1,994 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/hunts": {
+ "get": {
+ "x-ms-examples": {
+ "Get all hunts.": {
+ "$ref": "./examples/hunts/GetHunts.json"
+ }
+ },
+ "tags": [
+ "Hunts"
+ ],
+ "description": "Gets all hunts, without relations and comments.",
+ "operationId": "Hunts_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HuntList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/hunts/{huntId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a hunt.": {
+ "$ref": "./examples/hunts/GetHuntById.json"
+ }
+ },
+ "tags": [
+ "Hunts"
+ ],
+ "description": "Gets a hunt, without relations and comments.",
+ "operationId": "Hunts_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Hunt"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a hunt.": {
+ "$ref": "./examples/hunts/DeleteHunt.json"
+ }
+ },
+ "tags": [
+ "Hunts"
+ ],
+ "description": "Delete a hunt.",
+ "operationId": "Hunts_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a hunt.": {
+ "$ref": "./examples/hunts/CreateHunt.json"
+ }
+ },
+ "tags": [
+ "Hunts"
+ ],
+ "description": "Create or update a hunt",
+ "operationId": "Hunts_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/Hunt"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Create or update the Hunt",
+ "schema": {
+ "$ref": "#/definitions/Hunt"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Hunt"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/hunts/{huntId}/relations": {
+ "get": {
+ "x-ms-examples": {
+ "Get all hunt relations.": {
+ "$ref": "./examples/hunts/GetHuntRelations.json"
+ }
+ },
+ "tags": [
+ "HuntRelations"
+ ],
+ "description": "Gets all hunt relations",
+ "operationId": "HuntRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HuntRelationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/hunts/{huntId}/relations/{huntRelationId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a hunt relation.": {
+ "$ref": "./examples/hunts/GetHuntRelationById.json"
+ }
+ },
+ "tags": [
+ "HuntRelations"
+ ],
+ "description": "Gets a hunt relation",
+ "operationId": "HuntRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/HuntRelationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HuntRelation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a hunt relation.": {
+ "$ref": "./examples/hunts/DeleteHuntRelation.json"
+ }
+ },
+ "tags": [
+ "HuntRelations"
+ ],
+ "description": "Delete a hunt relation.",
+ "operationId": "HuntRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/HuntRelationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a hunt relation.": {
+ "$ref": "./examples/hunts/CreateHuntRelation.json"
+ }
+ },
+ "tags": [
+ "HuntRelations"
+ ],
+ "description": "Creates or updates a hunt relation.",
+ "operationId": "HuntRelations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/HuntRelationId"
+ },
+ {
+ "$ref": "#/parameters/HuntRelation"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Create or update the hunt relation",
+ "schema": {
+ "$ref": "#/definitions/HuntRelation"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/HuntRelation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/hunts/{huntId}/comments": {
+ "get": {
+ "x-ms-examples": {
+ "Get all hunt comments.": {
+ "$ref": "./examples/hunts/GetHuntComments.json"
+ }
+ },
+ "tags": [
+ "HuntComments"
+ ],
+ "description": "Gets all hunt comments",
+ "operationId": "HuntComments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HuntCommentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/hunts/{huntId}/comments/{huntCommentId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a hunt comment.": {
+ "$ref": "./examples/hunts/GetHuntCommentById.json"
+ }
+ },
+ "tags": [
+ "HuntComments"
+ ],
+ "description": "Gets a hunt comment",
+ "operationId": "HuntComments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/HuntCommentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/HuntComment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a hunt comment.": {
+ "$ref": "./examples/hunts/DeleteHuntComment.json"
+ }
+ },
+ "tags": [
+ "HuntComments"
+ ],
+ "description": "Delete a hunt comment.",
+ "operationId": "HuntComments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/HuntCommentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a hunt comment.": {
+ "$ref": "./examples/hunts/CreateHuntComment.json"
+ }
+ },
+ "tags": [
+ "HuntComments"
+ ],
+ "description": "Creates or updates a hunt relation.",
+ "operationId": "HuntComments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/HuntId"
+ },
+ {
+ "$ref": "#/parameters/HuntCommentId"
+ },
+ {
+ "$ref": "#/parameters/HuntComment"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Create or update the hunt comment",
+ "schema": {
+ "$ref": "#/definitions/HuntComment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/HuntComment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "HuntList": {
+ "description": "List all the hunts.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of hunts.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of hunts.",
+ "items": {
+ "$ref": "#/definitions/Hunt"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "Hunt": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Hunt in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HuntProperties",
+ "description": "Hunt properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "HuntProperties": {
+ "description": "Describes hunt properties",
+ "properties": {
+ "displayName": {
+ "description": "The display name of the hunt",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the hunt",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the hunt.",
+ "enum": [
+ "New",
+ "Active",
+ "Closed",
+ "Backlog",
+ "Approved"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "status"
+ },
+ "default": "New"
+ },
+ "hypothesisStatus": {
+ "description": "The hypothesis status of the hunt.",
+ "enum": [
+ "Unknown",
+ "Invalidated",
+ "Validated"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "hypothesisStatus"
+ },
+ "default": "Unknown"
+ },
+ "attackTactics": {
+ "description": "A list of mitre attack tactics the hunt is associated with",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array"
+ },
+ "attackTechniques": {
+ "description": "A list of a mitre attack techniques the hunt is associated with",
+ "items": {
+ "description": "Attack Technique",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "labels": {
+ "description": "List of labels relevant to this hunt ",
+ "items": {
+ "$ref": "../../../common/2.0/types.json#/definitions/Label"
+ },
+ "type": "array"
+ },
+ "owner": {
+ "$ref": "#/definitions/HuntOwner"
+ }
+ },
+ "required": [
+ "displayName",
+ "description"
+ ],
+ "type": "object"
+ },
+ "HuntRelationList": {
+ "description": "List of all the hunt relations",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of hunt relations.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of hunt relations",
+ "items": {
+ "$ref": "#/definitions/HuntRelation"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "HuntRelation": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Hunt Relation in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HuntRelationProperties",
+ "description": "Hunt Relation properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "HuntRelationProperties": {
+ "description": "Describes hunt relation properties",
+ "properties": {
+ "relatedResourceId": {
+ "description": "The id of the related resource",
+ "type": "string"
+ },
+ "relatedResourceName": {
+ "description": "The name of the related resource",
+ "type": "string",
+ "readOnly": true
+ },
+ "relationType": {
+ "description": "The type of the hunt relation",
+ "type": "string",
+ "readOnly": true
+ },
+ "relatedResourceKind": {
+ "description": "The resource that the relation is related to",
+ "type": "string",
+ "readOnly": true
+ },
+ "labels": {
+ "description": "List of labels relevant to this hunt",
+ "items": {
+ "$ref": "../../../common/2.0/types.json#/definitions/Label"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "relatedResourceId"
+ ],
+ "type": "object"
+ },
+ "HuntCommentList": {
+ "description": "List of all hunt comments",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of hunt comments.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of hunt comments",
+ "items": {
+ "$ref": "#/definitions/HuntComment"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "HuntComment": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Hunt Comment in Azure Security Insights",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HuntCommentProperties",
+ "description": "Hunt Comment properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "HuntCommentProperties": {
+ "description": "Describes a hunt comment properties",
+ "properties": {
+ "message": {
+ "description": "The message for the comment",
+ "type": "string"
+ }
+ },
+ "required": [
+ "message"
+ ],
+ "type": "object"
+ },
+ "HuntOwner": {
+ "description": "Describes a user that the hunt is assigned to",
+ "type": "object",
+ "properties": {
+ "email": {
+ "description": "The email of the user the hunt is assigned to.",
+ "type": "string"
+ },
+ "assignedTo": {
+ "description": "The name of the user the hunt is assigned to.",
+ "type": "string"
+ },
+ "objectId": {
+ "description": "The object id of the user the hunt is assigned to.",
+ "format": "uuid",
+ "type": "string",
+ "x-nullable": true
+ },
+ "userPrincipalName": {
+ "description": "The user principal name of the user the hunt is assigned to.",
+ "type": "string"
+ },
+ "ownerType": {
+ "description": "The type of the owner the hunt is assigned to.",
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "User",
+ "Group"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "OwnerType",
+ "values": [
+ {
+ "description": "The hunt owner type is unknown",
+ "value": "Unknown"
+ },
+ {
+ "description": "The hunt owner type is an AAD user",
+ "value": "User"
+ },
+ {
+ "description": "The hunt owner type is an AAD group",
+ "value": "Group"
+ }
+ ]
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "Hunt": {
+ "description": "The hunt",
+ "name": "hunt",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Hunt"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "HuntId": {
+ "description": "The hunt id (GUID)",
+ "in": "path",
+ "name": "huntId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "HuntRelation": {
+ "description": "The hunt relation",
+ "in": "body",
+ "name": "huntRelation",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/HuntRelation"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "HuntRelationId": {
+ "description": "The hunt relation id (GUID)",
+ "in": "path",
+ "name": "huntRelationId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "HuntComment": {
+ "description": "The hunt comment",
+ "in": "body",
+ "name": "huntComment",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/HuntComment"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "HuntCommentId": {
+ "description": "The hunt comment id (GUID)",
+ "in": "path",
+ "name": "huntCommentId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Incidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Incidents.json
new file mode 100644
index 000000000000..94dce600b7e6
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Incidents.json
@@ -0,0 +1,1669 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents": {
+ "get": {
+ "tags": [
+ "Incidents"
+ ],
+ "description": "Gets all incidents.",
+ "operationId": "Incidents_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Incidents_List": {
+ "$ref": "./examples/incidents/Incidents_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}": {
+ "get": {
+ "tags": [
+ "Incidents"
+ ],
+ "description": "Gets an incident.",
+ "operationId": "Incidents_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Incident"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_Get": {
+ "$ref": "./examples/incidents/Incidents_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "Incidents"
+ ],
+ "description": "Creates or updates the incident.",
+ "operationId": "Incidents_CreateOrUpdate",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/Incident"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Incident"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Incident"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_CreateOrUpdate": {
+ "$ref": "./examples/incidents/Incidents_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "Incidents"
+ ],
+ "description": "Delete the incident.",
+ "operationId": "Incidents_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_Delete": {
+ "$ref": "./examples/incidents/Incidents_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/createTeam": {
+ "post": {
+ "tags": [
+ "IncidentTeam"
+ ],
+ "description": "Creates a Microsoft team to investigate the incident by sharing information and insights between participants.",
+ "operationId": "Incidents_CreateTeam",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/TeamProperties"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/TeamInformation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_CreateTeam": {
+ "$ref": "./examples/incidents/IncidentTeam/Incidents_CreateTeam.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/alerts": {
+ "post": {
+ "tags": [
+ "IncidentAlerts"
+ ],
+ "description": "Gets all incident alerts.",
+ "operationId": "Incidents_ListAlerts",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentAlertList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_ListAlerts": {
+ "$ref": "./examples/incidents/IncidentAlerts/Incidents_ListAlerts.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/bookmarks": {
+ "post": {
+ "tags": [
+ "IncidentBookmarks"
+ ],
+ "description": "Gets all incident bookmarks.",
+ "operationId": "Incidents_ListBookmarks",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentBookmarkList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_ListBookmarks": {
+ "$ref": "./examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/comments": {
+ "get": {
+ "tags": [
+ "IncidentComments"
+ ],
+ "description": "Gets all incident comments.",
+ "operationId": "IncidentComments_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentCommentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "IncidentComments_List": {
+ "$ref": "./examples/incidents/IncidentComments/IncidentComments_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/comments/{incidentCommentId}": {
+ "get": {
+ "tags": [
+ "IncidentComments"
+ ],
+ "description": "Gets an incident comment.",
+ "operationId": "IncidentComments_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentCommentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentComment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "IncidentComments_Get": {
+ "$ref": "./examples/incidents/IncidentComments/IncidentComments_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "IncidentComments"
+ ],
+ "description": "Creates or updates the incident comment.",
+ "operationId": "IncidentComments_CreateOrUpdate",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentCommentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentComment"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentComment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/IncidentComment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "IncidentComments_CreateOrUpdate": {
+ "$ref": "./examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "IncidentComments"
+ ],
+ "description": "Delete the incident comment.",
+ "operationId": "IncidentComments_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentCommentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "IncidentComments_Delete": {
+ "$ref": "./examples/incidents/IncidentComments/IncidentComments_Delete.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/entities": {
+ "post": {
+ "tags": [
+ "IncidentEntities"
+ ],
+ "description": "Gets all incident related entities.",
+ "operationId": "Incidents_ListEntities",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentEntitiesResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Incidents_ListEntities": {
+ "$ref": "./examples/incidents/IncidentEntities/Incidents_ListEntities.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/relations": {
+ "get": {
+ "x-ms-examples": {
+ "Get all incident relations.": {
+ "$ref": "./examples/incidents/relations/GetAllIncidentRelations.json"
+ }
+ },
+ "tags": [
+ "IncidentRelations"
+ ],
+ "description": "Gets all incident relations.",
+ "operationId": "IncidentRelations_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/RelationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-odata": "./common/RelationTypes.json#/definitions/Relation",
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/relations/{relationName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an incident relation.": {
+ "$ref": "./examples/incidents/relations/GetIncidentRelationByName.json"
+ }
+ },
+ "tags": [
+ "IncidentRelations"
+ ],
+ "description": "Gets an incident relation.",
+ "operationId": "IncidentRelations_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates an incident relation.": {
+ "$ref": "./examples/incidents/relations/CreateIncidentRelation.json"
+ }
+ },
+ "tags": [
+ "IncidentRelations"
+ ],
+ "description": "Creates or updates the incident relation.",
+ "operationId": "IncidentRelations_CreateOrUpdate",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/Relation"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "./common/RelationTypes.json#/definitions/Relation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete the incident relation.": {
+ "$ref": "./examples/incidents/relations/DeleteIncidentRelation.json"
+ }
+ },
+ "tags": [
+ "IncidentRelations"
+ ],
+ "description": "Delete the incident relation.",
+ "operationId": "IncidentRelations_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "./common/RelationTypes.json#/parameters/RelationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/tasks": {
+ "get": {
+ "tags": [
+ "IncidentTasks"
+ ],
+ "description": "Gets all incident tasks.",
+ "operationId": "IncidentTasks_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentTaskList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "IncidentTasks_List": {
+ "$ref": "./examples/incidents/IncidentTasks/IncidentTasks_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/tasks/{incidentTaskId}": {
+ "get": {
+ "tags": [
+ "IncidentTasks"
+ ],
+ "description": "Gets an incident task.",
+ "operationId": "IncidentTasks_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentTaskId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentTask"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "IncidentTasks_Get": {
+ "$ref": "./examples/incidents/IncidentTasks/IncidentTasks_Get.json"
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "IncidentTasks"
+ ],
+ "description": "Creates or updates the incident task.",
+ "operationId": "IncidentTasks_CreateOrUpdate",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentTaskId"
+ },
+ {
+ "$ref": "#/parameters/IncidentTask"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/IncidentTask"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/IncidentTask"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "IncidentTasks_CreateOrUpdate": {
+ "$ref": "./examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "IncidentTasks"
+ ],
+ "description": "Delete the incident task.",
+ "operationId": "IncidentTasks_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/IncidentId"
+ },
+ {
+ "$ref": "#/parameters/IncidentTaskId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "IncidentTasks_Delete": {
+ "$ref": "./examples/incidents/IncidentTasks/IncidentTasks_Delete.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Incident": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/IncidentProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "IncidentAdditionalData": {
+ "description": "Incident additional data property bag.",
+ "type": "object",
+ "properties": {
+ "alertsCount": {
+ "format": "int32",
+ "description": "The number of alerts in the incident",
+ "type": "integer",
+ "readOnly": true
+ },
+ "bookmarksCount": {
+ "format": "int32",
+ "description": "The number of bookmarks in the incident",
+ "type": "integer",
+ "readOnly": true
+ },
+ "commentsCount": {
+ "format": "int32",
+ "description": "The number of comments in the incident",
+ "type": "integer",
+ "readOnly": true
+ },
+ "alertProductNames": {
+ "description": "List of product names of alerts in the incident",
+ "type": "array",
+ "items": {
+ "description": "Alert product name",
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "tactics": {
+ "description": "The tactics associated with incident",
+ "type": "array",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "readOnly": true
+ },
+ "techniques": {
+ "description": "The techniques associated with incident's tactics",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "providerIncidentUrl": {
+ "description": "The provider incident url to the incident in Microsoft 365 Defender portal",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "IncidentAlertList": {
+ "description": "List of incident alerts.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Array of incident alerts.",
+ "type": "array",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/SecurityAlert"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "IncidentBookmarkList": {
+ "description": "List of incident bookmarks.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Array of incident bookmarks.",
+ "type": "array",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/HuntingBookmark"
+ }
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "IncidentComment": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents an incident comment",
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/IncidentCommentProperties",
+ "description": "Incident comment properties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "IncidentCommentList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IncidentComment"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "IncidentCommentProperties": {
+ "description": "Incident comment property bag.",
+ "required": [
+ "message"
+ ],
+ "type": "object",
+ "properties": {
+ "message": {
+ "description": "The comment message",
+ "type": "string"
+ },
+ "createdTimeUtc": {
+ "format": "date-time",
+ "description": "The time the comment was created",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastModifiedTimeUtc": {
+ "format": "date-time",
+ "description": "The time the comment was updated",
+ "type": "string",
+ "readOnly": true
+ },
+ "author": {
+ "type": "object",
+ "$ref": "../../../common/2.0/types.json#/definitions/ClientInfo",
+ "description": "Describes the client that created the comment",
+ "readOnly": true
+ }
+ }
+ },
+ "IncidentEntitiesResponse": {
+ "description": "The incident related entities response.",
+ "type": "object",
+ "properties": {
+ "entities": {
+ "description": "Array of the incident related entities.",
+ "type": "array",
+ "items": {
+ "$ref": "./common/EntityTypes.json#/definitions/Entity"
+ }
+ },
+ "metaData": {
+ "description": "The metadata from the incident related entities results.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IncidentEntitiesResultsMetadata"
+ }
+ }
+ }
+ },
+ "IncidentEntitiesResultsMetadata": {
+ "description": "Information of a specific aggregation in the incident related entities result.",
+ "required": [
+ "count",
+ "entityKind"
+ ],
+ "type": "object",
+ "properties": {
+ "entityKind": {
+ "description": "The kind of the aggregated entity.",
+ "$ref": "./common/EntityTypes.json#/definitions/EntityInnerKind"
+ },
+ "count": {
+ "format": "int32",
+ "description": "Total number of aggregations of the given kind in the incident related entities result.",
+ "type": "integer"
+ }
+ }
+ },
+ "IncidentList": {
+ "required": [
+ "value"
+ ],
+ "description": "List all the incidents.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Incident"
+ }
+ },
+ "nextLink": {
+ "description": "URL to fetch the next set of incidents.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "IncidentProperties": {
+ "required": [
+ "severity",
+ "status",
+ "title"
+ ],
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "The title of the incident",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the incident",
+ "type": "string"
+ },
+ "severity": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentSeverityEnum"
+ },
+ "status": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentStatusEnum"
+ },
+ "classification": {
+ "description": "The reason the incident was closed",
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentClassificationEnum"
+ },
+ "classificationReason": {
+ "description": "The classification reason the incident was closed with",
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentClassificationReasonEnum"
+ },
+ "classificationComment": {
+ "description": "Describes the reason the incident was closed",
+ "type": "string"
+ },
+ "owner": {
+ "type": "object",
+ "description": "Describes a user that the incident is assigned to",
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentOwnerInfo"
+ },
+ "labels": {
+ "description": "List of labels relevant to this incident",
+ "type": "array",
+ "items": {
+ "$ref": "./common/IncidentTypes.json#/definitions/IncidentLabel"
+ }
+ },
+ "firstActivityTimeUtc": {
+ "format": "date-time",
+ "description": "The time of the first activity in the incident",
+ "type": "string"
+ },
+ "lastActivityTimeUtc": {
+ "format": "date-time",
+ "description": "The time of the last activity in the incident",
+ "type": "string"
+ },
+ "lastModifiedTimeUtc": {
+ "format": "date-time",
+ "description": "The last time the incident was updated",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdTimeUtc": {
+ "format": "date-time",
+ "description": "The time the incident was created",
+ "type": "string",
+ "readOnly": true
+ },
+ "incidentNumber": {
+ "format": "int32",
+ "description": "A sequential number",
+ "type": "integer",
+ "readOnly": true
+ },
+ "additionalData": {
+ "$ref": "#/definitions/IncidentAdditionalData",
+ "description": "Additional data on the incident",
+ "readOnly": true,
+ "type": "object"
+ },
+ "relatedAnalyticRuleIds": {
+ "description": "List of resource ids of Analytic rules related to the incident",
+ "type": "array",
+ "items": {
+ "description": "Related Analytic rule resource id",
+ "type": "string",
+ "format": "arm-id",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "scopes": [
+ "Extension"
+ ],
+ "type": "Microsoft.SecurityInsights/alertRules"
+ }
+ ]
+ }
+ },
+ "readOnly": true
+ },
+ "incidentUrl": {
+ "description": "The deep-link url to the incident in Azure portal",
+ "type": "string",
+ "readOnly": true
+ },
+ "providerName": {
+ "description": "The name of the source provider that generated the incident",
+ "type": "string",
+ "readOnly": true
+ },
+ "providerIncidentId": {
+ "description": "The incident ID assigned by the incident provider",
+ "type": "string",
+ "readOnly": true
+ },
+ "teamInformation": {
+ "$ref": "#/definitions/TeamInformation",
+ "description": "Describes a team for the incident",
+ "type": "object"
+ }
+ }
+ },
+ "IncidentTask": {
+ "required": [
+ "properties"
+ ],
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/IncidentTaskProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "IncidentTaskList": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IncidentTask"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ },
+ "IncidentTaskProperties": {
+ "required": [
+ "status",
+ "title"
+ ],
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "The title of the task",
+ "type": "string"
+ },
+ "description": {
+ "description": "The description of the task",
+ "type": "string"
+ },
+ "status": {
+ "$ref": "#/definitions/IncidentTaskStatus"
+ },
+ "createdTimeUtc": {
+ "format": "date-time",
+ "description": "The time the task was created",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastModifiedTimeUtc": {
+ "format": "date-time",
+ "description": "The last time the task was updated",
+ "type": "string",
+ "readOnly": true
+ },
+ "createdBy": {
+ "type": "object",
+ "$ref": "../../../common/2.0/types.json#/definitions/ClientInfo"
+ },
+ "lastModifiedBy": {
+ "type": "object",
+ "$ref": "../../../common/2.0/types.json#/definitions/ClientInfo"
+ }
+ }
+ },
+ "IncidentTaskStatus": {
+ "enum": [
+ "New",
+ "Completed"
+ ],
+ "type": "string",
+ "example": "New",
+ "x-ms-enum": {
+ "name": "IncidentTaskStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "New",
+ "description": "A new task"
+ },
+ {
+ "value": "Completed",
+ "description": "A completed task"
+ }
+ ]
+ }
+ },
+ "TeamInformation": {
+ "description": "Describes team information",
+ "type": "object",
+ "properties": {
+ "teamId": {
+ "description": "Team ID",
+ "type": "string",
+ "readOnly": true
+ },
+ "primaryChannelUrl": {
+ "description": "The primary channel URL of the team",
+ "type": "string",
+ "readOnly": true
+ },
+ "teamCreationTimeUtc": {
+ "format": "date-time",
+ "description": "The time the team was created",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "The name of the team",
+ "type": "string",
+ "readOnly": true
+ },
+ "description": {
+ "description": "The description of the team",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "TeamProperties": {
+ "description": "Describes team properties",
+ "required": [
+ "teamName"
+ ],
+ "type": "object",
+ "properties": {
+ "teamName": {
+ "description": "The name of the team",
+ "type": "string"
+ },
+ "teamDescription": {
+ "description": "The description of the team",
+ "type": "string"
+ },
+ "groupIds": {
+ "description": "List of group IDs to add their members to the team",
+ "type": "array",
+ "items": {
+ "format": "uuid",
+ "type": "string"
+ }
+ },
+ "memberIds": {
+ "description": "List of member IDs to add to the team",
+ "type": "array",
+ "items": {
+ "format": "uuid",
+ "type": "string"
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "Incident": {
+ "name": "incident",
+ "description": "The incident",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/Incident"
+ }
+ },
+ "IncidentId": {
+ "in": "path",
+ "name": "incidentId",
+ "description": "Incident ID",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "IncidentComment": {
+ "name": "incidentComment",
+ "description": "The incident comment",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/IncidentComment"
+ }
+ },
+ "IncidentCommentId": {
+ "in": "path",
+ "name": "incidentCommentId",
+ "description": "Incident comment ID",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ },
+ "TeamProperties": {
+ "name": "teamProperties",
+ "description": "Team properties",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/TeamInformation"
+ }
+ },
+ "IncidentTask": {
+ "name": "incidentTask",
+ "description": "The incident task",
+ "required": true,
+ "in": "body",
+ "x-ms-parameter-location": "method",
+ "schema": {
+ "$ref": "#/definitions/IncidentTask"
+ }
+ },
+ "IncidentTaskId": {
+ "in": "path",
+ "name": "incidentTaskId",
+ "description": "Incident task ID",
+ "required": true,
+ "x-ms-parameter-location": "method",
+ "type": "string"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ },
+ "description": "Azure Active Directory OAuth2 Flow"
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Metadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Metadata.json
new file mode 100644
index 000000000000..6d0e32131c8d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Metadata.json
@@ -0,0 +1,774 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/metadata": {
+ "get": {
+ "x-ms-examples": {
+ "Get all metadata.": {
+ "$ref": "./examples/metadata/GetAllMetadata.json"
+ },
+ "Get all metadata with OData filter/orderby/skip/top": {
+ "$ref": "./examples/metadata/GetAllMetadataOData.json"
+ }
+ },
+ "tags": [
+ "Metadata"
+ ],
+ "description": "List of all metadata",
+ "operationId": "Metadata_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkip"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MetadataList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/metadata/{metadataName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get single metadata by name": {
+ "$ref": "./examples/metadata/GetMetadata.json"
+ }
+ },
+ "tags": [
+ "Metadata"
+ ],
+ "description": "Get a Metadata.",
+ "operationId": "Metadata_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/MetadataName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MetadataModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete metadata.": {
+ "$ref": "./examples/metadata/DeleteMetadata.json"
+ }
+ },
+ "tags": [
+ "Metadata"
+ ],
+ "description": "Delete a Metadata.",
+ "operationId": "Metadata_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/MetadataName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Create/update full metadata.": {
+ "$ref": "./examples/metadata/PutMetadata.json"
+ },
+ "Create/update minimal metadata.": {
+ "$ref": "./examples/metadata/PutMetadataMinimal.json"
+ }
+ },
+ "tags": [
+ "Metadata"
+ ],
+ "description": "Create a Metadata.",
+ "operationId": "Metadata_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/MetadataName"
+ },
+ {
+ "$ref": "#/parameters/Metadata"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed",
+ "schema": {
+ "$ref": "#/definitions/MetadataModel"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/MetadataModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "patch": {
+ "x-ms-examples": {
+ "Update metadata.": {
+ "$ref": "./examples/metadata/PatchMetadata.json"
+ }
+ },
+ "tags": [
+ "Metadata"
+ ],
+ "description": "Update an existing Metadata.",
+ "operationId": "Metadata_Update",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/MetadataName"
+ },
+ {
+ "$ref": "#/parameters/MetadataPatch"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/MetadataModel"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "MetadataList": {
+ "description": "List of all the metadata.",
+ "type": "object",
+ "properties": {
+ "value": {
+ "description": "Array of metadata.",
+ "items": {
+ "$ref": "#/definitions/MetadataModel"
+ },
+ "type": "array"
+ },
+ "nextLink": {
+ "description": "URL to fetch the next page of metadata.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "MetadataModel": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Metadata resource definition.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/metadataProperties",
+ "description": "Metadata properties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "metadataPatch": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Metadata patch request body.",
+ "type": "object",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/metadataPropertiesPatch",
+ "description": "Metadata patch request body",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "metadataContentId": {
+ "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Can be optionally set for user created content to define dependencies. If an active content item is made from a template, both will have the same contentId.",
+ "type": "string"
+ },
+ "metadataParentId": {
+ "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)",
+ "type": "string"
+ },
+ "metadataVersion": {
+ "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks",
+ "type": "string"
+ },
+ "metadataKind": {
+ "type": "string",
+ "description": "The kind of content the metadata is for."
+ },
+ "metadataSource": {
+ "description": "The original source of the content item, where it comes from.",
+ "type": "object",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "description": "Source type of the content",
+ "type": "string",
+ "enum": [
+ "LocalWorkspace",
+ "Community",
+ "Solution",
+ "SourceRepository"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "sourceKind",
+ "values": [
+ {
+ "value": "LocalWorkspace"
+ },
+ {
+ "value": "Community"
+ },
+ {
+ "value": "Solution"
+ },
+ {
+ "value": "SourceRepository"
+ }
+ ]
+ }
+ },
+ "name": {
+ "description": "Name of the content source. The repo name, solution name, LA workspace name etc.",
+ "type": "string"
+ },
+ "sourceId": {
+ "description": "ID of the content source. The solution ID, workspace ID, etc",
+ "type": "string"
+ }
+ }
+ },
+ "metadataAuthor": {
+ "type": "object",
+ "description": "Publisher or creator of the content item.",
+ "properties": {
+ "name": {
+ "description": "Name of the author. Company or person.",
+ "type": "string"
+ },
+ "email": {
+ "description": "Email of author contact",
+ "type": "string"
+ },
+ "link": {
+ "description": "Link for author/vendor page",
+ "type": "string"
+ }
+ }
+ },
+ "metadataSupport": {
+ "type": "object",
+ "description": "Support information for the content item.",
+ "required": [
+ "tier"
+ ],
+ "properties": {
+ "tier": {
+ "description": "Type of support for content item",
+ "type": "string",
+ "enum": [
+ "Microsoft",
+ "Partner",
+ "Community"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "supportTier",
+ "values": [
+ {
+ "value": "Microsoft"
+ },
+ {
+ "value": "Partner"
+ },
+ {
+ "value": "Community"
+ }
+ ]
+ }
+ },
+ "name": {
+ "description": "Name of the support contact. Company or person.",
+ "type": "string"
+ },
+ "email": {
+ "description": "Email of support contact",
+ "type": "string"
+ },
+ "link": {
+ "description": "Link for support help, like to support page to open a ticket etc.",
+ "type": "string"
+ }
+ }
+ },
+ "metadataCategories": {
+ "type": "object",
+ "description": "ies for the solution content item",
+ "properties": {
+ "domains": {
+ "description": "domain for the solution content item",
+ "type": "array",
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "verticals": {
+ "description": "Industry verticals for the solution content item",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ]
+ }
+ }
+ },
+ "metadataProviders": {
+ "description": "Providers for the solution content item",
+ "type": "array",
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "firstPublishDate": {
+ "description": "first publish date of solution content item",
+ "type": "string",
+ "format": "date"
+ },
+ "lastPublishDate": {
+ "description": "last publish date of solution content item",
+ "type": "string",
+ "format": "date"
+ },
+ "metadataCustomVersion": {
+ "description": "The custom version of the content. A optional free text",
+ "type": "string"
+ },
+ "metadataContentSchemaVersion": {
+ "description": "Schema version of the content. Can be used to distinguish between different flow based on the schema version",
+ "type": "string"
+ },
+ "metadataIcon": {
+ "description": "the icon identifier. this id can later be fetched from the solution template",
+ "type": "string"
+ },
+ "metadataThreatAnalysisTactics": {
+ "description": "the tactics the resource covers",
+ "type": "array",
+ "example": [
+ "reconnaissance",
+ "exfiltration"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataThreatAnalysisTechniques": {
+ "description": "the techniques the resource covers, these have to be aligned with the tactics being used",
+ "type": "array",
+ "example": [
+ "T1548",
+ "T1548.001",
+ "T1134.003"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataPreviewImages": {
+ "description": "preview image file names. These will be taken from the solution artifacts",
+ "type": "array",
+ "example": [
+ "example.png",
+ "example2.jpeg"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataPreviewImagesDark": {
+ "description": "preview image file names. These will be taken from the solution artifacts. used for dark theme support",
+ "type": "array",
+ "example": [
+ "example.png",
+ "example2.jpeg"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataProperties": {
+ "description": "Metadata property bag.",
+ "required": [
+ "parentId",
+ "kind"
+ ],
+ "type": "object",
+ "properties": {
+ "contentId": {
+ "$ref": "#/definitions/metadataContentId",
+ "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name"
+ },
+ "parentId": {
+ "$ref": "#/definitions/metadataParentId",
+ "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)"
+ },
+ "version": {
+ "$ref": "#/definitions/metadataVersion",
+ "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks"
+ },
+ "kind": {
+ "$ref": "#/definitions/metadataKind",
+ "description": "The kind of content the metadata is for."
+ },
+ "source": {
+ "$ref": "#/definitions/metadataSource",
+ "description": "Source of the content. This is where/how it was created."
+ },
+ "author": {
+ "$ref": "#/definitions/metadataAuthor",
+ "description": "The creator of the content item."
+ },
+ "support": {
+ "$ref": "#/definitions/metadataSupport",
+ "description": "Support information for the metadata - type, name, contact information"
+ },
+ "dependencies": {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/metadataDependencies",
+ "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats."
+ },
+ "categories": {
+ "$ref": "#/definitions/metadataCategories",
+ "description": "Categories for the solution content item"
+ },
+ "providers": {
+ "$ref": "#/definitions/metadataProviders",
+ "description": "Providers for the solution content item"
+ },
+ "firstPublishDate": {
+ "$ref": "#/definitions/firstPublishDate",
+ "description": "first publish date solution content item"
+ },
+ "lastPublishDate": {
+ "$ref": "#/definitions/lastPublishDate",
+ "description": "last publish date for the solution content item"
+ },
+ "customVersion": {
+ "$ref": "#/definitions/metadataCustomVersion",
+ "description": "The custom version of the content. A optional free text"
+ },
+ "contentSchemaVersion": {
+ "$ref": "#/definitions/metadataContentSchemaVersion",
+ "description": "Schema version of the content. Can be used to distinguish between different flow based on the schema version"
+ },
+ "icon": {
+ "$ref": "#/definitions/metadataIcon",
+ "description": "the icon identifier. this id can later be fetched from the solution template"
+ },
+ "threatAnalysisTactics": {
+ "$ref": "#/definitions/metadataThreatAnalysisTactics",
+ "description": "the tactics the resource covers"
+ },
+ "threatAnalysisTechniques": {
+ "$ref": "#/definitions/metadataThreatAnalysisTechniques",
+ "description": "the techniques the resource covers, these have to be aligned with the tactics being used"
+ },
+ "previewImages": {
+ "$ref": "#/definitions/metadataPreviewImages",
+ "description": "preview image file names. These will be taken from the solution artifacts"
+ },
+ "previewImagesDark": {
+ "$ref": "#/definitions/metadataPreviewImagesDark",
+ "description": "preview image file names. These will be taken from the solution artifacts. used for dark theme support"
+ }
+ }
+ },
+ "metadataPropertiesPatch": {
+ "description": "Metadata property bag for patch requests. This is the same as the MetadataProperties, but with nothing required",
+ "type": "object",
+ "properties": {
+ "contentId": {
+ "$ref": "#/definitions/metadataContentId",
+ "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name"
+ },
+ "parentId": {
+ "$ref": "#/definitions/metadataParentId",
+ "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)"
+ },
+ "version": {
+ "$ref": "#/definitions/metadataVersion",
+ "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks"
+ },
+ "kind": {
+ "$ref": "#/definitions/metadataKind",
+ "description": "The kind of content the metadata is for."
+ },
+ "source": {
+ "$ref": "#/definitions/metadataSource",
+ "description": "Source of the content. This is where/how it was created."
+ },
+ "author": {
+ "$ref": "#/definitions/metadataAuthor",
+ "description": "The creator of the content item."
+ },
+ "support": {
+ "$ref": "#/definitions/metadataSupport",
+ "description": "Support information for the metadata - type, name, contact information"
+ },
+ "dependencies": {
+ "$ref": "./common/ContentCommonTypes.json#/definitions/metadataDependencies",
+ "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats."
+ },
+ "categories": {
+ "$ref": "#/definitions/metadataCategories",
+ "description": "Categories for the solution content item"
+ },
+ "providers": {
+ "$ref": "#/definitions/metadataProviders",
+ "description": "Providers for the solution content item"
+ },
+ "firstPublishDate": {
+ "$ref": "#/definitions/firstPublishDate",
+ "description": "first publish date solution content item"
+ },
+ "lastPublishDate": {
+ "$ref": "#/definitions/lastPublishDate",
+ "description": "last publish date for the solution content item"
+ },
+ "customVersion": {
+ "$ref": "#/definitions/metadataCustomVersion",
+ "description": "The custom version of the content. A optional free text"
+ },
+ "contentSchemaVersion": {
+ "$ref": "#/definitions/metadataContentSchemaVersion",
+ "description": "Schema version of the content. Can be used to distinguish between different flow based on the schema version"
+ },
+ "icon": {
+ "$ref": "#/definitions/metadataIcon",
+ "description": "the icon identifier. this id can later be fetched from the solution template"
+ },
+ "threatAnalysisTactics": {
+ "$ref": "#/definitions/metadataThreatAnalysisTactics",
+ "description": "the tactics the resource covers"
+ },
+ "threatAnalysisTechniques": {
+ "$ref": "#/definitions/metadataThreatAnalysisTechniques",
+ "description": "the techniques the resource covers, these have to be aligned with the tactics being used"
+ },
+ "previewImages": {
+ "$ref": "#/definitions/metadataPreviewImages",
+ "description": "preview image file names. These will be taken from the solution artifacts"
+ },
+ "previewImagesDark": {
+ "$ref": "#/definitions/metadataPreviewImagesDark",
+ "description": "preview image file names. These will be taken from the solution artifacts. used for dark theme support"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "Metadata": {
+ "description": "Metadata resource.",
+ "in": "body",
+ "name": "metadata",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MetadataModel"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "MetadataPatch": {
+ "description": "Partial metadata request.",
+ "in": "body",
+ "name": "metadataPatch",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/metadataPatch"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "MetadataName": {
+ "description": "The Metadata name.",
+ "in": "path",
+ "name": "metadataName",
+ "required": true,
+ "pattern": "^\\S+$",
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OfficeConsents.json
new file mode 100644
index 000000000000..cd1758c08460
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OfficeConsents.json
@@ -0,0 +1,234 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/officeConsents": {
+ "get": {
+ "x-ms-examples": {
+ "Get all office consents.": {
+ "$ref": "./examples/officeConsents/GetOfficeConsents.json"
+ }
+ },
+ "tags": [
+ "Office Consents"
+ ],
+ "description": "Gets all office365 consents.",
+ "operationId": "OfficeConsents_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OfficeConsentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/officeConsents/{consentId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an office consent.": {
+ "$ref": "./examples/officeConsents/GetOfficeConsentsById.json"
+ }
+ },
+ "tags": [
+ "Office Consents"
+ ],
+ "description": "Gets an office365 consent.",
+ "operationId": "OfficeConsents_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ConsentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OfficeConsent"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete an office consent.": {
+ "$ref": "./examples/officeConsents/DeleteOfficeConsents.json"
+ }
+ },
+ "tags": [
+ "Office Consents"
+ ],
+ "description": "Delete the office365 consent.",
+ "operationId": "OfficeConsents_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ConsentId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ConsentId": {
+ "description": "consent ID",
+ "in": "path",
+ "name": "consentId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "OfficeConsent": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "description": "Consent for Office365 tenant that already made.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficeConsentProperties",
+ "description": "Office consent properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "OfficeConsentList": {
+ "description": "List of all the office365 consents.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of office consents.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of the consents.",
+ "items": {
+ "$ref": "#/definitions/OfficeConsent"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "OfficeConsentProperties": {
+ "description": "Consent property bag.",
+ "properties": {
+ "tenantId": {
+ "description": "The tenantId of the Office365 with the consent.",
+ "type": "string"
+ },
+ "consentId": {
+ "description": "Help to easily cascade among the data layers.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OnboardingStates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OnboardingStates.json
new file mode 100644
index 000000000000..59975870bc4c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/OnboardingStates.json
@@ -0,0 +1,284 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/onboardingStates/{sentinelOnboardingStateName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get Sentinel onboarding state": {
+ "$ref": "./examples/onboardingStates/GetSentinelOnboardingState.json"
+ }
+ },
+ "tags": [
+ "SentinelOnboardingStates"
+ ],
+ "description": "Get Sentinel onboarding state",
+ "operationId": "SentinelOnboardingStates_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SentinelOnboardingStateName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SentinelOnboardingState"
+ }
+ },
+ "default": {
+ "description": "Error in getting the Sentinel onboarding state",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Create Sentinel onboarding state": {
+ "$ref": "./examples/onboardingStates/CreateSentinelOnboardingState.json"
+ }
+ },
+ "tags": [
+ "SentinelOnboardingStates"
+ ],
+ "description": "Create Sentinel onboarding state",
+ "operationId": "SentinelOnboardingStates_Create",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SentinelOnboardingStateName"
+ },
+ {
+ "$ref": "#/parameters/SentinelOnboardingStateParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SentinelOnboardingState"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SentinelOnboardingState"
+ }
+ },
+ "default": {
+ "description": "Error in creating the Sentinel onboarding state",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete Sentinel onboarding state": {
+ "$ref": "./examples/onboardingStates/DeleteSentinelOnboardingState.json"
+ }
+ },
+ "tags": [
+ "SentinelOnboardingStates"
+ ],
+ "description": "Delete Sentinel onboarding state",
+ "operationId": "SentinelOnboardingStates_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SentinelOnboardingStateName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error in deleting the Sentinel onboarding state",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/onboardingStates": {
+ "get": {
+ "x-ms-examples": {
+ "Get all Sentinel onboarding states": {
+ "$ref": "./examples/onboardingStates/GetAllSentinelOnboardingStates.json"
+ }
+ },
+ "tags": [
+ "SentinelOnboardingStates"
+ ],
+ "description": "Gets all Sentinel onboarding states",
+ "operationId": "SentinelOnboardingStates_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SentinelOnboardingStatesList"
+ }
+ },
+ "default": {
+ "description": "Error in listing the Sentinel onboarding states",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "SentinelOnboardingStateProperties": {
+ "description": "The Sentinel onboarding state properties",
+ "type": "object",
+ "properties": {
+ "customerManagedKey": {
+ "description": "Flag that indicates the status of the CMK setting",
+ "type": "boolean"
+ }
+ }
+ },
+ "SentinelOnboardingState": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Sentinel onboarding state",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SentinelOnboardingStateProperties",
+ "description": "The Sentinel onboarding state object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "SentinelOnboardingStatesList": {
+ "description": "List of the Sentinel onboarding states",
+ "properties": {
+ "value": {
+ "description": "Array of Sentinel onboarding states",
+ "items": {
+ "$ref": "#/definitions/SentinelOnboardingState"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SentinelOnboardingStateName": {
+ "description": "The Sentinel onboarding state name. Supports - default",
+ "in": "path",
+ "name": "sentinelOnboardingStateName",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "SentinelOnboardingStateParameter": {
+ "description": "The Sentinel onboarding state parameter",
+ "in": "body",
+ "name": "sentinelOnboardingStateParameter",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/SentinelOnboardingState"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Recommendations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Recommendations.json
new file mode 100644
index 000000000000..fefc18ae150a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Recommendations.json
@@ -0,0 +1,452 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/recommendations": {
+ "get": {
+ "x-ms-examples": {
+ "Get Recommendations list.": {
+ "$ref": "./examples/recommendations/GetRecommendations.json"
+ }
+ },
+ "tags": [
+ "recommendations"
+ ],
+ "description": "Gets a list of all recommendations.",
+ "operationId": "GetRecommendations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RecommendationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/recommendations/{recommendationId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a recommendation.": {
+ "$ref": "./examples/recommendations/GetRecommendation.json"
+ }
+ },
+ "tags": [
+ "recommendations"
+ ],
+ "description": "Gets a recommendation by its id.",
+ "operationId": "Get_SingleRecommendation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RecommendationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Recommendation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "patch": {
+ "x-ms-examples": {
+ "Creates a recommendation.": {
+ "$ref": "./examples/recommendations/PatchRecommendation.json"
+ }
+ },
+ "tags": [
+ "recommendations"
+ ],
+ "description": "Patch a recommendation.",
+ "operationId": "Update_Recommendation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RecommendationId"
+ },
+ {
+ "$ref": "#/parameters/RecommendationPatch"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Recommendation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/recommendations/{recommendationId}/triggerEvaluation": {
+ "post": {
+ "x-ms-examples": {
+ "Reevaluate a recommendation.": {
+ "$ref": "./examples/recommendations/ReevaluateRecommendation.json"
+ }
+ },
+ "tags": [
+ "recommendations"
+ ],
+ "description": "Reevaluate a recommendation.",
+ "operationId": "Reevaluate_Recommendation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RecommendationId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ReevaluateResponse"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Recommendation": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Recommendation object.",
+ "properties": {
+ "properties": {
+ "type": "object",
+ "$ref": "#/definitions/RecommendationProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RecommendationProperties": {
+ "description": "Recommendation properties object.",
+ "properties": {
+ "recommendationTypeId": {
+ "description": "Id of the recommendation type.",
+ "type": "string"
+ },
+ "state": {
+ "description": "State of the recommendation.",
+ "$ref": "#/definitions/RecommendationState"
+ },
+ "title": {
+ "description": "Title of the recommendation.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the recommendation.",
+ "type": "string"
+ },
+ "creationTimeUtc": {
+ "description": "The time stamp (UTC) when the recommendation was created.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastEvaluatedTimeUtc": {
+ "description": "The time stamp (UTC) when the recommendation was last evaluated.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "lastModifiedTimeUtc": {
+ "description": "The time stamp (UTC) when the recommendation was last modified.",
+ "type": "string",
+ "format": "date-time"
+ },
+ "suggestions": {
+ "description": "List of suggestions to take for this recommendation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RecommendedSuggestion"
+ },
+ "x-ms-identifiers": []
+ },
+ "resourceId": {
+ "description": "Id of the resource this recommendation refers to.",
+ "type": "string",
+ "x-nullable": true
+ },
+ "additionalProperties": {
+ "description": "Collection of additional properties for the recommendation.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-nullable": true
+ }
+ },
+ "required": [
+ "recommendationTypeId",
+ "state",
+ "title",
+ "description",
+ "creationTimeUtc",
+ "lastEvaluatedTimeUtc",
+ "lastModifiedTimeUtc",
+ "suggestions"
+ ],
+ "type": "object"
+ },
+ "RecommendationList": {
+ "description": "A list of recommendations",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Recommendation"
+ },
+ "description": "An list of recommendations"
+ },
+ "nextLink": {
+ "description": "Link to next page of resources.",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "RecommendedSuggestion": {
+ "description": "What suggestions should be taken to complete the recommendation.",
+ "properties": {
+ "suggestionTypeId": {
+ "description": "Id of the suggestion type.",
+ "type": "string"
+ },
+ "title": {
+ "description": "Title of the suggestion.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of the suggestion.",
+ "type": "string"
+ },
+ "action": {
+ "description": "Action of the suggestion.",
+ "type": "string"
+ },
+ "additionalProperties": {
+ "description": "Collection of additional properties for the suggestion.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-nullable": true
+ }
+ },
+ "required": [
+ "suggestionTypeId",
+ "title",
+ "description",
+ "action"
+ ],
+ "type": "object"
+ },
+ "RecommendationPatch": {
+ "description": "Recommendation Fields to update.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RecommendationPatchProperties"
+ }
+ },
+ "type": "object"
+ },
+ "RecommendationPatchProperties": {
+ "description": "Recommendation Fields Properties to update.",
+ "properties": {
+ "state": {
+ "description": "State of the recommendation.",
+ "$ref": "#/definitions/RecommendationState"
+ }
+ },
+ "type": "object"
+ },
+ "RecommendationState": {
+ "description": "State of recommendation.",
+ "type": "string",
+ "enum": [
+ "Active",
+ "InProgress",
+ "Dismissed",
+ "CompletedByUser",
+ "CompletedBySystem"
+ ],
+ "x-ms-enum": {
+ "name": "State",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Active",
+ "description": "Recommendation is active."
+ },
+ {
+ "value": "InProgress",
+ "description": "Recommendation is in progress."
+ },
+ {
+ "value": "Dismissed",
+ "description": "Recommendation has been dismissed."
+ },
+ {
+ "value": "CompletedByUser",
+ "description": "Recommendation has been completed by user."
+ },
+ {
+ "value": "CompletedBySystem",
+ "description": "Recommendation has been completed by the system."
+ }
+ ]
+ }
+ },
+ "ReevaluateResponse": {
+ "description": "Reevaluate response object.",
+ "properties": {
+ "lastEvaluatedTimeUtc": {
+ "description": "The time stamp (UTC) when the recommendation was last evaluated.",
+ "type": "string",
+ "format": "date-time"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "RecommendationId": {
+ "description": "Recommendation Id.",
+ "in": "path",
+ "name": "recommendationId",
+ "required": true,
+ "type": "string",
+ "format": "uuid",
+ "x-ms-parameter-location": "method"
+ },
+ "RecommendationPatch": {
+ "description": "Recommendation Fields to Update.",
+ "in": "body",
+ "name": "recommendationPatch",
+ "required": true,
+ "schema": {
+ "type": "object",
+ "$ref": "#/definitions/RecommendationPatch",
+ "x-ms-identifiers": []
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SecurityMLAnalyticsSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SecurityMLAnalyticsSettings.json
new file mode 100644
index 000000000000..c4207cf2e5ea
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SecurityMLAnalyticsSettings.json
@@ -0,0 +1,444 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/securityMLAnalyticsSettings": {
+ "get": {
+ "x-ms-examples": {
+ "Get all Security ML Analytics Settings.": {
+ "$ref": "./examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json"
+ }
+ },
+ "tags": [
+ "Security ML Analytics Settings"
+ ],
+ "description": "Gets all Security ML Analytics Settings.",
+ "operationId": "SecurityMLAnalyticsSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSettingsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/securityMLAnalyticsSettings/{settingsResourceName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a Anomaly Security ML Analytics Settings.": {
+ "$ref": "./examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json"
+ }
+ },
+ "tags": [
+ "Security ML Analytics Settings"
+ ],
+ "description": "Gets the Security ML Analytics Settings.",
+ "operationId": "SecurityMLAnalyticsSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SettingsResourceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSetting"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a Anomaly Security ML Analytics Settings.": {
+ "$ref": "./examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json"
+ }
+ },
+ "tags": [
+ "Security ML Analytics Settings"
+ ],
+ "description": "Creates or updates the Security ML Analytics Settings.",
+ "operationId": "SecurityMLAnalyticsSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SettingsResourceName"
+ },
+ {
+ "$ref": "#/parameters/SecurityMLAnalyticsSetting"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSetting"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSetting"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a Security ML Analytics Settings.": {
+ "$ref": "./examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json"
+ }
+ },
+ "tags": [
+ "Security ML Analytics Settings"
+ ],
+ "description": "Delete the Security ML Analytics Settings.",
+ "operationId": "SecurityMLAnalyticsSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SettingsResourceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "SecurityMLAnalyticsSetting": {
+ "description": "The security ML Analytics setting",
+ "in": "body",
+ "name": "securityMLAnalyticsSetting",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSetting"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "SettingsResourceName": {
+ "description": "Security ML Analytics Settings resource name",
+ "in": "path",
+ "name": "settingsResourceName",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "SecurityMLAnalyticsSetting": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Security ML Analytics Setting",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSettingsKindEnum",
+ "description": "The kind of security ML Analytics Settings"
+ }
+ },
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "SecurityMLAnalyticsSettingsKindEnum": {
+ "description": "The kind of security ML analytics settings",
+ "enum": [
+ "Anomaly"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SecurityMLAnalyticsSettingsKind",
+ "values": [
+ {
+ "value": "Anomaly"
+ }
+ ]
+ }
+ },
+ "SecurityMLAnalyticsSettingsList": {
+ "description": "List all the SecurityMLAnalyticsSettings",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of SecurityMLAnalyticsSettings.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of SecurityMLAnalyticsSettings",
+ "items": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSetting"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "AnomalySecurityMLAnalyticsSettings": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/SecurityMLAnalyticsSetting"
+ }
+ ],
+ "description": "Represents Anomaly Security ML Analytics Settings",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AnomalySecurityMLAnalyticsSettingsProperties",
+ "description": "Anomaly Security ML Analytics Settings properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Anomaly"
+ },
+ "AnomalySecurityMLAnalyticsSettingsProperties": {
+ "description": "AnomalySecurityMLAnalytics settings base property bag.",
+ "properties": {
+ "description": {
+ "description": "The description of the SecurityMLAnalyticsSettings.",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name for settings created by this SecurityMLAnalyticsSettings.",
+ "type": "string"
+ },
+ "enabled": {
+ "description": "Determines whether this settings is enabled or disabled.",
+ "type": "boolean"
+ },
+ "lastModifiedUtc": {
+ "description": "The last time that this SecurityMLAnalyticsSettings has been modified.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "requiredDataConnectors": {
+ "description": "The required data sources for this SecurityMLAnalyticsSettings",
+ "items": {
+ "$ref": "#/definitions/SecurityMLAnalyticsSettingsDataSource"
+ },
+ "x-ms-identifiers": [
+ "connectorId"
+ ],
+ "type": "array"
+ },
+ "tactics": {
+ "description": "The tactics of the SecurityMLAnalyticsSettings",
+ "items": {
+ "$ref": "./common/AlertTypes.json#/definitions/AttackTactic"
+ },
+ "type": "array"
+ },
+ "techniques": {
+ "description": "The techniques of the SecurityMLAnalyticsSettings",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "anomalyVersion": {
+ "description": "The anomaly version of the AnomalySecurityMLAnalyticsSettings.",
+ "type": "string"
+ },
+ "customizableObservations": {
+ "description": "The customizable observations of the AnomalySecurityMLAnalyticsSettings.",
+ "type": "object"
+ },
+ "frequency": {
+ "description": "The frequency that this SecurityMLAnalyticsSettings will be run.",
+ "format": "duration",
+ "type": "string"
+ },
+ "settingsStatus": {
+ "$ref": "#/definitions/AnomalySecurityMLAnalyticsSettingsStatus",
+ "description": "The anomaly SecurityMLAnalyticsSettings status"
+ },
+ "isDefaultSettings": {
+ "description": "Determines whether this anomaly security ml analytics settings is a default settings",
+ "type": "boolean"
+ },
+ "anomalySettingsVersion": {
+ "description": "The anomaly settings version of the Anomaly security ml analytics settings that dictates whether job version gets updated or not.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "settingsDefinitionId": {
+ "description": "The anomaly settings definition Id",
+ "format": "uuid",
+ "type": "string"
+ }
+ },
+ "required": [
+ "displayName",
+ "enabled",
+ "anomalyVersion",
+ "frequency",
+ "settingsStatus",
+ "isDefaultSettings"
+ ],
+ "type": "object"
+ },
+ "SecurityMLAnalyticsSettingsDataSource": {
+ "description": "security ml analytics settings data sources",
+ "properties": {
+ "connectorId": {
+ "description": "The connector id that provides the following data types",
+ "type": "string"
+ },
+ "dataTypes": {
+ "description": "The data types used by the security ml analytics settings",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "AnomalySecurityMLAnalyticsSettingsStatus": {
+ "description": "The anomaly SecurityMLAnalyticsSettings status",
+ "enum": [
+ "Production",
+ "Flighting"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "SettingsStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "description": "Anomaly settings status in Production mode",
+ "value": "Production"
+ },
+ {
+ "description": "Anomaly settings status in Flighting mode",
+ "value": "Flighting"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Settings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Settings.json
new file mode 100644
index 000000000000..ebe7873ea893
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Settings.json
@@ -0,0 +1,438 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/settings": {
+ "get": {
+ "x-ms-examples": {
+ "Get all settings.": {
+ "$ref": "./examples/settings/GetAllSettings.json"
+ }
+ },
+ "tags": [
+ "Settings"
+ ],
+ "description": "List of all the settings",
+ "operationId": "ProductSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SettingList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/settings/{settingsName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get EyesOn settings.": {
+ "$ref": "./examples/settings/GetEyesOnSetting.json"
+ }
+ },
+ "tags": [
+ "Settings"
+ ],
+ "description": "Gets a setting.",
+ "operationId": "ProductSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SettingsName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Settings"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete EyesOn settings.": {
+ "$ref": "./examples/settings/DeleteEyesOnSetting.json"
+ }
+ },
+ "tags": [
+ "Settings"
+ ],
+ "description": "Delete setting of the product.",
+ "operationId": "ProductSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SettingsName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Update EyesOn settings.": {
+ "$ref": "./examples/settings/UpdateEyesOnSetting.json"
+ }
+ },
+ "tags": [
+ "Settings"
+ ],
+ "description": "Updates setting.",
+ "operationId": "ProductSettings_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SettingsName"
+ },
+ {
+ "$ref": "#/parameters/Settings"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Settings"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Settings"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "SettingList": {
+ "description": "List of all the settings.",
+ "properties": {
+ "value": {
+ "description": "Array of settings.",
+ "items": {
+ "$ref": "#/definitions/Settings"
+ },
+ "type": "array"
+ },
+ "nextLink": {
+ "description": "URL to fetch the next set of settings.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "Settings": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "The Setting.",
+ "properties": {
+ "kind": {
+ "description": "The kind of the setting",
+ "enum": [
+ "Anomalies",
+ "EyesOn",
+ "EntityAnalytics",
+ "Ueba"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SettingKind"
+ }
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "discriminator": "kind",
+ "type": "object"
+ },
+ "Anomalies": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Settings"
+ }
+ ],
+ "description": "Settings with single toggle.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AnomaliesSettingsProperties",
+ "description": "Anomalies properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Anomalies"
+ },
+ "AnomaliesSettingsProperties": {
+ "description": "Anomalies property bag.",
+ "properties": {
+ "isEnabled": {
+ "description": "Determines whether the setting is enable or disabled.",
+ "readOnly": true,
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "EyesOn": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Settings"
+ }
+ ],
+ "description": "Settings with single toggle.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/EyesOnSettingsProperties",
+ "description": "EyesOn properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "EyesOn"
+ },
+ "EyesOnSettingsProperties": {
+ "description": "EyesOn property bag.",
+ "properties": {
+ "isEnabled": {
+ "description": "Determines whether the setting is enable or disabled.",
+ "readOnly": true,
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "EntityAnalytics": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Settings"
+ }
+ ],
+ "description": "Settings with single toggle.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/EntityAnalyticsProperties",
+ "description": "EntityAnalytics properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "EntityAnalytics"
+ },
+ "EntityAnalyticsProperties": {
+ "description": "EntityAnalytics property bag.",
+ "properties": {
+ "entityProviders": {
+ "description": "The relevant entity providers that are synced",
+ "items": {
+ "$ref": "#/definitions/EntityProviders"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "EntityProviders": {
+ "description": "The entity provider that is synced.",
+ "enum": [
+ "ActiveDirectory",
+ "AzureActiveDirectory"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityProviders"
+ }
+ },
+ "Ueba": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Settings"
+ }
+ ],
+ "description": "Settings with single toggle.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/UebaProperties",
+ "description": "Ueba properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Ueba"
+ },
+ "UebaProperties": {
+ "description": "Ueba property bag.",
+ "properties": {
+ "dataSources": {
+ "description": "The relevant data sources that enriched by ueba",
+ "items": {
+ "$ref": "#/definitions/UebaDataSources"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "UebaDataSources": {
+ "description": "The data source that enriched by ueba.",
+ "enum": [
+ "AuditLogs",
+ "AzureActivity",
+ "SecurityEvent",
+ "SigninLogs"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "UebaDataSources"
+ }
+ }
+ },
+ "parameters": {
+ "Settings": {
+ "description": "The setting",
+ "in": "body",
+ "name": "settings",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Settings"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "SettingsName": {
+ "description": "The setting name. Supports - Anomalies, EyesOn, EntityAnalytics, Ueba",
+ "in": "path",
+ "name": "settingsName",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method",
+ "pattern": "^[a-zA-Z][a-zA-Z0-9]*$"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SourceControls.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SourceControls.json
new file mode 100644
index 000000000000..622a200e806c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/SourceControls.json
@@ -0,0 +1,1005 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/listRepositories": {
+ "post": {
+ "x-ms-examples": {
+ "Get repository list.": {
+ "$ref": "./examples/repositories/GetRepositories.json"
+ }
+ },
+ "tags": [
+ "Repositories"
+ ],
+ "description": "Gets a list of repositories metadata.",
+ "operationId": "SourceControl_listRepositories",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RepositoryAccess"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RepoList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/sourcecontrols": {
+ "get": {
+ "x-ms-examples": {
+ "Get all source controls.": {
+ "$ref": "./examples/sourcecontrols/GetSourceControls.json"
+ }
+ },
+ "tags": [
+ "SourceControls"
+ ],
+ "description": "Gets all source controls, without source control items.",
+ "operationId": "SourceControls_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControlList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/sourcecontrols/{sourceControlId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a source control.": {
+ "$ref": "./examples/sourcecontrols/GetSourceControlById.json"
+ }
+ },
+ "tags": [
+ "SourceControls"
+ ],
+ "description": "Gets a source control byt its identifier.",
+ "operationId": "SourceControls_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SourceControlIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a source control.": {
+ "$ref": "./examples/sourcecontrols/CreateSourceControl.json"
+ }
+ },
+ "tags": [
+ "SourceControls"
+ ],
+ "description": "Creates a source control.",
+ "operationId": "SourceControls_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SourceControlIdParameter"
+ },
+ {
+ "$ref": "#/parameters/SourceControl"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/sourcecontrols/{sourceControlId}/delete": {
+ "post": {
+ "x-ms-examples": {
+ "Delete a source control.": {
+ "$ref": "./examples/sourcecontrols/DeleteSourceControl.json"
+ }
+ },
+ "tags": [
+ "SourceControls"
+ ],
+ "description": "Delete a source control.",
+ "operationId": "SourceControls_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/SourceControlIdParameter"
+ },
+ {
+ "$ref": "#/parameters/RepositoryAccess"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Source control deleted.",
+ "schema": {
+ "$ref": "#/definitions/Warning"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "RepoList": {
+ "description": "List all the source controls.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of repositories.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of repositories.",
+ "items": {
+ "$ref": "#/definitions/Repo"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "Repo": {
+ "description": "Represents a repository.",
+ "properties": {
+ "url": {
+ "description": "The url to access the repository.",
+ "type": "string"
+ },
+ "fullName": {
+ "description": "The name of the repository.",
+ "type": "string"
+ },
+ "installationId": {
+ "description": "The installation id of the repository.",
+ "type": "integer",
+ "format": "int64"
+ },
+ "branches": {
+ "description": "Array of branches.",
+ "items": {
+ "description": "name of branch.",
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "x-ms-azure-resource": false,
+ "type": "object"
+ },
+ "SourceControlList": {
+ "description": "List all the source controls.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of source controls.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of source controls.",
+ "items": {
+ "$ref": "#/definitions/SourceControl"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "SourceControl": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a SourceControl in Azure Security Insights.",
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "properties": {
+ "description": "source control properties",
+ "$ref": "#/definitions/SourceControlProperties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "SourceControlProperties": {
+ "description": "Describes source control properties",
+ "properties": {
+ "id": {
+ "description": "The id (a Guid) of the source control",
+ "type": "string",
+ "readOnly": true
+ },
+ "version": {
+ "$ref": "#/definitions/Version",
+ "description": "The version number associated with the source control",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name of the source control",
+ "type": "string"
+ },
+ "description": {
+ "description": "A description of the source control",
+ "type": "string"
+ },
+ "repoType": {
+ "$ref": "#/definitions/RepoType",
+ "description": "The repository type of the source control",
+ "type": "string"
+ },
+ "contentTypes": {
+ "description": "Array of source control content types.",
+ "items": {
+ "$ref": "#/definitions/ContentType"
+ },
+ "type": "array"
+ },
+ "repository": {
+ "description": "Repository metadata.",
+ "$ref": "#/definitions/Repository"
+ },
+ "servicePrincipal": {
+ "description": "Service principal metadata.",
+ "$ref": "#/definitions/ServicePrincipal"
+ },
+ "repositoryAccess": {
+ "description": "Repository access credentials. This is write-only object and it never returns back to a user.",
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ],
+ "$ref": "#/definitions/RepositoryAccess"
+ },
+ "repositoryResourceInfo": {
+ "description": "Information regarding the resources created in user's repository.",
+ "$ref": "#/definitions/RepositoryResourceInfo"
+ },
+ "lastDeploymentInfo": {
+ "description": "Information regarding the latest deployment for the source control.",
+ "$ref": "#/definitions/DeploymentInfo"
+ },
+ "pullRequest": {
+ "description": "Information regarding the pull request of the source control.",
+ "$ref": "#/definitions/PullRequest"
+ }
+ },
+ "required": [
+ "displayName",
+ "repoType",
+ "contentTypes",
+ "repository"
+ ],
+ "type": "object"
+ },
+ "RepositoryAccess": {
+ "type": "object",
+ "description": "Credentials to access repository.",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "description": "The kind of repository access credentials",
+ "$ref": "#/definitions/RepositoryAccessKind"
+ },
+ "code": {
+ "x-ms-secret": true,
+ "type": "string",
+ "description": "OAuth Code. Required when `kind` is `OAuth`"
+ },
+ "state": {
+ "x-ms-secret": true,
+ "type": "string",
+ "description": "OAuth State. Required when `kind` is `OAuth`"
+ },
+ "clientId": {
+ "type": "string",
+ "description": "OAuth ClientId. Required when `kind` is `OAuth`"
+ },
+ "token": {
+ "x-ms-secret": true,
+ "type": "string",
+ "description": "Personal Access Token. Required when `kind` is `PAT`"
+ },
+ "installationId": {
+ "type": "string",
+ "description": "Application installation ID. Required when `kind` is `App`. Supported by `GitHub` only."
+ }
+ }
+ },
+ "RepositoryAccessObject": {
+ "description": "Credentials to access repository.",
+ "type": "object",
+ "required": [
+ "repositoryAccess"
+ ],
+ "properties": {
+ "repositoryAccess": {
+ "description": "RepositoryAccess properties",
+ "$ref": "#/definitions/RepositoryAccess",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RepositoryAccessProperties": {
+ "description": "Credentials to access repository.",
+ "type": "object",
+ "required": [
+ "properties"
+ ],
+ "properties": {
+ "properties": {
+ "description": "RepositoryAccess properties",
+ "$ref": "#/definitions/RepositoryAccessObject",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "Repository": {
+ "type": "object",
+ "required": [
+ "url",
+ "branch"
+ ],
+ "description": "metadata of a repository.",
+ "properties": {
+ "url": {
+ "description": "Url of repository.",
+ "type": "string"
+ },
+ "branch": {
+ "description": "Branch name of repository.",
+ "type": "string"
+ },
+ "displayUrl": {
+ "description": "Display url of repository.",
+ "type": "string"
+ },
+ "deploymentLogsUrl": {
+ "description": "Url to access repository action logs.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "ServicePrincipal": {
+ "type": "object",
+ "description": "Service principal metadata.",
+ "properties": {
+ "id": {
+ "description": "Id of service principal.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tenantId": {
+ "description": "Tenant id of service principal.",
+ "type": "string",
+ "readOnly": true
+ },
+ "appId": {
+ "description": "App id of service principal.",
+ "type": "string",
+ "readOnly": true
+ },
+ "credentialsExpireOn": {
+ "format": "date-time",
+ "description": "Expiration time of service principal credentials.",
+ "type": "string"
+ }
+ }
+ },
+ "RepositoryResourceInfo": {
+ "type": "object",
+ "description": "Resources created in user's repository for the source-control.",
+ "properties": {
+ "webhook": {
+ "type": "object",
+ "description": "The webhook object created for the source-control.",
+ "$ref": "#/definitions/Webhook"
+ },
+ "gitHubResourceInfo": {
+ "type": "object",
+ "description": "Resources created in GitHub for this source-control.",
+ "$ref": "#/definitions/GitHubResourceInfo"
+ },
+ "azureDevOpsResourceInfo": {
+ "type": "object",
+ "description": "Resources created in Azure DevOps for this source-control.",
+ "$ref": "#/definitions/AzureDevOpsResourceInfo"
+ }
+ }
+ },
+ "Webhook": {
+ "description": "Detail about the webhook object.",
+ "type": "object",
+ "properties": {
+ "webhookId": {
+ "description": "Unique identifier for the webhook.",
+ "type": "string",
+ "readOnly": true
+ },
+ "webhookUrl": {
+ "description": "URL that gets invoked by the webhook.",
+ "type": "string",
+ "readOnly": true
+ },
+ "webhookSecretUpdateTime": {
+ "format": "date-time",
+ "description": "Time when the webhook secret was updated.",
+ "type": "string",
+ "readOnly": true
+ },
+ "rotateWebhookSecret": {
+ "description": "A flag to instruct the backend service to rotate webhook secret.",
+ "type": "boolean"
+ }
+ }
+ },
+ "GitHubResourceInfo": {
+ "readOnly": true,
+ "description": "Resources created in GitHub repository.",
+ "type": "object",
+ "properties": {
+ "appInstallationId": {
+ "description": "GitHub application installation id.",
+ "type": "string"
+ }
+ }
+ },
+ "AzureDevOpsResourceInfo": {
+ "readOnly": true,
+ "description": "Resources created in Azure DevOps repository.",
+ "type": "object",
+ "properties": {
+ "pipelineId": {
+ "description": "Id of the pipeline created for the source-control.",
+ "type": "string"
+ },
+ "serviceConnectionId": {
+ "description": "Id of the service-connection created for the source-control.",
+ "type": "string"
+ }
+ }
+ },
+ "DeploymentInfo": {
+ "readOnly": true,
+ "description": "Information regarding a deployment.",
+ "type": "object",
+ "properties": {
+ "deploymentFetchStatus": {
+ "$ref": "#/definitions/DeploymentFetchStatus",
+ "description": "Status while fetching the last deployment.",
+ "type": "string"
+ },
+ "deployment": {
+ "$ref": "#/definitions/Deployment",
+ "description": "Deployment information.",
+ "type": "object"
+ },
+ "message": {
+ "description": "Additional details about the deployment that can be shown to the user.",
+ "type": "string"
+ }
+ }
+ },
+ "Deployment": {
+ "description": "Description about a deployment.",
+ "type": "object",
+ "properties": {
+ "deploymentId": {
+ "description": "Deployment identifier.",
+ "type": "string"
+ },
+ "deploymentState": {
+ "$ref": "#/definitions/DeploymentState",
+ "description": "Current status of the deployment.",
+ "type": "string"
+ },
+ "deploymentResult": {
+ "$ref": "#/definitions/DeploymentResult",
+ "description": "The outcome of the deployment.",
+ "type": "string"
+ },
+ "deploymentTime": {
+ "format": "date-time",
+ "description": "The time when the deployment finished.",
+ "type": "string"
+ },
+ "deploymentLogsUrl": {
+ "description": "Url to access repository action logs.",
+ "type": "string"
+ }
+ }
+ },
+ "ContentType": {
+ "description": "The content type of a source control path.",
+ "enum": [
+ "AnalyticRule",
+ "AutomationRule",
+ "HuntingQuery",
+ "Parser",
+ "Playbook",
+ "Workbook"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ContentType",
+ "values": [
+ {
+ "value": "AnalyticRule"
+ },
+ {
+ "value": "AutomationRule"
+ },
+ {
+ "value": "HuntingQuery"
+ },
+ {
+ "value": "Parser"
+ },
+ {
+ "value": "Playbook"
+ },
+ {
+ "value": "Workbook"
+ }
+ ]
+ }
+ },
+ "RepoType": {
+ "description": "The type of repository.",
+ "enum": [
+ "Github",
+ "AzureDevOps"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RepoType",
+ "values": [
+ {
+ "value": "Github"
+ },
+ {
+ "value": "AzureDevOps"
+ }
+ ]
+ }
+ },
+ "RepositoryAccessKind": {
+ "description": "The kind of repository access credentials",
+ "enum": [
+ "OAuth",
+ "PAT",
+ "App"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RepositoryAccessKind",
+ "values": [
+ {
+ "value": "OAuth"
+ },
+ {
+ "value": "PAT"
+ },
+ {
+ "value": "App"
+ }
+ ]
+ }
+ },
+ "Version": {
+ "readOnly": true,
+ "description": "The version of the source control.",
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Version",
+ "values": [
+ {
+ "value": "V1"
+ },
+ {
+ "value": "V2"
+ }
+ ]
+ }
+ },
+ "DeploymentFetchStatus": {
+ "description": "Status while trying to fetch the deployment information.",
+ "enum": [
+ "Success",
+ "Unauthorized",
+ "NotFound"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DeploymentFetchStatus",
+ "values": [
+ {
+ "value": "Success"
+ },
+ {
+ "value": "Unauthorized"
+ },
+ {
+ "value": "NotFound"
+ }
+ ]
+ }
+ },
+ "DeploymentState": {
+ "description": "The current state of the deployment.",
+ "enum": [
+ "In_Progress",
+ "Completed",
+ "Queued",
+ "Canceling"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DeploymentState",
+ "values": [
+ {
+ "value": "In_Progress"
+ },
+ {
+ "value": "Completed"
+ },
+ {
+ "value": "Queued"
+ },
+ {
+ "value": "Canceling"
+ }
+ ]
+ }
+ },
+ "DeploymentResult": {
+ "description": "Status while trying to fetch the deployment information.",
+ "enum": [
+ "Success",
+ "Canceled",
+ "Failed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DeploymentResult",
+ "values": [
+ {
+ "value": "Success"
+ },
+ {
+ "value": "Canceled"
+ },
+ {
+ "value": "Failed"
+ }
+ ]
+ }
+ },
+ "PullRequest": {
+ "readOnly": true,
+ "description": "Information regarding pull request for protected branches.",
+ "type": "object",
+ "properties": {
+ "url": {
+ "description": "URL of pull request",
+ "type": "string",
+ "readOnly": true
+ },
+ "state": {
+ "$ref": "#/definitions/PullRequestState",
+ "description": "State of the pull request",
+ "type": "object",
+ "readOnly": true
+ }
+ }
+ },
+ "PullRequestState": {
+ "description": "Status of the pull request.",
+ "enum": [
+ "Open",
+ "Closed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "state",
+ "values": [
+ {
+ "value": "Open"
+ },
+ {
+ "value": "Closed"
+ }
+ ]
+ }
+ },
+ "Warning": {
+ "description": "Warning response structure.",
+ "properties": {
+ "warning": {
+ "$ref": "#/definitions/WarningBody",
+ "description": "Warning data."
+ }
+ },
+ "type": "object"
+ },
+ "WarningBody": {
+ "readOnly": true,
+ "description": "Warning details.",
+ "properties": {
+ "code": {
+ "description": "An identifier for the warning. Codes are invariant and are intended to be consumed programmatically.",
+ "readOnly": true,
+ "type": "object",
+ "$ref": "#/definitions/WarningCode"
+ },
+ "message": {
+ "description": "A message describing the warning, intended to be suitable for display in a user interface.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "details": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WarningBody"
+ },
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "WarningCode": {
+ "readOnly": true,
+ "description": "The type of repository.",
+ "enum": [
+ "SourceControlWarning_DeleteServicePrincipal",
+ "SourceControlWarning_DeletePipelineFromAzureDevOps",
+ "SourceControlWarning_DeleteWorkflowAndSecretFromGitHub",
+ "SourceControlWarning_DeleteRoleAssignment",
+ "SourceControl_DeletedWithWarnings"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "WarningCode",
+ "values": [
+ {
+ "value": "SourceControlWarning_DeleteServicePrincipal"
+ },
+ {
+ "value": "SourceControlWarning_DeletePipelineFromAzureDevOps"
+ },
+ {
+ "value": "SourceControlWarning_DeleteWorkflowAndSecretFromGitHub"
+ },
+ {
+ "value": "SourceControlWarning_DeleteRoleAssignment"
+ },
+ {
+ "value": "SourceControl_DeletedWithWarnings"
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "RepoTypeParameter": {
+ "description": "The repo type.",
+ "in": "body",
+ "name": "repoType",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/RepoType"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "SourceControlIdParameter": {
+ "description": "Source control Id",
+ "in": "path",
+ "name": "sourceControlId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "SourceControl": {
+ "description": "The SourceControl",
+ "in": "body",
+ "name": "sourceControl",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SourceControl"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "RepositoryAccess": {
+ "description": "The repository access credentials.",
+ "in": "body",
+ "name": "repositoryAccess",
+ "required": true,
+ "schema": {
+ "required": [
+ "repositoryAccess"
+ ],
+ "$ref": "#/definitions/RepositoryAccessProperties"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligence.json
new file mode 100644
index 000000000000..8b43aca5186c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligence.json
@@ -0,0 +1,1097 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/createIndicator": {
+ "post": {
+ "x-ms-examples": {
+ "Create a new Threat Intelligence": {
+ "$ref": "./examples/threatintelligence/CreateThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Create a new threat intelligence indicator.",
+ "operationId": "ThreatIntelligenceIndicator_CreateIndicator",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceProperties"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to create indicators.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/indicators": {
+ "get": {
+ "x-ms-examples": {
+ "Get all threat intelligence indicators": {
+ "$ref": "./examples/threatintelligence/GetThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Get all threat intelligence indicators.",
+ "operationId": "ThreatIntelligenceIndicators_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataFilter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to get indicators.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/indicators/{name}": {
+ "get": {
+ "x-ms-examples": {
+ "View a threat intelligence indicator by name": {
+ "$ref": "./examples/threatintelligence/GetThreatIntelligenceById.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "View a threat intelligence indicator by name.",
+ "operationId": "ThreatIntelligenceIndicator_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to view an indicator.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Update a threat Intelligence indicator": {
+ "$ref": "./examples/threatintelligence/UpdateThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Update a threat Intelligence indicator.",
+ "operationId": "ThreatIntelligenceIndicator_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceProperties"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to update an indicator.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a threat intelligence indicator": {
+ "$ref": "./examples/threatintelligence/DeleteThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Delete a threat intelligence indicator.",
+ "operationId": "ThreatIntelligenceIndicator_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to delete an indicator.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/queryIndicators": {
+ "post": {
+ "x-ms-examples": {
+ "Query threat intelligence indicators as per filtering criteria": {
+ "$ref": "./examples/threatintelligence/QueryThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Query threat intelligence indicators as per filtering criteria.",
+ "operationId": "ThreatIntelligenceIndicator_QueryIndicators",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceFilteringCriteria"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/metrics": {
+ "get": {
+ "x-ms-examples": {
+ "Get threat intelligence indicators metrics.": {
+ "$ref": "./examples/threatintelligence/CollectThreatIntelligenceMetrics.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Get threat intelligence indicators metrics (Indicators counts by Type, Threat Type, Source).",
+ "operationId": "ThreatIntelligenceIndicatorMetrics_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceMetricsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to get metrics.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/indicators/{name}/appendTags": {
+ "post": {
+ "x-ms-examples": {
+ "Append tags to a threat intelligence indicator": {
+ "$ref": "./examples/threatintelligence/AppendTagsThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Append tags to a threat intelligence indicator.",
+ "operationId": "ThreatIntelligenceIndicator_AppendTags",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceAppendTags"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to append tags.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/main/indicators/{name}/replaceTags": {
+ "post": {
+ "x-ms-examples": {
+ "Replace tags to a Threat Intelligence": {
+ "$ref": "./examples/threatintelligence/ReplaceTagsThreatIntelligence.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Replace tags added to a threat intelligence indicator.",
+ "operationId": "ThreatIntelligenceIndicator_ReplaceTags",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceName"
+ },
+ {
+ "$ref": "#/parameters/ThreatIntelligenceReplaceTags"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed to replace tags.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "parameters": {
+ "ThreatIntelligenceName": {
+ "description": "Threat intelligence indicator name field.",
+ "in": "path",
+ "name": "name",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ThreatIntelligenceProperties": {
+ "description": "Properties of threat intelligence indicators to create and update.",
+ "in": "body",
+ "name": "ThreatIntelligenceProperties",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceIndicatorModel"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "ThreatIntelligenceReplaceTags": {
+ "description": "Tags in the threat intelligence indicator to be replaced.",
+ "in": "body",
+ "name": "ThreatIntelligenceReplaceTags",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceIndicatorModel"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "ThreatIntelligenceFilteringCriteria": {
+ "description": "Filtering criteria for querying threat intelligence indicators.",
+ "in": "body",
+ "name": "ThreatIntelligenceFilteringCriteria",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceFilteringCriteria"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "ThreatIntelligenceIndicatorEntityKind": {
+ "description": "The threat intelligence entity kind",
+ "in": "query",
+ "name": "ctiEntityKind",
+ "required": false,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "ThreatIntelligenceAppendTags": {
+ "description": "The threat intelligence append tags request body",
+ "in": "body",
+ "name": "ThreatIntelligenceAppendTags",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceAppendTags"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "definitions": {
+ "ThreatIntelligenceInformationList": {
+ "description": "List of all the threat intelligence information objects.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of information objects.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of threat intelligence information objects.",
+ "items": {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "ThreatIntelligenceInformation": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Threat intelligence information object.",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/ThreatIntelligenceResourceInnerKind",
+ "description": "The kind of the entity."
+ }
+ },
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "ThreatIntelligenceIndicatorModel": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/ThreatIntelligenceInformation"
+ }
+ ],
+ "description": "Threat intelligence indicator entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ThreatIntelligenceIndicatorProperties",
+ "description": "Threat Intelligence Entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "indicator"
+ },
+ "ThreatIntelligenceResourceInnerKind": {
+ "description": "The kind of the threat intelligence entity",
+ "enum": [
+ "indicator"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ThreatIntelligenceResourceInnerKind",
+ "values": [
+ {
+ "description": "Entity represents threat intelligence indicator in the system.",
+ "value": "indicator"
+ }
+ ]
+ }
+ },
+ "ThreatIntelligenceIndicatorProperties": {
+ "allOf": [
+ {
+ "$ref": "./common/EntityTypes.json#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Describes threat intelligence entity properties",
+ "properties": {
+ "threatIntelligenceTags": {
+ "description": "List of tags",
+ "items": {
+ "description": "tag",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "lastUpdatedTimeUtc": {
+ "description": "Last updated time in UTC",
+ "type": "string"
+ },
+ "source": {
+ "description": "Source of a threat intelligence entity",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "Display name of a threat intelligence entity",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of a threat intelligence entity",
+ "type": "string"
+ },
+ "indicatorTypes": {
+ "description": "Indicator types of threat intelligence entities",
+ "items": {
+ "description": "Indicator type of a threat intelligence entity",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "pattern": {
+ "description": "Pattern of a threat intelligence entity",
+ "type": "string"
+ },
+ "patternType": {
+ "description": "Pattern type of a threat intelligence entity",
+ "type": "string"
+ },
+ "patternVersion": {
+ "description": "Pattern version of a threat intelligence entity",
+ "type": "string"
+ },
+ "killChainPhases": {
+ "description": "Kill chain phases",
+ "items": {
+ "description": "Kill chain phase",
+ "$ref": "#/definitions/ThreatIntelligenceKillChainPhase"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "parsedPattern": {
+ "description": "Parsed patterns",
+ "items": {
+ "description": "Parsed pattern",
+ "$ref": "#/definitions/ThreatIntelligenceParsedPattern"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "externalId": {
+ "description": "External ID of threat intelligence entity",
+ "type": "string"
+ },
+ "createdByRef": {
+ "description": "Created by reference of threat intelligence entity",
+ "type": "string"
+ },
+ "defanged": {
+ "description": "Is threat intelligence entity defanged",
+ "type": "boolean"
+ },
+ "externalLastUpdatedTimeUtc": {
+ "description": "External last updated time in UTC",
+ "type": "string"
+ },
+ "externalReferences": {
+ "description": "External References",
+ "items": {
+ "description": "external_reference",
+ "$ref": "#/definitions/ThreatIntelligenceExternalReference"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "granularMarkings": {
+ "description": "Granular Markings",
+ "items": {
+ "description": "Granular marking",
+ "$ref": "#/definitions/ThreatIntelligenceGranularMarkingModel"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "labels": {
+ "description": "Labels of threat intelligence entity",
+ "items": {
+ "description": "label",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "revoked": {
+ "description": "Is threat intelligence entity revoked",
+ "type": "boolean"
+ },
+ "confidence": {
+ "description": "Confidence of threat intelligence entity",
+ "type": "integer",
+ "format": "int32"
+ },
+ "objectMarkingRefs": {
+ "description": "Threat intelligence entity object marking references",
+ "items": {
+ "description": "Threat intelligence entity object marking reference",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "language": {
+ "description": "Language of threat intelligence entity",
+ "type": "string"
+ },
+ "threatTypes": {
+ "description": "Threat types",
+ "items": {
+ "description": "Threat type",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "validFrom": {
+ "description": "Valid from",
+ "type": "string"
+ },
+ "validUntil": {
+ "description": "Valid until",
+ "type": "string"
+ },
+ "created": {
+ "description": "Created by",
+ "type": "string"
+ },
+ "modified": {
+ "description": "Modified by",
+ "type": "string"
+ },
+ "extensions": {
+ "description": "Extensions map",
+ "type": "object",
+ "additionalProperties": {}
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceKillChainPhase": {
+ "description": "Describes threat kill chain phase entity",
+ "properties": {
+ "killChainName": {
+ "description": "Kill chainName name",
+ "type": "string"
+ },
+ "phaseName": {
+ "description": "Phase name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceParsedPattern": {
+ "description": "Describes parsed pattern entity",
+ "properties": {
+ "patternTypeKey": {
+ "description": "Pattern type key",
+ "type": "string"
+ },
+ "patternTypeValues": {
+ "description": "Pattern type keys",
+ "items": {
+ "description": "Pattern type key",
+ "$ref": "#/definitions/ThreatIntelligenceParsedPatternTypeValue"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceParsedPatternTypeValue": {
+ "description": "Describes threat kill chain phase entity",
+ "properties": {
+ "valueType": {
+ "description": "Type of the value",
+ "type": "string"
+ },
+ "value": {
+ "description": "Value of parsed pattern",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceGranularMarkingModel": {
+ "description": "Describes threat granular marking model entity",
+ "properties": {
+ "language": {
+ "description": "Language granular marking model",
+ "type": "string"
+ },
+ "markingRef": {
+ "description": "marking reference granular marking model",
+ "type": "integer",
+ "format": "int32"
+ },
+ "selectors": {
+ "description": "granular marking model selectors",
+ "items": {
+ "description": "granular marking model selector",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceExternalReference": {
+ "description": "Describes external reference",
+ "properties": {
+ "description": {
+ "description": "External reference description",
+ "type": "string"
+ },
+ "externalId": {
+ "description": "External reference ID",
+ "type": "string"
+ },
+ "sourceName": {
+ "description": "External reference source name",
+ "type": "string"
+ },
+ "url": {
+ "description": "External reference URL",
+ "type": "string"
+ },
+ "hashes": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "External reference hashes"
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceFilteringCriteria": {
+ "description": "Filtering criteria for querying threat intelligence indicators.",
+ "properties": {
+ "pageSize": {
+ "description": "Page size",
+ "type": "integer",
+ "format": "int32"
+ },
+ "minConfidence": {
+ "description": "Minimum confidence.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "maxConfidence": {
+ "description": "Maximum confidence.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "minValidUntil": {
+ "description": "Start time for ValidUntil filter.",
+ "type": "string"
+ },
+ "maxValidUntil": {
+ "description": "End time for ValidUntil filter.",
+ "type": "string"
+ },
+ "includeDisabled": {
+ "description": "Parameter to include/exclude disabled indicators.",
+ "type": "boolean"
+ },
+ "sortBy": {
+ "description": "Columns to sort by and sorting order",
+ "items": {
+ "description": "Sort By",
+ "$ref": "#/definitions/ThreatIntelligenceSortingCriteria"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "sources": {
+ "description": "Sources of threat intelligence indicators",
+ "items": {
+ "description": "Source",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "patternTypes": {
+ "description": "Pattern types",
+ "items": {
+ "description": "Pattern type",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "threatTypes": {
+ "description": "Threat types of threat intelligence indicators",
+ "items": {
+ "description": "Threat type of a threat intelligence indicator",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "ids": {
+ "description": "Ids of threat intelligence indicators",
+ "items": {
+ "description": "Id of a threat intelligence indicator",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "keywords": {
+ "description": "Keywords for searching threat intelligence indicators",
+ "items": {
+ "description": "keyword for searching threat intelligence indicators",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "skipToken": {
+ "description": "Skip token.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceSortingCriteria": {
+ "description": "List of available columns for sorting",
+ "properties": {
+ "itemKey": {
+ "description": "Column name",
+ "type": "string"
+ },
+ "sortOrder": {
+ "$ref": "#/definitions/ThreatIntelligenceSortingOrder",
+ "description": "Sorting order (ascending/descending/unsorted)."
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceSortingOrder": {
+ "description": "Sorting order (ascending/descending/unsorted).",
+ "enum": [
+ "unsorted",
+ "ascending",
+ "descending"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ThreatIntelligenceSortingOrder",
+ "values": [
+ {
+ "value": "unsorted"
+ },
+ {
+ "value": "ascending"
+ },
+ {
+ "value": "descending"
+ }
+ ]
+ }
+ },
+ "ThreatIntelligenceAppendTags": {
+ "description": "Array of tags to be appended to the threat intelligence indicator.",
+ "properties": {
+ "threatIntelligenceTags": {
+ "description": "List of tags to be appended.",
+ "items": {
+ "description": "parameter",
+ "type": "string"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceMetricsList": {
+ "description": "List of all the threat intelligence metric fields (type/threat type/source).",
+ "properties": {
+ "value": {
+ "description": "Array of threat intelligence metric fields (type/threat type/source).",
+ "items": {
+ "$ref": "#/definitions/ThreatIntelligenceMetrics"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "ThreatIntelligenceMetrics": {
+ "description": "Threat intelligence metrics.",
+ "properties": {
+ "properties": {
+ "description": "Threat intelligence metrics.",
+ "$ref": "#/definitions/ThreatIntelligenceMetric"
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceMetric": {
+ "description": "Describes threat intelligence metric",
+ "properties": {
+ "lastUpdatedTimeUtc": {
+ "description": "Last updated indicator metric",
+ "type": "string"
+ },
+ "threatTypeMetrics": {
+ "description": "Threat type metrics",
+ "items": {
+ "description": "parameter",
+ "$ref": "#/definitions/ThreatIntelligenceMetricEntity"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "patternTypeMetrics": {
+ "description": "Pattern type metrics",
+ "items": {
+ "description": "parameter",
+ "$ref": "#/definitions/ThreatIntelligenceMetricEntity"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "sourceMetrics": {
+ "description": "Source metrics",
+ "items": {
+ "description": "parameter",
+ "$ref": "#/definitions/ThreatIntelligenceMetricEntity"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "ThreatIntelligenceMetricEntity": {
+ "description": "Describes threat intelligence metric entity",
+ "properties": {
+ "metricName": {
+ "description": "Metric name",
+ "type": "string"
+ },
+ "metricValue": {
+ "description": "Metric value",
+ "type": "integer",
+ "format": "int32"
+ }
+ },
+ "type": "object"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceCount.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceCount.json
new file mode 100644
index 000000000000..332246fd4ef8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceCount.json
@@ -0,0 +1,348 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/{tiType}/count": {
+ "post": {
+ "x-ms-examples": {
+ "Get TI object count": {
+ "$ref": "./examples/threatintelligence/PostThreatIntelligenceCount.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Gets the count of all TI objects for the workspace.",
+ "operationId": "ThreatIntelligence_Count",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/TiType"
+ },
+ {
+ "$ref": "#/parameters/CountQuery"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceCount"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ThreatIntelligenceCount": {
+ "description": "Count of all the threat intelligence objects on the workspace that match the provided query.",
+ "properties": {
+ "count": {
+ "description": "Count of all the threat intelligence objects on the workspace that match the provided query.",
+ "readOnly": true,
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object",
+ "required": [
+ "count"
+ ]
+ },
+ "CountQuery": {
+ "description": "Represents a query to run on the TI objects in the workspace.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/QueryProperties",
+ "description": "Query properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "QueryProperties": {
+ "description": "Describes the query properties",
+ "properties": {
+ "condition": {
+ "$ref": "#/definitions/ConditionProperties",
+ "description": "Represents a condition used to query for TI objects.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ConditionProperties": {
+ "description": "Represents a condition used to query for TI objects.",
+ "properties": {
+ "stixObjectType": {
+ "description": "The STIX type for the objects returned by this query.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "clauses": {
+ "description": "The list of clauses to be evaluated in disjunction or conjunction base on the specified top level connective operator.",
+ "items": {
+ "$ref": "#/definitions/ConditionClause"
+ },
+ "type": "array"
+ },
+ "conditionConnective": {
+ "description": "The top level connective operator for this condition.",
+ "type": "string",
+ "$ref": "#/definitions/Connective"
+ }
+ },
+ "required": [
+ "clauses"
+ ],
+ "type": "object"
+ },
+ "ConditionClause": {
+ "description": "Represents a single clause to be evaluated by a NormalizedCondition.",
+ "properties": {
+ "clauseConnective": {
+ "description": "The connective used to join all values in this ConditionClause",
+ "type": "string",
+ "$ref": "#/definitions/Connective"
+ },
+ "field": {
+ "description": "The name of the field that is evaluated.",
+ "type": "string"
+ },
+ "operator": {
+ "description": "Represents an operator in a ConditionClause.",
+ "type": "string",
+ "enum": [
+ "Equals",
+ "NotEquals",
+ "LessThan",
+ "LessThanEqual",
+ "GreaterThan",
+ "GreaterThanEqual",
+ "StringContains",
+ "StringNotContains",
+ "StringStartsWith",
+ "StringNotStartsWith",
+ "StringEndsWith",
+ "StringNotEndsWith",
+ "StringIsEmpty",
+ "IsNull",
+ "IsTrue",
+ "IsFalse",
+ "ArrayContains",
+ "ArrayNotContains",
+ "OnOrAfterRelative",
+ "AfterRelative",
+ "OnOrBeforeRelative",
+ "BeforeRelative",
+ "OnOrAfterAbsolute",
+ "AfterAbsolute",
+ "OnOrBeforeAbsolute",
+ "BeforeAbsolute"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Operator",
+ "values": [
+ {
+ "value": "Equals"
+ },
+ {
+ "value": "NotEquals"
+ },
+ {
+ "value": "LessThan"
+ },
+ {
+ "value": "LessThanEqual"
+ },
+ {
+ "value": "GreaterThan"
+ },
+ {
+ "value": "GreaterThanEqual"
+ },
+ {
+ "value": "StringContains"
+ },
+ {
+ "value": "StringNotContains"
+ },
+ {
+ "value": "StringStartsWith"
+ },
+ {
+ "value": "StringNotStartsWith"
+ },
+ {
+ "value": "StringEndsWith"
+ },
+ {
+ "value": "StringNotEndsWith"
+ },
+ {
+ "value": "StringIsEmpty"
+ },
+ {
+ "value": "IsNull"
+ },
+ {
+ "value": "IsTrue"
+ },
+ {
+ "value": "IsFalse"
+ },
+ {
+ "value": "ArrayContains"
+ },
+ {
+ "value": "ArrayNotContains"
+ },
+ {
+ "value": "OnOrAfterRelative"
+ },
+ {
+ "value": "AfterRelative"
+ },
+ {
+ "value": "OnOrBeforeRelative"
+ },
+ {
+ "value": "BeforeRelative"
+ },
+ {
+ "value": "OnOrAfterAbsolute"
+ },
+ {
+ "value": "AfterAbsolute"
+ },
+ {
+ "value": "OnOrBeforeAbsolute"
+ },
+ {
+ "value": "BeforeAbsolute"
+ }
+ ]
+ }
+ },
+ "values": {
+ "description": "The top level connective operator for this condition.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "field",
+ "operator",
+ "values"
+ ],
+ "type": "object"
+ },
+ "Connective": {
+ "description": "Represents boolean connectives used to join clauses in conditions.",
+ "readOnly": true,
+ "enum": [
+ "And",
+ "Or"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Connective",
+ "values": [
+ {
+ "description": "'And' connective",
+ "value": "And"
+ },
+ {
+ "description": "'Or' connective",
+ "value": "Or"
+ }
+ ]
+ }
+ }
+ },
+ "parameters": {
+ "CountQuery": {
+ "description": "The query to run on the TI objects in the workspace.",
+ "in": "body",
+ "name": "query",
+ "schema": {
+ "$ref": "#/definitions/CountQuery"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "TiType": {
+ "description": "TI type",
+ "in": "path",
+ "name": "tiType",
+ "required": true,
+ "enum": [
+ "main"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TiType",
+ "values": [
+ {
+ "value": "main"
+ }
+ ]
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceQuery.json
new file mode 100644
index 000000000000..6b915530f686
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceQuery.json
@@ -0,0 +1,583 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/threatIntelligence/{tiType}/query": {
+ "post": {
+ "x-ms-examples": {
+ "Get TI objects": {
+ "$ref": "./examples/threatintelligence/PostThreatIntelligenceQuery.json"
+ }
+ },
+ "tags": [
+ "ThreatIntelligence"
+ ],
+ "description": "Gets all TI objects for the workspace.",
+ "operationId": "ThreatIntelligence_Query",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/TiType"
+ },
+ {
+ "$ref": "#/parameters/Query"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/ThreatIntelligenceList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "TIObject": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "description": "Represents a threat intelligence object in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TIObjectCommonProperties",
+ "description": "The properties of the TI object",
+ "type": "object",
+ "x-ms-client-flatten": true
+ },
+ "kind": {
+ "description": "The kind of the TI object",
+ "enum": [
+ "AttackPattern",
+ "Identity",
+ "Indicator",
+ "Relationship",
+ "ThreatActor"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TIObjectKind",
+ "values": [
+ {
+ "description": "A TI object that represents an attack pattern.",
+ "value": "AttackPattern"
+ },
+ {
+ "description": "A TI object that represents an identity.",
+ "value": "Identity"
+ },
+ {
+ "description": "A TI object that represents an indicator.",
+ "value": "Indicator"
+ },
+ {
+ "description": "A TI object that represents a relationship between two TI objects.",
+ "value": "Relationship"
+ },
+ {
+ "description": "A TI object that represents a threat actor.",
+ "value": "ThreatActor"
+ }
+ ]
+ }
+ }
+ },
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "ThreatIntelligenceList": {
+ "description": "List all the threat intelligence objects on the workspace that match the provided query.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of threat intelligence objects.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of threat intelligence objects on the workspace that match the provided query.",
+ "items": {
+ "$ref": "#/definitions/TIObject"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "TIObjectCommonProperties": {
+ "description": "Describes properties common to all threat intelligence objects",
+ "properties": {
+ "data": {
+ "description": "The core STIX object that this TI object represents.",
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {}
+ },
+ "createdBy": {
+ "description": "The UserInfo of the user/entity which originally created this TI object.",
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "readOnly": true,
+ "type": "object"
+ },
+ "source": {
+ "description": "The source name for this TI object.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "firstIngestedTimeUtc": {
+ "description": "The timestamp for the first time this object was ingested.",
+ "readOnly": true,
+ "format": "date-time",
+ "type": "string"
+ },
+ "lastIngestedTimeUtc": {
+ "description": "The timestamp for the last time this object was ingested.",
+ "readOnly": true,
+ "format": "date-time",
+ "type": "string"
+ },
+ "ingestionRulesVersion": {
+ "description": "The ID of the rules version that was active when this TI object was last ingested.",
+ "readOnly": true,
+ "format": "uuid",
+ "type": "string"
+ },
+ "lastUpdateMethod": {
+ "description": "The name of the method/application that initiated the last write to this TI object.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "lastModifiedBy": {
+ "description": "The UserInfo of the user/entity which last modified this TI object.",
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "readOnly": true,
+ "type": "object"
+ },
+ "lastUpdatedDateTimeUtc": {
+ "description": "The timestamp for the last time this TI object was updated.",
+ "readOnly": true,
+ "format": "date-time",
+ "type": "string"
+ },
+ "relationshipHints": {
+ "description": "A dictionary used to help follow relationships from this object to other STIX objects. The keys are field names from the STIX object (in the 'data' field), and the values are lists of sources that can be prepended to the object ID in order to efficiently locate the target TI object.",
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationshipHint"
+ }
+ }
+ },
+ "type": "object"
+ },
+ "RelationshipHint": {
+ "description": "An object used to help follow relationships from this object to other STIX objects.",
+ "properties": {
+ "fieldName": {
+ "type": "string"
+ },
+ "source": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "Query": {
+ "description": "Represents a query to run on the TI objects in the workspace.",
+ "properties": {
+ "condition": {
+ "description": "Represents a condition used to query for TI objects.",
+ "properties": {
+ "stixObjectType": {
+ "description": "The STIX type for the objects returned by this query.",
+ "type": "string"
+ },
+ "clauses": {
+ "description": "The list of clauses to be evaluated in disjunction or conjunction base on the specified top level connective operator.",
+ "items": {
+ "$ref": "#/definitions/ConditionClause"
+ },
+ "type": "array"
+ },
+ "conditionConnective": {
+ "description": "The top level connective operator for this condition.",
+ "type": "string",
+ "$ref": "#/definitions/Connective"
+ }
+ },
+ "required": [
+ "clauses"
+ ],
+ "type": "object"
+ },
+ "sortBy": {
+ "description": "Specifies how to sort the query results.",
+ "properties": {
+ "direction": {
+ "description": "The direction to sort the results by.",
+ "enum": [
+ "ASC",
+ "DESC"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SortingDirection",
+ "values": [
+ {
+ "description": "Indicates that the query should be sorted from lowest-to-highest value.",
+ "value": "ASC"
+ },
+ {
+ "description": "Indicates that the query should be sorted from lowest-to-highest value.",
+ "value": "DESC"
+ }
+ ]
+ }
+ },
+ "field": {
+ "description": "Represents the field to sort the results by.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "maxPageSize": {
+ "description": "Represents the maximum size of the page that will be returned from the query API.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "minPageSize": {
+ "description": "Represents the minimum size of the page that will be returned from the query API.",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "Connective": {
+ "description": "Represents boolean connectives used to join clauses in conditions.",
+ "enum": [
+ "And",
+ "Or"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Connective",
+ "values": [
+ {
+ "description": "'And' connective",
+ "value": "And"
+ },
+ {
+ "description": "'Or' connective",
+ "value": "Or"
+ }
+ ]
+ }
+ },
+ "ConditionClause": {
+ "description": "Represents a single clause to be evaluated by a NormalizedCondition.",
+ "properties": {
+ "clauseConnective": {
+ "description": "The connective used to join all values in this ConditionClause",
+ "type": "string",
+ "$ref": "#/definitions/Connective"
+ },
+ "field": {
+ "description": "The name of the field that is evaluated.",
+ "type": "string"
+ },
+ "operator": {
+ "description": "Represents an operator in a ConditionClause.",
+ "type": "string",
+ "enum": [
+ "Equals",
+ "NotEquals",
+ "LessThan",
+ "LessThanEqual",
+ "GreaterThan",
+ "GreaterThanEqual",
+ "StringContains",
+ "StringNotContains",
+ "StringStartsWith",
+ "StringNotStartsWith",
+ "StringEndsWith",
+ "StringNotEndsWith",
+ "StringIsEmpty",
+ "IsNull",
+ "IsTrue",
+ "IsFalse",
+ "ArrayContains",
+ "ArrayNotContains",
+ "OnOrAfterRelative",
+ "AfterRelative",
+ "OnOrBeforeRelative",
+ "BeforeRelative",
+ "OnOrAfterAbsolute",
+ "AfterAbsolute",
+ "OnOrBeforeAbsolute",
+ "BeforeAbsolute"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "Operator",
+ "values": [
+ {
+ "value": "Equals"
+ },
+ {
+ "value": "NotEquals"
+ },
+ {
+ "value": "LessThan"
+ },
+ {
+ "value": "LessThanEqual"
+ },
+ {
+ "value": "GreaterThan"
+ },
+ {
+ "value": "GreaterThanEqual"
+ },
+ {
+ "value": "StringContains"
+ },
+ {
+ "value": "StringNotContains"
+ },
+ {
+ "value": "StringStartsWith"
+ },
+ {
+ "value": "StringNotStartsWith"
+ },
+ {
+ "value": "StringEndsWith"
+ },
+ {
+ "value": "StringNotEndsWith"
+ },
+ {
+ "value": "StringIsEmpty"
+ },
+ {
+ "value": "IsNull"
+ },
+ {
+ "value": "IsTrue"
+ },
+ {
+ "value": "IsFalse"
+ },
+ {
+ "value": "ArrayContains"
+ },
+ {
+ "value": "ArrayNotContains"
+ },
+ {
+ "value": "OnOrAfterRelative"
+ },
+ {
+ "value": "AfterRelative"
+ },
+ {
+ "value": "OnOrBeforeRelative"
+ },
+ {
+ "value": "BeforeRelative"
+ },
+ {
+ "value": "OnOrAfterAbsolute"
+ },
+ {
+ "value": "AfterAbsolute"
+ },
+ {
+ "value": "OnOrBeforeAbsolute"
+ },
+ {
+ "value": "BeforeAbsolute"
+ }
+ ]
+ }
+ },
+ "values": {
+ "description": "The top level connective operator for this condition.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "field",
+ "operator",
+ "values"
+ ],
+ "type": "object"
+ },
+ "ThreatActor": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/TIObject"
+ }
+ ],
+ "description": "Represents a threat actor in Azure Security Insights.",
+ "type": "object"
+ },
+ "AttackPattern": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/TIObject"
+ }
+ ],
+ "description": "Represents an attack pattern in Azure Security Insights.",
+ "type": "object"
+ },
+ "Identity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/TIObject"
+ }
+ ],
+ "description": "Represents an identity in Azure Security Insights.",
+ "type": "object"
+ },
+ "Relationship": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/TIObject"
+ }
+ ],
+ "description": "Represents a relationship in Azure Security Insights.",
+ "type": "object"
+ },
+ "Indicator": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/TIObject"
+ }
+ ],
+ "description": "Represents an indicator in Azure Security Insights.",
+ "properties": {
+ "observables": {
+ "description": "The observables of this indicator",
+ "items": {
+ "description": "An observable of this indicator",
+ "properties": {
+ "type": {
+ "description": "The type of the observable of this indicator",
+ "type": "string"
+ },
+ "value": {
+ "description": "The value of the observable of this indicator",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "readOnly": true
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "Query": {
+ "description": "The query to run on the TI objects in the workspace.",
+ "in": "body",
+ "name": "query",
+ "schema": {
+ "$ref": "#/definitions/Query"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "TiType": {
+ "description": "TI type",
+ "in": "path",
+ "name": "tiType",
+ "required": true,
+ "enum": [
+ "main"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "TiType",
+ "values": [
+ {
+ "value": "main"
+ }
+ ]
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/TriggeredAnalyticsRuleRuns.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/TriggeredAnalyticsRuleRuns.json
new file mode 100644
index 000000000000..0bfb52c2d55e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/TriggeredAnalyticsRuleRuns.json
@@ -0,0 +1,354 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns/{ruleRunId}": {
+ "get": {
+ "tags": [
+ "triggered analytics rule run"
+ ],
+ "description": "Gets the triggered analytics rule run.",
+ "operationId": "triggeredAnalyticsRuleRun_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "description": "the triggered rule id",
+ "in": "path",
+ "name": "ruleRunId",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/TriggeredAnalyticsRuleRun"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "triggeredAnalyticsRuleRun_Get": {
+ "$ref": "./examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns": {
+ "get": {
+ "tags": [
+ "triggered analytics rule runs"
+ ],
+ "description": "Gets the triggered analytics rule runs.",
+ "operationId": "getTriggeredAnalyticsRuleRuns_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/TriggeredAnalyticsRuleRuns"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "triggeredAnalyticsRuleRuns_Get": {
+ "$ref": "./examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}/triggerRuleRun": {
+ "post": {
+ "tags": [
+ "trigger analytics rule run"
+ ],
+ "description": "triggers analytics rule run",
+ "operationId": "alertRule_TriggerRuleRun",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/RuleId"
+ },
+ {
+ "$ref": "#/parameters/AnalyticsRuleRunTriggerParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "The analytics rule run was successfully triggered.",
+ "headers": {
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "triggerRuleRun_Post": {
+ "$ref": "./examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ProvisioningState": {
+ "enum": [
+ "Accepted",
+ "InProgress",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "description": "The triggered analytics rule run provisioning state",
+ "type": "string",
+ "readOnly": true,
+ "example": "Accepted",
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Accepted"
+ },
+ {
+ "value": "InProgress"
+ },
+ {
+ "value": "Succeeded"
+ },
+ {
+ "value": "Failed"
+ },
+ {
+ "value": "Canceled"
+ }
+ ]
+ }
+ },
+ "TriggeredAnalyticsRuleRun": {
+ "required": [
+ "properties"
+ ],
+ "description": "The triggered analytics rule run",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TriggeredAnalyticsRuleRunProperties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "TriggeredAnalyticsRuleRunProperties": {
+ "required": [
+ "executionTimeUtc",
+ "provisioningState",
+ "ruleId",
+ "triggeredAnalyticsRuleRunId"
+ ],
+ "description": "The triggered analytics rule run Properties",
+ "type": "object",
+ "properties": {
+ "executionTimeUtc": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "ruleId": {
+ "type": "string"
+ },
+ "triggeredAnalyticsRuleRunId": {
+ "type": "string"
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ },
+ "ruleRunAdditionalData": {
+ "type": "object",
+ "additionalProperties": {}
+ }
+ }
+ },
+ "TriggeredAnalyticsRuleRuns": {
+ "required": [
+ "value"
+ ],
+ "description": "The triggered analytics rule run array",
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TriggeredAnalyticsRuleRun"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "AnalyticsRuleRunTriggerProperties": {
+ "required": [
+ "executionTimeUtc"
+ ],
+ "description": "The Analytics Rule Run Trigger properties",
+ "type": "object",
+ "properties": {
+ "executionTimeUtc": {
+ "format": "date-time",
+ "type": "string"
+ }
+ }
+ },
+ "AnalyticsRuleRunTrigger": {
+ "required": [
+ "properties"
+ ],
+ "description": "Analytics Rule Run Trigger request",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AnalyticsRuleRunTriggerProperties",
+ "description": "The analytics Rule Run Trigger request",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "RuleId": {
+ "description": "Alert rule ID",
+ "in": "path",
+ "name": "ruleId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "AnalyticsRuleRunTriggerParameter": {
+ "description": "The Analytics Rule Run Trigger parameter",
+ "in": "body",
+ "name": "analyticsRuleRunTriggerParameter",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AnalyticsRuleRunTrigger"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ },
+ "description": "Azure Active Directory OAuth2 Flow"
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "tags": [
+ {
+ "name": "AnalyticsOnDemandArm",
+ "description": "Controller that handles requests for triggeredAnalyticsRuleRuns ARM API."
+ },
+ {
+ "name": "AnalyticsOnDemandArm",
+ "description": "Triggered Analytics Rule Runs"
+ }
+ ],
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Watchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Watchlists.json
new file mode 100644
index 000000000000..66577cc77b3c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/Watchlists.json
@@ -0,0 +1,745 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists": {
+ "get": {
+ "x-ms-examples": {
+ "Get all watchlists.": {
+ "$ref": "./examples/watchlists/GetWatchlists.json"
+ }
+ },
+ "tags": [
+ "Watchlists"
+ ],
+ "description": "Gets all watchlists, without watchlist items.",
+ "operationId": "Watchlists_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WatchlistList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists/{watchlistAlias}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a watchlist.": {
+ "$ref": "./examples/watchlists/GetWatchlistByAlias.json"
+ }
+ },
+ "tags": [
+ "Watchlists"
+ ],
+ "description": "Gets a watchlist, without its watchlist items.",
+ "operationId": "Watchlists_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Watchlist"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a watchlist.": {
+ "$ref": "./examples/watchlists/DeleteWatchlist.json"
+ }
+ },
+ "tags": [
+ "Watchlists"
+ ],
+ "description": "Delete a watchlist.",
+ "operationId": "Watchlists_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "OK",
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "Contains the status URL on which clients are expected to poll the status of the delete operation.",
+ "type": "string"
+ },
+ "Location": {
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a watchlist.": {
+ "$ref": "./examples/watchlists/CreateWatchlist.json"
+ },
+ "Creates or updates a watchlist and bulk creates watchlist items.": {
+ "$ref": "./examples/watchlists/CreateWatchlistAndWatchlistItems.json"
+ }
+ },
+ "tags": [
+ "Watchlists"
+ ],
+ "description": "Create or update a Watchlist and its Watchlist Items (bulk creation, e.g. through text/csv content type). To create a Watchlist and its Items, we should call this endpoint with either rawContent or a valid SAR URI and contentType properties. The rawContent is mainly used for small watchlist (content size below 3.8 MB). The SAS URI enables the creation of large watchlist, where the content size can go up to 500 MB. The status of processing such large file can be polled through the URL returned in Azure-AsyncOperation header.",
+ "operationId": "Watchlists_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ },
+ {
+ "$ref": "#/parameters/Watchlist"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Watchlist"
+ }
+ },
+ "201": {
+ "description": "Created. The response includes the Provisioning State and the Azure-AsyncOperation header. To get the progress of the operation, call GET operation on the URL in Azure-AsyncOperation header field.",
+ "schema": {
+ "$ref": "#/definitions/Watchlist"
+ },
+ "headers": {
+ "Azure-AsyncOperation": {
+ "description": "Contains the status URL on which clients are expected to poll the status of the operation.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists/{watchlistAlias}/watchlistItems": {
+ "get": {
+ "x-ms-examples": {
+ "Get all watchlist Items.": {
+ "$ref": "./examples/watchlists/GetWatchlistItems.json"
+ }
+ },
+ "tags": [
+ "WatchlistItems"
+ ],
+ "description": "Gets all watchlist Items.",
+ "operationId": "WatchlistItems_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WatchlistItemList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/watchlists/{watchlistAlias}/watchlistItems/{watchlistItemId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a watchlist item.": {
+ "$ref": "./examples/watchlists/GetWatchlistItemById.json"
+ }
+ },
+ "tags": [
+ "WatchlistItems"
+ ],
+ "description": "Gets a watchlist, without its watchlist items.",
+ "operationId": "WatchlistItems_Get",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ },
+ {
+ "$ref": "#/parameters/WatchlistItemId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WatchlistItem"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a watchlist Item.": {
+ "$ref": "./examples/watchlists/DeleteWatchlistItem.json"
+ }
+ },
+ "tags": [
+ "WatchlistItems"
+ ],
+ "description": "Delete a watchlist item.",
+ "operationId": "WatchlistItems_Delete",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ },
+ {
+ "$ref": "#/parameters/WatchlistItemId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a watchlist item.": {
+ "$ref": "./examples/watchlists/CreateWatchlistItem.json"
+ }
+ },
+ "tags": [
+ "WatchlistItems"
+ ],
+ "description": "Creates or updates a watchlist item.",
+ "operationId": "WatchlistItems_CreateOrUpdate",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WatchlistAlias"
+ },
+ {
+ "$ref": "#/parameters/WatchlistItemId"
+ },
+ {
+ "$ref": "#/parameters/WatchlistItem"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WatchlistItem"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/WatchlistItem"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "WatchlistList": {
+ "description": "List all the watchlists.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of watchlists.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of watchlist.",
+ "items": {
+ "$ref": "#/definitions/Watchlist"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "Watchlist": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Watchlist in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WatchlistProperties",
+ "description": "Watchlist properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "WatchlistProperties": {
+ "description": "Describes watchlist properties",
+ "properties": {
+ "watchlistId": {
+ "description": "The id (a Guid) of the watchlist",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name of the watchlist",
+ "type": "string"
+ },
+ "provider": {
+ "description": "The provider of the watchlist",
+ "type": "string"
+ },
+ "source": {
+ "description": "The filename of the watchlist, called 'source'",
+ "type": "string"
+ },
+ "sourceType": {
+ "description": "The sourceType of the watchlist",
+ "enum": [
+ "Local file",
+ "Remote storage"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "sourceType"
+ }
+ },
+ "created": {
+ "description": "The time the watchlist was created",
+ "format": "date-time",
+ "type": "string"
+ },
+ "updated": {
+ "description": "The last time the watchlist was updated",
+ "format": "date-time",
+ "type": "string"
+ },
+ "createdBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that created the watchlist",
+ "type": "object"
+ },
+ "updatedBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that updated the watchlist",
+ "type": "object"
+ },
+ "description": {
+ "description": "A description of the watchlist",
+ "type": "string"
+ },
+ "watchlistType": {
+ "description": "The type of the watchlist",
+ "type": "string"
+ },
+ "watchlistAlias": {
+ "description": "The alias of the watchlist",
+ "type": "string"
+ },
+ "isDeleted": {
+ "description": "A flag that indicates if the watchlist is deleted or not",
+ "type": "boolean"
+ },
+ "labels": {
+ "description": "List of labels relevant to this watchlist",
+ "items": {
+ "$ref": "../../../common/2.0/types.json#/definitions/Label"
+ },
+ "type": "array"
+ },
+ "defaultDuration": {
+ "description": "The default duration of a watchlist (in ISO 8601 duration format)",
+ "format": "duration",
+ "type": "string"
+ },
+ "tenantId": {
+ "description": "The tenantId where the watchlist belongs to",
+ "type": "string"
+ },
+ "numberOfLinesToSkip": {
+ "description": "The number of lines in a csv/tsv content to skip before the header",
+ "type": "integer",
+ "format": "int32"
+ },
+ "rawContent": {
+ "description": "The raw content that represents to watchlist items to create. In case of csv/tsv content type, it's the content of the file that will parsed by the endpoint",
+ "type": "string"
+ },
+ "itemsSearchKey": {
+ "description": "The search key is used to optimize query performance when using watchlists for joins with other data. For example, enable a column with IP addresses to be the designated SearchKey field, then use this field as the key field when joining to other event data by IP address.",
+ "type": "string"
+ },
+ "contentType": {
+ "description": "The content type of the raw content. Example : text/csv or text/tsv ",
+ "type": "string"
+ },
+ "uploadStatus": {
+ "description": "The status of the Watchlist upload : New, InProgress or Complete. Pls note : When a Watchlist upload status is equal to InProgress, the Watchlist cannot be deleted",
+ "type": "string"
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/ProvisioningState"
+ }
+ },
+ "required": [
+ "displayName",
+ "provider",
+ "itemsSearchKey"
+ ],
+ "type": "object"
+ },
+ "WatchlistItemList": {
+ "description": "List all the watchlist items.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of watchlist item.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of watchlist items.",
+ "items": {
+ "$ref": "#/definitions/WatchlistItem"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "WatchlistItem": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "Represents a Watchlist item in Azure Security Insights.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WatchlistItemProperties",
+ "description": "Watchlist Item properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "WatchlistItemProperties": {
+ "description": "Describes watchlist item properties",
+ "properties": {
+ "watchlistItemType": {
+ "description": "The type of the watchlist item",
+ "type": "string"
+ },
+ "watchlistItemId": {
+ "description": "The id (a Guid) of the watchlist item",
+ "type": "string"
+ },
+ "tenantId": {
+ "description": "The tenantId to which the watchlist item belongs to",
+ "type": "string"
+ },
+ "isDeleted": {
+ "description": "A flag that indicates if the watchlist item is deleted or not",
+ "type": "boolean"
+ },
+ "created": {
+ "description": "The time the watchlist item was created",
+ "format": "date-time",
+ "type": "string"
+ },
+ "updated": {
+ "description": "The last time the watchlist item was updated",
+ "format": "date-time",
+ "type": "string"
+ },
+ "createdBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that created the watchlist item",
+ "type": "object"
+ },
+ "updatedBy": {
+ "$ref": "../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that updated the watchlist item"
+ },
+ "itemsKeyValue": {
+ "description": "key-value pairs for a watchlist item",
+ "type": "object"
+ },
+ "entityMapping": {
+ "description": "key-value pairs for a watchlist item entity mapping",
+ "type": "object"
+ }
+ },
+ "required": [
+ "itemsKeyValue"
+ ],
+ "type": "object"
+ },
+ "ProvisioningState": {
+ "description": "Describes provisioning state",
+ "enum": [
+ "New",
+ "InProgress",
+ "Uploading",
+ "Deleting",
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true
+ },
+ "readOnly": true
+ }
+ },
+ "parameters": {
+ "WatchlistAlias": {
+ "description": "Watchlist Alias",
+ "in": "path",
+ "name": "watchlistAlias",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "Watchlist": {
+ "description": "The watchlist",
+ "in": "body",
+ "name": "watchlist",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Watchlist"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "WatchlistItem": {
+ "description": "The watchlist item",
+ "in": "body",
+ "name": "watchlistItem",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WatchlistItem"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "WatchlistItemId": {
+ "description": "Watchlist Item Id (GUID)",
+ "in": "path",
+ "name": "watchlistItemId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerAssignments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerAssignments.json
new file mode 100644
index 000000000000..5b9e0d7b40bd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerAssignments.json
@@ -0,0 +1,737 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerAssignments": {
+ "get": {
+ "x-ms-examples": {
+ "Get all workspace manager assignments for the Sentinel workspace manager.": {
+ "$ref": "./examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Get all workspace manager assignments for the Sentinel workspace manager.",
+ "operationId": "WorkspaceManagerAssignments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerAssignmentList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/{workspaceManagerAssignmentName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a workspace manager assignment": {
+ "$ref": "./examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Gets a workspace manager assignment",
+ "operationId": "WorkspaceManagerAssignments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerAssignment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a workspace manager assignment.": {
+ "$ref": "./examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Creates or updates a workspace manager assignment.",
+ "operationId": "WorkspaceManagerAssignments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignment"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, created or updated an instance",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerAssignment"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerAssignment"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a workspace manager assignment.": {
+ "$ref": "./examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Deletes a workspace manager assignment",
+ "operationId": "WorkspaceManagerAssignments_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/{workspaceManagerAssignmentName}/jobs": {
+ "get": {
+ "x-ms-examples": {
+ "Get all jobs for the specified Sentinel workspace manager assignment.": {
+ "$ref": "./examples/workspaceManagerAssignments/GetAllJobs.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Get all jobs for the specified workspace manager assignment",
+ "operationId": "WorkspaceManagerAssignmentJobs_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/JobList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ },
+ "post": {
+ "x-ms-examples": {
+ "Creates a job for the specified workspace manager assignment": {
+ "$ref": "./examples/workspaceManagerAssignments/CreateJob.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Create a job for the specified workspace manager assignment",
+ "operationId": "WorkspaceManagerAssignmentJobs_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/{workspaceManagerAssignmentName}/jobs/{jobName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a workspace manager job": {
+ "$ref": "./examples/workspaceManagerAssignments/GetJob.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Gets a job",
+ "operationId": "WorkspaceManagerAssignmentJobs_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ },
+ {
+ "$ref": "#/parameters/JobName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/Job"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a workspace manager job.": {
+ "$ref": "./examples/workspaceManagerAssignments/DeleteJob.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerAssignments"
+ ],
+ "description": "Deletes the specified job from the specified workspace manager assignment",
+ "operationId": "WorkspaceManagerAssignmentJobs_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerAssignmentName"
+ },
+ {
+ "$ref": "#/parameters/JobName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "WorkspaceManagerAssignment": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/AzureEntityResource"
+ }
+ ],
+ "description": "The workspace manager assignment",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WorkspaceManagerAssignmentProperties",
+ "description": "The workspace manager assignment object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "WorkspaceManagerAssignmentProperties": {
+ "description": "The workspace manager assignment properties",
+ "properties": {
+ "targetResourceName": {
+ "description": "The resource name of the workspace manager group targeted by the workspace manager assignment",
+ "type": "string"
+ },
+ "lastJobEndTime": {
+ "description": "The time the last job associated to this assignment ended at",
+ "format": "date-time",
+ "type": "string",
+ "readOnly": true
+ },
+ "lastJobProvisioningState": {
+ "description": "State of the last job associated to this assignment",
+ "enum": [
+ "Succeeded",
+ "InProgress",
+ "Canceled",
+ "Failed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "provisioningState",
+ "values": [
+ {
+ "description": "The job succeeded",
+ "value": "Succeeded"
+ },
+ {
+ "description": "The job was canceled",
+ "value": "Canceled"
+ },
+ {
+ "description": "The job is in progress",
+ "value": "InProgress"
+ },
+ {
+ "description": "The job failed",
+ "value": "Failed"
+ }
+ ]
+ }
+ },
+ "items": {
+ "description": "List of resources included in this workspace manager assignment",
+ "items": {
+ "$ref": "#/definitions/assignmentItem"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "required": [
+ "targetResourceName",
+ "items"
+ ],
+ "type": "object"
+ },
+ "assignmentItem": {
+ "description": "An entity describing a content item.",
+ "properties": {
+ "resourceId": {
+ "description": "The resource id of the content item",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WorkspaceManagerAssignmentList": {
+ "description": "List of all the workspace manager assignments.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of workspace manager assignments.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of workspace manager assignments.",
+ "items": {
+ "$ref": "#/definitions/WorkspaceManagerAssignment"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "Job": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "description": "The assignment job",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/JobProperties",
+ "description": "The job object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "JobProperties": {
+ "description": "The job properties",
+ "properties": {
+ "endTime": {
+ "description": "The time the job completed",
+ "format": "date-time",
+ "type": "string",
+ "readOnly": true
+ },
+ "items": {
+ "description": "List of items published by the job",
+ "items": {
+ "$ref": "#/definitions/jobItem"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ },
+ "provisioningState": {
+ "description": "State of the job",
+ "enum": [
+ "Succeeded",
+ "InProgress",
+ "Canceled",
+ "Failed"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "provisioningState",
+ "values": [
+ {
+ "description": "The job succeeded",
+ "value": "Succeeded"
+ },
+ {
+ "description": "The job was canceled",
+ "value": "Canceled"
+ },
+ {
+ "description": "The job is in progress",
+ "value": "InProgress"
+ },
+ {
+ "description": "The job failed",
+ "value": "Failed"
+ }
+ ]
+ }
+ },
+ "startTime": {
+ "description": "The time the job started",
+ "format": "date-time",
+ "type": "string",
+ "readOnly": true
+ },
+ "errorMessage": {
+ "description": "Message to describe error, if an error exists",
+ "type": "string",
+ "readOnly": true
+ }
+ },
+ "type": "object"
+ },
+ "jobItem": {
+ "description": "An entity describing the publish status of a content item.",
+ "properties": {
+ "resourceId": {
+ "description": "The resource id of the content item",
+ "type": "string"
+ },
+ "status": {
+ "description": "Status of the item publication",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "InProgress"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "status",
+ "values": [
+ {
+ "description": "The item publication succeeded",
+ "value": "Succeeded"
+ },
+ {
+ "description": "The item publication failed",
+ "value": "Failed"
+ },
+ {
+ "description": "The item publication is in progress",
+ "value": "InProgress"
+ }
+ ]
+ }
+ },
+ "executionTime": {
+ "description": "The time the item publishing was completed",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "errors": {
+ "description": "The list of error descriptions if the item publication fails.",
+ "items": {
+ "$ref": "#/definitions/error"
+ },
+ "x-ms-identifiers": [],
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "error": {
+ "description": "The error description for why a publication failed",
+ "type": "object",
+ "properties": {
+ "memberResourceName": {
+ "description": "The member resource name for which the publication error occured",
+ "type": "string"
+ },
+ "errorMessage": {
+ "description": "The error message",
+ "type": "string"
+ }
+ },
+ "required": [
+ "memberResourceName",
+ "errorMessage"
+ ]
+ },
+ "JobList": {
+ "description": "List of all the jobs",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of jobs.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of jobs.",
+ "items": {
+ "$ref": "#/definitions/Job"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ },
+ "parameters": {
+ "WorkspaceManagerAssignmentName": {
+ "description": "The name of the workspace manager assignment",
+ "in": "path",
+ "name": "workspaceManagerAssignmentName",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$",
+ "x-ms-parameter-location": "method"
+ },
+ "WorkspaceManagerAssignment": {
+ "description": "The workspace manager assignment",
+ "in": "body",
+ "name": "workspaceManagerAssignment",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerAssignment"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "JobName": {
+ "description": "The job name",
+ "in": "path",
+ "name": "jobName",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerConfigurations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerConfigurations.json
new file mode 100644
index 000000000000..96123247ce35
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerConfigurations.json
@@ -0,0 +1,323 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerConfigurations": {
+ "get": {
+ "x-ms-examples": {
+ "Get all workspace manager configurations for a Sentinel workspace.": {
+ "$ref": "./examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerConfigurations"
+ ],
+ "description": "Gets all workspace manager configurations for a Sentinel workspace.",
+ "operationId": "WorkspaceManagerConfigurations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerConfigurationList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerConfigurations/{workspaceManagerConfigurationName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a workspace manager configuration.": {
+ "$ref": "./examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerConfigurations"
+ ],
+ "description": "Gets a workspace manager configuration",
+ "operationId": "WorkspaceManagerConfigurations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerConfigurationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a workspace manager configuration.": {
+ "$ref": "./examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerConfigurations"
+ ],
+ "description": "Deletes a workspace manager configuration",
+ "operationId": "WorkspaceManagerConfigurations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerConfigurationName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Create or Update a workspace manager Configuration": {
+ "$ref": "./examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerConfigurations"
+ ],
+ "description": "Creates or updates a workspace manager configuration.",
+ "operationId": "WorkspaceManagerConfigurations_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerConfigurationName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerConfiguration"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, created or updated an instance",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerConfiguration"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "WorkspaceManagerConfiguration": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/AzureEntityResource"
+ }
+ ],
+ "description": "The workspace manager configuration",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WorkspaceManagerConfigurationProperties",
+ "description": "The workspace manager configuration object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "WorkspaceManagerConfigurationProperties": {
+ "description": "The workspace manager configuration properties",
+ "properties": {
+ "mode": {
+ "description": "The current mode of the workspace manager configuration",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "mode",
+ "values": [
+ {
+ "description": "The workspace manager configuration is enabled",
+ "value": "Enabled"
+ },
+ {
+ "description": "The workspace manager configuration is disabled",
+ "value": "Disabled"
+ }
+ ]
+ }
+ }
+ },
+ "required": [
+ "mode"
+ ],
+ "type": "object"
+ },
+ "WorkspaceManagerConfigurationList": {
+ "description": "List all the workspace manager configurations for the workspace.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of workspace manager configurations.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of workspace manager configurations.",
+ "items": {
+ "$ref": "#/definitions/WorkspaceManagerConfiguration"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ },
+ "parameters": {
+ "WorkspaceManagerConfigurationName": {
+ "description": "The name of the workspace manager configuration",
+ "in": "path",
+ "name": "workspaceManagerConfigurationName",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$",
+ "x-ms-parameter-location": "method"
+ },
+ "WorkspaceManagerConfiguration": {
+ "description": "The workspace manager configuration",
+ "in": "body",
+ "name": "workspaceManagerConfiguration",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerConfiguration"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerGroups.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerGroups.json
new file mode 100644
index 000000000000..292ba13f12f8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerGroups.json
@@ -0,0 +1,318 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerGroups": {
+ "get": {
+ "x-ms-examples": {
+ "Get all workspace manager groups in the Sentinel workspace manager.": {
+ "$ref": "./examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerGroups"
+ ],
+ "description": "Gets all workspace manager groups in the Sentinel workspace manager",
+ "operationId": "WorkspaceManagerGroups_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerGroupList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerGroups/{workspaceManagerGroupName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a workspace manager group": {
+ "$ref": "./examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerGroups"
+ ],
+ "description": "Gets a workspace manager group",
+ "operationId": "WorkspaceManagerGroups_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerGroupName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Creates or updates a workspace manager group.": {
+ "$ref": "./examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerGroups"
+ ],
+ "description": "Creates or updates a workspace manager group.",
+ "operationId": "WorkspaceManagerGroups_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerGroupName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerGroup"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, created or updated an instance",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerGroup"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerGroup"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a workspace manager group.": {
+ "$ref": "./examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerGroups"
+ ],
+ "description": "Deletes a workspace manager group",
+ "operationId": "WorkspaceManagerGroups_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerGroupName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "WorkspaceManagerGroup": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/AzureEntityResource"
+ }
+ ],
+ "description": "The workspace manager group",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WorkspaceManagerGroupProperties",
+ "description": "The workspace manager group object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "WorkspaceManagerGroupProperties": {
+ "description": "The workspace manager group properties",
+ "properties": {
+ "description": {
+ "description": "The description of the workspace manager group",
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name of the workspace manager group",
+ "type": "string"
+ },
+ "memberResourceNames": {
+ "description": "The names of the workspace manager members participating in this group.",
+ "items": {
+ "description": "memberResourceName",
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "displayName",
+ "memberResourceNames"
+ ],
+ "type": "object"
+ },
+ "WorkspaceManagerGroupList": {
+ "description": "List of all the workspace manager groups.",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of workspace manager groups.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of workspace manager groups.",
+ "items": {
+ "$ref": "#/definitions/WorkspaceManagerGroup"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ },
+ "parameters": {
+ "WorkspaceManagerGroupName": {
+ "description": "The name of the workspace manager group",
+ "in": "path",
+ "name": "workspaceManagerGroupName",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$",
+ "x-ms-parameter-location": "method"
+ },
+ "WorkspaceManagerGroup": {
+ "description": "The workspace manager group object",
+ "in": "body",
+ "name": "workspaceManagerGroup",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerGroup"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerMembers.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerMembers.json
new file mode 100644
index 000000000000..4b0e050b0948
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerMembers.json
@@ -0,0 +1,310 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerMembers/": {
+ "get": {
+ "x-ms-examples": {
+ "Get all workspace manager members": {
+ "$ref": "./examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerMember"
+ ],
+ "description": "Gets all workspace manager members that exist for the given Sentinel workspace manager",
+ "operationId": "WorkspaceManagerMembers_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataOrderBy"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataTop"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerMembersList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/workspaceManagerMembers/{workspaceManagerMemberName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get a workspace manager member": {
+ "$ref": "./examples/workspaceManagerMembers/GetWorkspaceManagerMember.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerMember"
+ ],
+ "description": "Gets a workspace manager member",
+ "operationId": "WorkspaceManagerMembers_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerMemberName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerMember"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Create or Update a workspace manager member": {
+ "$ref": "./examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerMember"
+ ],
+ "description": "Creates or updates a workspace manager member",
+ "operationId": "WorkspaceManagerMembers_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerMemberName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerMember"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, created or updated an instance",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerMember"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerMember"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete a workspace manager member": {
+ "$ref": "./examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json"
+ }
+ },
+ "tags": [
+ "workspaceManagerMember"
+ ],
+ "description": "Deletes a workspace manager member",
+ "operationId": "WorkspaceManagerMembers_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/WorkspaceManagerMemberName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "WorkspaceManagerMemberProperties": {
+ "description": "The workspace manager member properties",
+ "properties": {
+ "targetWorkspaceResourceId": {
+ "description": "Fully qualified resource ID of the target Sentinel workspace joining the given Sentinel workspace manager",
+ "type": "string"
+ },
+ "targetWorkspaceTenantId": {
+ "description": "Tenant id of the target Sentinel workspace joining the given Sentinel workspace manager",
+ "type": "string"
+ }
+ },
+ "required": [
+ "targetWorkspaceResourceId",
+ "targetWorkspaceTenantId"
+ ],
+ "type": "object"
+ },
+ "WorkspaceManagerMember": {
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/AzureEntityResource"
+ }
+ ],
+ "description": "The workspace manager member",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WorkspaceManagerMemberProperties",
+ "description": "The workspace manager member object",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object"
+ },
+ "WorkspaceManagerMembersList": {
+ "description": "List of workspace manager members",
+ "type": "object",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of workspace manager members",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of workspace manager members",
+ "items": {
+ "$ref": "#/definitions/WorkspaceManagerMember"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ },
+ "parameters": {
+ "WorkspaceManagerMemberName": {
+ "description": "The name of the workspace manager member",
+ "in": "path",
+ "name": "workspaceManagerMemberName",
+ "required": true,
+ "type": "string",
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$",
+ "x-ms-parameter-location": "method"
+ },
+ "WorkspaceManagerMember": {
+ "description": "The workspace manager member object",
+ "in": "body",
+ "name": "workspaceManagerMember",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WorkspaceManagerMember"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/AlertTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/AlertTypes.json
new file mode 100644
index 000000000000..d6c4885a18c2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/AlertTypes.json
@@ -0,0 +1,81 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-10-01-preview",
+ "title": "Common Alert types"
+ },
+ "paths": {},
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "definitions": {
+ "AlertSeverityEnum": {
+ "description": "The severity of the alert",
+ "enum": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AlertSeverity",
+ "values": [
+ {
+ "description": "High severity",
+ "value": "High"
+ },
+ {
+ "description": "Medium severity",
+ "value": "Medium"
+ },
+ {
+ "description": "Low severity",
+ "value": "Low"
+ },
+ {
+ "description": "Informational severity",
+ "value": "Informational"
+ }
+ ]
+ }
+ },
+ "AttackTactic": {
+ "description": "The severity for alerts created by this alert rule.",
+ "enum": [
+ "Reconnaissance",
+ "ResourceDevelopment",
+ "InitialAccess",
+ "Execution",
+ "Persistence",
+ "PrivilegeEscalation",
+ "DefenseEvasion",
+ "CredentialAccess",
+ "Discovery",
+ "LateralMovement",
+ "Collection",
+ "Exfiltration",
+ "CommandAndControl",
+ "Impact",
+ "PreAttack",
+ "ImpairProcessControl",
+ "InhibitResponseFunction"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AttackTactic"
+ }
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ContentCommonTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ContentCommonTypes.json
new file mode 100644
index 000000000000..5caf1f6c9ee4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ContentCommonTypes.json
@@ -0,0 +1,662 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-10-01-preview",
+ "title": "Common content metadata types"
+ },
+ "paths": {},
+ "definitions": {
+ "metadataContentId": {
+ "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Can be optionally set for user created content to define dependencies. If an active content item is made from a metadata, both will have the same contentId.",
+ "type": "string"
+ },
+ "metadataParentId": {
+ "description": "Full parent resource ID of the content item the metadata is for. This is the full resource ID including the scope (subscription and resource group)",
+ "type": "string"
+ },
+ "metadataDisplayName": {
+ "description": "DisplayName of the content.",
+ "type": "string"
+ },
+ "metadataVersion": {
+ "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM template best practices. Can also be any string, but then we cannot guarantee any version checks",
+ "type": "string"
+ },
+ "metadataPackageKind": {
+ "description": "The package kind",
+ "enum": [
+ "Solution",
+ "Standalone"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "packageKind",
+ "values": [
+ {
+ "value": "Solution"
+ },
+ {
+ "value": "Standalone"
+ }
+ ]
+ }
+ },
+ "metadataKind": {
+ "type": "string",
+ "description": "The kind of content the metadata is for.",
+ "enum": [
+ "DataConnector",
+ "DataType",
+ "Workbook",
+ "WorkbookTemplate",
+ "Playbook",
+ "PlaybookTemplate",
+ "AnalyticsRuleTemplate",
+ "AnalyticsRule",
+ "HuntingQuery",
+ "InvestigationQuery",
+ "Parser",
+ "Watchlist",
+ "WatchlistTemplate",
+ "Solution",
+ "AzureFunction",
+ "LogicAppsCustomConnector",
+ "AutomationRule",
+ "ResourcesDataConnector",
+ "Notebook",
+ "Standalone",
+ "SummaryRule"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "kind",
+ "values": [
+ {
+ "value": "DataConnector"
+ },
+ {
+ "value": "DataType"
+ },
+ {
+ "value": "Workbook"
+ },
+ {
+ "value": "WorkbookTemplate"
+ },
+ {
+ "value": "Playbook"
+ },
+ {
+ "value": "PlaybookTemplate"
+ },
+ {
+ "value": "AnalyticsRuleTemplate"
+ },
+ {
+ "value": "AnalyticsRule"
+ },
+ {
+ "value": "HuntingQuery"
+ },
+ {
+ "value": "InvestigationQuery"
+ },
+ {
+ "value": "Parser"
+ },
+ {
+ "value": "Watchlist"
+ },
+ {
+ "value": "WatchlistTemplate"
+ },
+ {
+ "value": "Solution"
+ },
+ {
+ "value": "AzureFunction"
+ },
+ {
+ "value": "LogicAppsCustomConnector"
+ },
+ {
+ "value": "AutomationRule"
+ },
+ {
+ "value": "ResourcesDataConnector"
+ },
+ {
+ "value": "Notebook"
+ },
+ {
+ "value": "Standalone"
+ },
+ {
+ "value": "SummaryRule"
+ }
+ ]
+ }
+ },
+ "metadataTrueFalseFlag": {
+ "type": "string",
+ "description": "The boolean value the metadata is for.",
+ "enum": [
+ "true",
+ "false"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "flag",
+ "values": [
+ {
+ "value": "true"
+ },
+ {
+ "value": "false"
+ }
+ ]
+ }
+ },
+ "metadataSource": {
+ "description": "The original source of the content item, where it comes from.",
+ "type": "object",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "description": "Source type of the content",
+ "type": "string",
+ "enum": [
+ "LocalWorkspace",
+ "Community",
+ "Solution",
+ "SourceRepository"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "sourceKind",
+ "values": [
+ {
+ "value": "LocalWorkspace"
+ },
+ {
+ "value": "Community"
+ },
+ {
+ "value": "Solution"
+ },
+ {
+ "value": "SourceRepository"
+ }
+ ]
+ }
+ },
+ "name": {
+ "description": "Name of the content source. The repo name, solution name, LA workspace name etc.",
+ "type": "string"
+ },
+ "sourceId": {
+ "description": "ID of the content source. The solution ID, workspace ID, etc",
+ "type": "string"
+ }
+ }
+ },
+ "metadataAuthor": {
+ "type": "object",
+ "description": "Publisher or creator of the content item.",
+ "properties": {
+ "name": {
+ "description": "Name of the author. Company or person.",
+ "type": "string"
+ },
+ "email": {
+ "description": "Email of author contact",
+ "type": "string"
+ },
+ "link": {
+ "description": "Link for author/vendor page",
+ "type": "string"
+ }
+ }
+ },
+ "metadataSupport": {
+ "type": "object",
+ "description": "Support information for the content item.",
+ "required": [
+ "tier"
+ ],
+ "properties": {
+ "tier": {
+ "description": "Type of support for content item",
+ "type": "string",
+ "enum": [
+ "Microsoft",
+ "Partner",
+ "Community"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "supportTier",
+ "values": [
+ {
+ "value": "Microsoft"
+ },
+ {
+ "value": "Partner"
+ },
+ {
+ "value": "Community"
+ }
+ ]
+ }
+ },
+ "name": {
+ "description": "Name of the support contact. Company or person.",
+ "type": "string"
+ },
+ "email": {
+ "description": "Email of support contact",
+ "type": "string"
+ },
+ "link": {
+ "description": "Link for support help, like to support page to open a ticket etc.",
+ "type": "string"
+ }
+ }
+ },
+ "metadataDependencies": {
+ "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex dependencies.",
+ "type": "object",
+ "properties": {
+ "contentId": {
+ "description": "Id of the content item we depend on",
+ "$ref": "#/definitions/metadataContentId"
+ },
+ "kind": {
+ "description": "Type of the content item we depend on",
+ "$ref": "#/definitions/metadataKind"
+ },
+ "version": {
+ "description": "Version of the the content item we depend on. Can be blank, * or missing to indicate any version fulfills the dependency. If version does not match our defined numeric format then an exact match is required.",
+ "$ref": "#/definitions/metadataVersion"
+ },
+ "name": {
+ "description": "Name of the content item",
+ "type": "string"
+ },
+ "operator": {
+ "description": "Operator used for list of dependencies in criteria array.",
+ "type": "string",
+ "enum": [
+ "AND",
+ "OR"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "operator",
+ "values": [
+ {
+ "value": "AND"
+ },
+ {
+ "value": "OR"
+ }
+ ]
+ }
+ },
+ "criteria": {
+ "description": "This is the list of dependencies we must fulfill, according to the AND/OR operator",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/metadataDependencies",
+ "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats."
+ },
+ "x-ms-identifiers": [
+ "contentId"
+ ],
+ "example": [
+ {
+ "kind": "DataConnector",
+ "contentId": "68b1de8a-b635-430d-b208-01ba3dda5877",
+ "version": "1.0.0"
+ },
+ {
+ "kind": "Workbook",
+ "contentId": "ad903b46-9905-4504-9825-3bcce796da8e",
+ "version": "1.0.0"
+ }
+ ]
+ }
+ }
+ },
+ "metadataCategories": {
+ "type": "object",
+ "description": "ies for the solution content item",
+ "properties": {
+ "domains": {
+ "description": "domain for the solution content item",
+ "type": "array",
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "verticals": {
+ "description": "Industry verticals for the solution content item",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ]
+ }
+ }
+ },
+ "metadataProviders": {
+ "description": "Providers for the solution content item",
+ "type": "array",
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataFirstPublishDate": {
+ "description": "first publish date of solution content item",
+ "type": "string",
+ "format": "date"
+ },
+ "metadataLastPublishDate": {
+ "description": "last publish date of solution content item",
+ "type": "string",
+ "format": "date"
+ },
+ "metadataCustomVersion": {
+ "description": "The custom version of the content. A optional free text",
+ "type": "string"
+ },
+ "metadataContentSchemaVersion": {
+ "description": "Schema version of the content. Can be used to distinguish between different flow based on the schema version",
+ "type": "string"
+ },
+ "metadataIcon": {
+ "description": "the icon identifier. this id can later be fetched from the metadata",
+ "type": "string"
+ },
+ "metadataThreatAnalysisTactics": {
+ "description": "the tactics the resource covers",
+ "type": "array",
+ "example": [
+ "reconnaissance",
+ "exfiltration"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataThreatAnalysisTechniques": {
+ "description": "the techniques the resource covers, these have to be aligned with the tactics being used",
+ "type": "array",
+ "example": [
+ "T1548",
+ "T1548.001",
+ "T1134.003"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataPreviewImages": {
+ "description": "preview image file names. These will be taken from the solution artifacts",
+ "type": "array",
+ "example": [
+ "example.png",
+ "example2.jpeg"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataPreviewImagesDark": {
+ "description": "preview image file names. These will be taken from the solution artifacts. used for dark theme support",
+ "type": "array",
+ "example": [
+ "example.png",
+ "example2.jpeg"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "metadataTags": {
+ "description": "the tags assigned to the resource",
+ "type": "array",
+ "example": [
+ "str1",
+ "str2",
+ "str3"
+ ],
+ "items": {
+ "type": "string"
+ }
+ },
+ "templateBaseProperties": {
+ "description": "Template property bag.",
+ "type": "object",
+ "properties": {
+ "contentId": {
+ "$ref": "#/definitions/metadataContentId",
+ "description": "Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name"
+ },
+ "contentProductId": {
+ "type": "string",
+ "description": "Unique ID for the content. It should be generated based on the contentId of the package, contentId of the template, contentKind of the template and the contentVersion of the template"
+ },
+ "packageVersion": {
+ "$ref": "#/definitions/metadataVersion",
+ "description": "Version of the package. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM metadata best practices. Can also be any string, but then we cannot guarantee any version checks"
+ },
+ "version": {
+ "$ref": "#/definitions/metadataVersion",
+ "description": "Version of the content. Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM metadata best practices. Can also be any string, but then we cannot guarantee any version checks"
+ },
+ "displayName": {
+ "$ref": "#/definitions/metadataDisplayName",
+ "description": "The display name of the template"
+ },
+ "contentKind": {
+ "$ref": "#/definitions/metadataKind",
+ "description": "The kind of content the template is for."
+ },
+ "source": {
+ "$ref": "#/definitions/metadataSource",
+ "description": "Source of the content. This is where/how it was created."
+ },
+ "author": {
+ "$ref": "#/definitions/metadataAuthor",
+ "description": "The creator of the content item."
+ },
+ "support": {
+ "$ref": "#/definitions/metadataSupport",
+ "description": "Support information for the template - type, name, contact information"
+ },
+ "dependencies": {
+ "$ref": "#/definitions/metadataDependencies",
+ "description": "Dependencies for the content item, what other content items it requires to work. Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats."
+ },
+ "categories": {
+ "$ref": "#/definitions/metadataCategories",
+ "description": "Categories for the item"
+ },
+ "providers": {
+ "$ref": "#/definitions/metadataProviders",
+ "description": "Providers for the content item"
+ },
+ "firstPublishDate": {
+ "$ref": "#/definitions/metadataFirstPublishDate",
+ "description": "first publish date content item"
+ },
+ "lastPublishDate": {
+ "$ref": "#/definitions/metadataLastPublishDate",
+ "description": "last publish date for the content item"
+ },
+ "customVersion": {
+ "$ref": "#/definitions/metadataCustomVersion",
+ "description": "The custom version of the content. A optional free text"
+ },
+ "contentSchemaVersion": {
+ "$ref": "#/definitions/metadataContentSchemaVersion",
+ "description": "Schema version of the content. Can be used to distinguish between different flow based on the schema version"
+ },
+ "icon": {
+ "$ref": "#/definitions/metadataIcon",
+ "description": "the icon identifier. this id can later be fetched from the content metadata"
+ },
+ "threatAnalysisTactics": {
+ "$ref": "#/definitions/metadataThreatAnalysisTactics",
+ "description": "the tactics the resource covers"
+ },
+ "threatAnalysisTechniques": {
+ "$ref": "#/definitions/metadataThreatAnalysisTechniques",
+ "description": "the techniques the resource covers, these have to be aligned with the tactics being used"
+ },
+ "previewImages": {
+ "$ref": "#/definitions/metadataPreviewImages",
+ "description": "preview image file names. These will be taken from the solution artifacts"
+ },
+ "previewImagesDark": {
+ "$ref": "#/definitions/metadataPreviewImagesDark",
+ "description": "preview image file names. These will be taken from the solution artifacts. used for dark theme support"
+ },
+ "packageId": {
+ "$ref": "#/definitions/metadataContentId",
+ "description": "the package Id contains this template"
+ },
+ "packageKind": {
+ "$ref": "#/definitions/metadataPackageKind",
+ "description": "the packageKind of the package contains this template"
+ },
+ "packageName": {
+ "$ref": "#/definitions/metadataDisplayName",
+ "description": "the name of the package contains this template"
+ },
+ "isDeprecated": {
+ "$ref": "#/definitions/metadataTrueFalseFlag",
+ "description": "Flag indicates if this template is deprecated",
+ "readOnly": true
+ }
+ }
+ },
+ "packageBaseProperties": {
+ "description": "Describes package properties",
+ "properties": {
+ "contentId": {
+ "$ref": "#/definitions/metadataContentId",
+ "description": "The content id of the package"
+ },
+ "contentProductId": {
+ "type": "string",
+ "description": "Unique ID for the content. It should be generated based on the contentId, contentKind and the contentVersion of the package"
+ },
+ "contentKind": {
+ "$ref": "#/definitions/metadataPackageKind",
+ "description": "The package kind"
+ },
+ "contentSchemaVersion": {
+ "$ref": "#/definitions/metadataVersion",
+ "description": "The version of the content schema."
+ },
+ "isNew": {
+ "$ref": "#/definitions/metadataTrueFalseFlag",
+ "description": "Flag indicates if this is a newly published package."
+ },
+ "isPreview": {
+ "$ref": "#/definitions/metadataTrueFalseFlag",
+ "description": "Flag indicates if this package is in preview."
+ },
+ "isFeatured": {
+ "$ref": "#/definitions/metadataTrueFalseFlag",
+ "description": "Flag indicates if this package is among the featured list."
+ },
+ "isDeprecated": {
+ "$ref": "#/definitions/metadataTrueFalseFlag",
+ "description": "Flag indicates if this template is deprecated"
+ },
+ "version": {
+ "$ref": "#/definitions/metadataVersion",
+ "description": "the latest version number of the package"
+ },
+ "displayName": {
+ "$ref": "#/definitions/metadataDisplayName",
+ "description": "The display name of the package"
+ },
+ "description": {
+ "description": "The description of the package",
+ "type": "string"
+ },
+ "publisherDisplayName": {
+ "$ref": "#/definitions/metadataDisplayName",
+ "description": "The publisher display name of the package"
+ },
+ "source": {
+ "$ref": "#/definitions/metadataSource",
+ "description": "The source of the package"
+ },
+ "author": {
+ "$ref": "#/definitions/metadataAuthor",
+ "description": "The author of the package"
+ },
+ "support": {
+ "$ref": "#/definitions/metadataSupport",
+ "description": "The support tier of the package"
+ },
+ "dependencies": {
+ "$ref": "#/definitions/metadataDependencies",
+ "description": "The support tier of the package"
+ },
+ "providers": {
+ "$ref": "#/definitions/metadataProviders",
+ "description": "Providers for the package item"
+ },
+ "firstPublishDate": {
+ "$ref": "#/definitions/metadataFirstPublishDate",
+ "description": "first publish date package item"
+ },
+ "lastPublishDate": {
+ "$ref": "#/definitions/metadataLastPublishDate",
+ "description": "last publish date for the package item"
+ },
+ "categories": {
+ "$ref": "#/definitions/metadataCategories",
+ "description": "The categories of the package"
+ },
+ "threatAnalysisTactics": {
+ "$ref": "#/definitions/metadataThreatAnalysisTactics",
+ "description": "the tactics the resource covers"
+ },
+ "threatAnalysisTechniques": {
+ "$ref": "#/definitions/metadataThreatAnalysisTechniques",
+ "description": "the techniques the resource covers, these have to be aligned with the tactics being used"
+ },
+ "icon": {
+ "$ref": "#/definitions/metadataIcon",
+ "description": "the icon identifier. this id can later be fetched from the content metadata"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/EntityTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/EntityTypes.json
new file mode 100644
index 000000000000..6d88c3d95128
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/EntityTypes.json
@@ -0,0 +1,2550 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-10-01-preview",
+ "title": "Common Entity types"
+ },
+ "paths": {},
+ "definitions": {
+ "AccountEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents an account entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AccountEntityProperties",
+ "description": "Account entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Account"
+ },
+ "AccountEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Account entity property bag.",
+ "properties": {
+ "aadTenantId": {
+ "description": "The Azure Active Directory tenant id.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "aadUserId": {
+ "description": "The Azure Active Directory user id.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "accountName": {
+ "description": "The name of the account. This field should hold only the name without any domain added to it, i.e. administrator.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The display name of the account.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "hostEntityId": {
+ "description": "The Host entity id that contains the account in case it is a local account (not domain joined)",
+ "readOnly": true,
+ "type": "string"
+ },
+ "isDomainJoined": {
+ "description": "Determines whether this is a domain account.",
+ "readOnly": true,
+ "type": "boolean"
+ },
+ "ntDomain": {
+ "description": "The NetBIOS domain name as it appears in the alert format domain/username. Examples: NT AUTHORITY.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "objectGuid": {
+ "description": "The objectGUID attribute is a single-value attribute that is the unique identifier for the object, assigned by active directory.",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ },
+ "puid": {
+ "description": "The Azure Active Directory Passport User ID.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "sid": {
+ "description": "The account security identifier, e.g. S-1-5-18.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "upnSuffix": {
+ "description": "The user principal name suffix for the account, in some cases it is also the domain name. Examples: contoso.com.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "dnsDomain": {
+ "description": "The fully qualified domain DNS name.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AzureResourceEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents an azure resource entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AzureResourceEntityProperties",
+ "description": "AzureResource entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureResource"
+ },
+ "AzureResourceEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "AzureResource entity property bag.",
+ "properties": {
+ "resourceId": {
+ "description": "The azure resource id of the resource",
+ "readOnly": true,
+ "type": "string"
+ },
+ "subscriptionId": {
+ "description": "The subscription id of the resource",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "CloudApplicationEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a cloud application entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CloudApplicationEntityProperties",
+ "description": "CloudApplication entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "CloudApplication"
+ },
+ "CloudApplicationEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "CloudApplication entity property bag.",
+ "properties": {
+ "appId": {
+ "description": "The technical identifier of the application.",
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ "appName": {
+ "description": "The name of the related cloud application.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "instanceName": {
+ "description": "The user defined instance name of the cloud application. It is often used to distinguish between several applications of the same type that a customer has.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "DnsEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a dns entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/DnsEntityProperties",
+ "description": "Dns entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "DnsResolution"
+ },
+ "DnsEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Dns entity property bag.",
+ "properties": {
+ "dnsServerIpEntityId": {
+ "description": "An ip entity id for the dns server resolving the request",
+ "readOnly": true,
+ "type": "string"
+ },
+ "domainName": {
+ "description": "The name of the dns record associated with the alert",
+ "readOnly": true,
+ "type": "string"
+ },
+ "hostIpAddressEntityId": {
+ "description": "An ip entity id for the dns request client",
+ "readOnly": true,
+ "type": "string"
+ },
+ "ipAddressEntityIds": {
+ "description": "Ip entity identifiers for the resolved ip address.",
+ "items": {
+ "description": "Ip entity id",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "Entity": {
+ "allOf": [
+ {
+ "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/Resource"
+ }
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/EntityInnerKind",
+ "description": "The kind of the entity."
+ }
+ },
+ "description": "Specific entity.",
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "EntityCommonProperties": {
+ "description": "Entity common property bag.",
+ "properties": {
+ "additionalData": {
+ "additionalProperties": true,
+ "description": "A bag of custom fields that should be part of the entity and will be presented to the user.",
+ "readOnly": true,
+ "type": "object"
+ },
+ "friendlyName": {
+ "description": "The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "EntityInnerKind": {
+ "description": "The kind of the entity",
+ "enum": [
+ "Account",
+ "Host",
+ "File",
+ "AzureResource",
+ "CloudApplication",
+ "DnsResolution",
+ "FileHash",
+ "Ip",
+ "Malware",
+ "Process",
+ "RegistryKey",
+ "RegistryValue",
+ "SecurityGroup",
+ "Url",
+ "IoTDevice",
+ "SecurityAlert",
+ "Bookmark",
+ "Mailbox",
+ "MailCluster",
+ "MailMessage",
+ "SubmissionMail",
+ "Nic"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityKindEnum",
+ "values": [
+ {
+ "description": "Entity represents account in the system.",
+ "value": "Account"
+ },
+ {
+ "description": "Entity represents host in the system.",
+ "value": "Host"
+ },
+ {
+ "description": "Entity represents file in the system.",
+ "value": "File"
+ },
+ {
+ "description": "Entity represents azure resource in the system.",
+ "value": "AzureResource"
+ },
+ {
+ "description": "Entity represents cloud application in the system.",
+ "value": "CloudApplication"
+ },
+ {
+ "description": "Entity represents dns resolution in the system.",
+ "value": "DnsResolution"
+ },
+ {
+ "description": "Entity represents file hash in the system.",
+ "value": "FileHash"
+ },
+ {
+ "description": "Entity represents ip in the system.",
+ "value": "Ip"
+ },
+ {
+ "description": "Entity represents malware in the system.",
+ "value": "Malware"
+ },
+ {
+ "description": "Entity represents process in the system.",
+ "value": "Process"
+ },
+ {
+ "description": "Entity represents registry key in the system.",
+ "value": "RegistryKey"
+ },
+ {
+ "description": "Entity represents registry value in the system.",
+ "value": "RegistryValue"
+ },
+ {
+ "description": "Entity represents security group in the system.",
+ "value": "SecurityGroup"
+ },
+ {
+ "description": "Entity represents url in the system.",
+ "value": "Url"
+ },
+ {
+ "description": "Entity represents IoT device in the system.",
+ "value": "IoTDevice"
+ },
+ {
+ "description": "Entity represents security alert in the system.",
+ "value": "SecurityAlert"
+ },
+ {
+ "description": "Entity represents bookmark in the system.",
+ "value": "Bookmark"
+ },
+ {
+ "description": "Entity represents mail cluster in the system.",
+ "value": "MailCluster"
+ },
+ {
+ "description": "Entity represents mail message in the system.",
+ "value": "MailMessage"
+ },
+ {
+ "description": "Entity represents mailbox in the system.",
+ "value": "Mailbox"
+ },
+ {
+ "description": "Entity represents submission mail in the system.",
+ "value": "SubmissionMail"
+ },
+ {
+ "description": "Entity represents network interface in the system.",
+ "value": "Nic"
+ }
+ ]
+ }
+ },
+ "EntityInnerType": {
+ "description": "The type of the entity",
+ "enum": [
+ "Account",
+ "Host",
+ "File",
+ "AzureResource",
+ "CloudApplication",
+ "DNS",
+ "FileHash",
+ "IP",
+ "Malware",
+ "Process",
+ "RegistryKey",
+ "RegistryValue",
+ "SecurityGroup",
+ "URL",
+ "IoTDevice",
+ "SecurityAlert",
+ "HuntingBookmark",
+ "MailCluster",
+ "MailMessage",
+ "Mailbox",
+ "SubmissionMail",
+ "Nic"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityType",
+ "values": [
+ {
+ "description": "Entity represents account in the system.",
+ "value": "Account"
+ },
+ {
+ "description": "Entity represents host in the system.",
+ "value": "Host"
+ },
+ {
+ "description": "Entity represents file in the system.",
+ "value": "File"
+ },
+ {
+ "description": "Entity represents azure resource in the system.",
+ "value": "AzureResource"
+ },
+ {
+ "description": "Entity represents cloud application in the system.",
+ "value": "CloudApplication"
+ },
+ {
+ "description": "Entity represents dns in the system.",
+ "value": "DNS"
+ },
+ {
+ "description": "Entity represents file hash in the system.",
+ "value": "FileHash"
+ },
+ {
+ "description": "Entity represents ip in the system.",
+ "value": "IP"
+ },
+ {
+ "description": "Entity represents malware in the system.",
+ "value": "Malware"
+ },
+ {
+ "description": "Entity represents process in the system.",
+ "value": "Process"
+ },
+ {
+ "description": "Entity represents registry key in the system.",
+ "value": "RegistryKey"
+ },
+ {
+ "description": "Entity represents registry value in the system.",
+ "value": "RegistryValue"
+ },
+ {
+ "description": "Entity represents security group in the system.",
+ "value": "SecurityGroup"
+ },
+ {
+ "description": "Entity represents url in the system.",
+ "value": "URL"
+ },
+ {
+ "description": "Entity represents IoT device in the system.",
+ "value": "IoTDevice"
+ },
+ {
+ "description": "Entity represents security alert in the system.",
+ "value": "SecurityAlert"
+ },
+ {
+ "description": "Entity represents HuntingBookmark in the system.",
+ "value": "HuntingBookmark"
+ },
+ {
+ "description": "Entity represents mail cluster in the system.",
+ "value": "MailCluster"
+ },
+ {
+ "description": "Entity represents mail message in the system.",
+ "value": "MailMessage"
+ },
+ {
+ "description": "Entity represents mailbox in the system.",
+ "value": "Mailbox"
+ },
+ {
+ "description": "Entity represents submission mail in the system.",
+ "value": "SubmissionMail"
+ },
+ {
+ "description": "Entity represents network interface in the system.",
+ "value": "Nic"
+ }
+ ]
+ }
+ },
+ "EntityQueryKind": {
+ "description": "The kind of the entity query",
+ "enum": [
+ "Expansion",
+ "Insight",
+ "Activity"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "EntityQueryKind",
+ "values": [
+ {
+ "value": "Expansion"
+ },
+ {
+ "value": "Insight"
+ },
+ {
+ "value": "Activity"
+ }
+ ]
+ }
+ },
+ "ExpansionResultAggregation": {
+ "description": "Information of a specific aggregation in the expansion result.",
+ "properties": {
+ "aggregationType": {
+ "description": "The common type of the aggregation. (for e.g. entity field name)",
+ "type": "string"
+ },
+ "count": {
+ "description": "Total number of aggregations of the given kind (and aggregationType if given) in the expansion result.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "displayName": {
+ "description": "The display name of the aggregation by type.",
+ "type": "string"
+ },
+ "entityKind": {
+ "$ref": "#/definitions/EntityInnerKind",
+ "description": "The kind of the aggregated entity."
+ }
+ },
+ "required": [
+ "entityKind",
+ "count"
+ ],
+ "type": "object"
+ },
+ "ExpansionResultsMetadata": {
+ "description": "Expansion result metadata.",
+ "properties": {
+ "aggregations": {
+ "description": "Information of the aggregated nodes in the expansion result.",
+ "items": {
+ "$ref": "#/definitions/ExpansionResultAggregation"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "FileEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a file entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/FileEntityProperties",
+ "description": "File entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "File"
+ },
+ "FileEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "File entity property bag.",
+ "properties": {
+ "directory": {
+ "description": "The full path to the file.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "fileHashEntityIds": {
+ "description": "The file hash entity identifiers associated with this file",
+ "items": {
+ "description": "file hash id",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "fileName": {
+ "description": "The file name without path (some alerts might not include path).",
+ "readOnly": true,
+ "type": "string"
+ },
+ "hostEntityId": {
+ "description": "The Host entity id which the file belongs to",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "FileHashEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a file hash entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/FileHashEntityProperties",
+ "description": "FileHash entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "FileHash"
+ },
+ "FileHashEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "FileHash entity property bag.",
+ "properties": {
+ "algorithm": {
+ "description": "The hash algorithm type.",
+ "enum": [
+ "Unknown",
+ "MD5",
+ "SHA1",
+ "SHA256",
+ "SHA256AC"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "FileHashAlgorithm",
+ "values": [
+ {
+ "description": "Unknown hash algorithm",
+ "value": "Unknown"
+ },
+ {
+ "description": "MD5 hash type",
+ "value": "MD5"
+ },
+ {
+ "description": "SHA1 hash type",
+ "value": "SHA1"
+ },
+ {
+ "description": "SHA256 hash type",
+ "value": "SHA256"
+ },
+ {
+ "description": "SHA256 Authenticode hash type",
+ "value": "SHA256AC"
+ }
+ ]
+ }
+ },
+ "hashValue": {
+ "description": "The file hash value.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "HostEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a host entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HostEntityProperties",
+ "description": "Host entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Host"
+ },
+ "HostEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Host entity property bag.",
+ "properties": {
+ "azureID": {
+ "description": "The azure resource id of the VM.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "dnsDomain": {
+ "description": "The DNS domain that this host belongs to. Should contain the compete DNS suffix for the domain",
+ "readOnly": true,
+ "type": "string"
+ },
+ "hostName": {
+ "description": "The hostname without the domain suffix.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "isDomainJoined": {
+ "description": "Determines whether this host belongs to a domain.",
+ "readOnly": true,
+ "type": "boolean"
+ },
+ "netBiosName": {
+ "description": "The host name (pre-windows2000).",
+ "readOnly": true,
+ "type": "string"
+ },
+ "ntDomain": {
+ "description": "The NT domain that this host belongs to.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "omsAgentID": {
+ "description": "The OMS agent id, if the host has OMS agent installed.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "osFamily": {
+ "description": "The operating system type.",
+ "enum": [
+ "Linux",
+ "Windows",
+ "Android",
+ "IOS",
+ "Unknown"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": false,
+ "name": "OSFamily",
+ "values": [
+ {
+ "description": "Host with Linux operating system.",
+ "value": "Linux"
+ },
+ {
+ "description": "Host with Windows operating system.",
+ "value": "Windows"
+ },
+ {
+ "description": "Host with Android operating system.",
+ "value": "Android"
+ },
+ {
+ "description": "Host with IOS operating system.",
+ "value": "IOS"
+ },
+ {
+ "description": "Host with Unknown operating system.",
+ "value": "Unknown"
+ }
+ ]
+ }
+ },
+ "osVersion": {
+ "description": "A free text representation of the operating system. This field is meant to hold specific versions the are more fine grained than OSFamily or future values not supported by OSFamily enumeration",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "HuntingBookmark": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a Hunting bookmark entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HuntingBookmarkProperties",
+ "description": "HuntingBookmark entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Bookmark"
+ },
+ "HuntingBookmarkProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Describes bookmark properties",
+ "properties": {
+ "created": {
+ "description": "The time the bookmark was created",
+ "format": "date-time",
+ "type": "string"
+ },
+ "createdBy": {
+ "$ref": "../../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that created the bookmark",
+ "type": "object"
+ },
+ "displayName": {
+ "description": "The display name of the bookmark",
+ "type": "string"
+ },
+ "eventTime": {
+ "description": "The time of the event",
+ "format": "date-time",
+ "type": "string"
+ },
+ "labels": {
+ "description": "List of labels relevant to this bookmark",
+ "items": {
+ "$ref": "../../../../common/2.0/types.json#/definitions/Label"
+ },
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "notes": {
+ "description": "The notes of the bookmark",
+ "type": "string"
+ },
+ "query": {
+ "description": "The query of the bookmark.",
+ "type": "string"
+ },
+ "queryResult": {
+ "description": "The query result of the bookmark.",
+ "type": "string"
+ },
+ "updated": {
+ "description": "The last time the bookmark was updated",
+ "format": "date-time",
+ "type": "string"
+ },
+ "updatedBy": {
+ "$ref": "../../../../common/2.0/types.json#/definitions/UserInfo",
+ "description": "Describes a user that updated the bookmark",
+ "type": "object"
+ },
+ "incidentInfo": {
+ "$ref": "IncidentTypes.json#/definitions/IncidentInfo",
+ "description": "Describes an incident that relates to bookmark",
+ "type": "object"
+ }
+ },
+ "required": [
+ "displayName",
+ "query"
+ ],
+ "type": "object"
+ },
+ "IoTDeviceEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents an IoT device entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/IoTDeviceEntityProperties",
+ "description": "IoTDevice entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "IoTDevice"
+ },
+ "IoTDeviceEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "IoTDevice entity property bag.",
+ "properties": {
+ "deviceId": {
+ "description": "The ID of the IoT Device in the IoT Hub",
+ "readOnly": true,
+ "type": "string"
+ },
+ "deviceName": {
+ "description": "The friendly name of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "source": {
+ "description": "The source of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "iotSecurityAgentId": {
+ "description": "The ID of the security agent running on the device",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ },
+ "deviceType": {
+ "description": "The type of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "vendor": {
+ "description": "The vendor of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "edgeId": {
+ "description": "The ID of the edge device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "macAddress": {
+ "description": "The MAC address of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "model": {
+ "description": "The model of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "serialNumber": {
+ "description": "The serial number of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "firmwareVersion": {
+ "description": "The firmware version of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "operatingSystem": {
+ "description": "The operating system of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "iotHubEntityId": {
+ "description": "The AzureResource entity id of the IoT Hub",
+ "readOnly": true,
+ "type": "string"
+ },
+ "hostEntityId": {
+ "description": "The Host entity id of this device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "ipAddressEntityId": {
+ "description": "The IP entity if of this device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "threatIntelligence": {
+ "description": "A list of TI contexts attached to the IoTDevice entity.",
+ "items": {
+ "$ref": "ThreatIntelligenceTypes.json#/definitions/ThreatIntelligence"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "protocols": {
+ "description": "A list of protocols of the IoTDevice entity.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "owners": {
+ "description": "A list of owners of the IoTDevice entity.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "nicEntityIds": {
+ "description": "A list of Nic entity ids of the IoTDevice entity.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "site": {
+ "description": "The site of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "zone": {
+ "description": "The zone location of the device within a site",
+ "readOnly": true,
+ "type": "string"
+ },
+ "sensor": {
+ "description": "The sensor the device is monitored by",
+ "readOnly": true,
+ "type": "string"
+ },
+ "deviceSubType": {
+ "description": "The subType of the device ('PLC', 'HMI', 'EWS', etc.)",
+ "readOnly": true,
+ "type": "string"
+ },
+ "importance": {
+ "description": "Device importance, determines if the device classified as 'crown jewel'",
+ "enum": [
+ "Unknown",
+ "Low",
+ "Normal",
+ "High"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DeviceImportance",
+ "values": [
+ {
+ "description": "Unknown - Default value",
+ "value": "Unknown"
+ },
+ {
+ "description": "Low",
+ "value": "Low"
+ },
+ {
+ "description": "Normal",
+ "value": "Normal"
+ },
+ {
+ "description": "High",
+ "value": "High"
+ }
+ ]
+ }
+ },
+ "purdueLayer": {
+ "description": "The Purdue Layer of the device",
+ "readOnly": true,
+ "type": "string"
+ },
+ "isAuthorized": {
+ "description": "Determines whether the device classified as authorized device",
+ "readOnly": true,
+ "type": "boolean"
+ },
+ "isProgramming": {
+ "description": "Determines whether the device classified as programming device",
+ "readOnly": true,
+ "type": "boolean"
+ },
+ "isScanner": {
+ "description": "Is the device classified as a scanner device",
+ "readOnly": true,
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "IpEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents an ip entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/IpEntityProperties",
+ "description": "Ip entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Ip"
+ },
+ "IpEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Ip entity property bag.",
+ "properties": {
+ "address": {
+ "description": "The IP address as string, e.g. 127.0.0.1 (either in Ipv4 or Ipv6)",
+ "readOnly": true,
+ "type": "string"
+ },
+ "location": {
+ "$ref": "#/definitions/GeoLocation",
+ "description": "The geo-location context attached to the ip entity"
+ },
+ "threatIntelligence": {
+ "description": "A list of TI contexts attached to the ip entity.",
+ "items": {
+ "$ref": "ThreatIntelligenceTypes.json#/definitions/ThreatIntelligence"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "GeoLocation": {
+ "description": "The geo-location context attached to the ip entity",
+ "properties": {
+ "asn": {
+ "description": "Autonomous System Number",
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ "city": {
+ "description": "City name",
+ "readOnly": true,
+ "type": "string"
+ },
+ "countryCode": {
+ "description": "The country code according to ISO 3166 format",
+ "readOnly": true,
+ "type": "string"
+ },
+ "countryName": {
+ "description": "Country name according to ISO 3166 Alpha 2: the lowercase of the English Short Name",
+ "readOnly": true,
+ "type": "string"
+ },
+ "latitude": {
+ "description": "The latitude of the identified location, expressed as a floating point number with range of - 90 to 90. Latitude and longitude are derived from the city or postal code.",
+ "format": "double",
+ "readOnly": true,
+ "type": "number"
+ },
+ "longitude": {
+ "description": "The longitude of the identified location, expressed as a floating point number with range of -180 to 180. Latitude and longitude are derived from the city or postal code.",
+ "format": "double",
+ "readOnly": true,
+ "type": "number"
+ },
+ "state": {
+ "description": "State name",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "readOnly": true,
+ "type": "object"
+ },
+ "MailboxEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a mailbox entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MailboxEntityProperties",
+ "description": "Mailbox entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Mailbox"
+ },
+ "MailboxEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Mailbox entity property bag.",
+ "properties": {
+ "mailboxPrimaryAddress": {
+ "description": "The mailbox's primary address",
+ "readOnly": true,
+ "type": "string"
+ },
+ "displayName": {
+ "description": "The mailbox's display name",
+ "readOnly": true,
+ "type": "string"
+ },
+ "upn": {
+ "description": "The mailbox's UPN",
+ "readOnly": true,
+ "type": "string"
+ },
+ "externalDirectoryObjectId": {
+ "description": "The AzureAD identifier of mailbox. Similar to AadUserId in account entity but this property is specific to mailbox object on office side",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "MailClusterEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a mail cluster entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MailClusterEntityProperties",
+ "description": "Mail cluster entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MailCluster"
+ },
+ "MailClusterEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Mail cluster entity property bag.",
+ "properties": {
+ "networkMessageIds": {
+ "description": "The mail message IDs that are part of the mail cluster",
+ "items": {
+ "description": "A mail message ID",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "countByDeliveryStatus": {
+ "description": "Count of mail messages by DeliveryStatus string representation",
+ "readOnly": true,
+ "type": "object"
+ },
+ "countByThreatType": {
+ "description": "Count of mail messages by ThreatType string representation",
+ "readOnly": true,
+ "type": "object"
+ },
+ "countByProtectionStatus": {
+ "description": "Count of mail messages by ProtectionStatus string representation",
+ "readOnly": true,
+ "type": "object"
+ },
+ "threats": {
+ "description": "The threats of mail messages that are part of the mail cluster",
+ "items": {
+ "description": "A threat",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "query": {
+ "description": "The query that was used to identify the messages of the mail cluster",
+ "readOnly": true,
+ "type": "string"
+ },
+ "queryTime": {
+ "description": "The query time",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "mailCount": {
+ "description": "The number of mail messages that are part of the mail cluster",
+ "readOnly": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ "isVolumeAnomaly": {
+ "description": "Is this a volume anomaly mail cluster",
+ "readOnly": true,
+ "type": "boolean"
+ },
+ "source": {
+ "description": "The source of the mail cluster (default is 'O365 ATP')",
+ "readOnly": true,
+ "type": "string"
+ },
+ "clusterSourceIdentifier": {
+ "description": "The id of the cluster source",
+ "readOnly": true,
+ "type": "string"
+ },
+ "clusterSourceType": {
+ "description": "The type of the cluster source",
+ "readOnly": true,
+ "type": "string"
+ },
+ "clusterQueryStartTime": {
+ "description": "The cluster query start time",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "clusterQueryEndTime": {
+ "description": "The cluster query end time",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "clusterGroup": {
+ "description": "The cluster group",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "MailMessageEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a mail message entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MailMessageEntityProperties",
+ "description": "Mail message entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MailMessage"
+ },
+ "MailMessageEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Mail message entity property bag.",
+ "properties": {
+ "fileEntityIds": {
+ "description": "The File entity ids of this mail message's attachments",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "recipient": {
+ "description": "The recipient of this mail message. Note that in case of multiple recipients the mail message is forked and each copy has one recipient",
+ "readOnly": true,
+ "type": "string"
+ },
+ "urls": {
+ "description": "The Urls contained in this mail message",
+ "items": {
+ "description": "A Url contained in this mail message",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "threats": {
+ "description": "The threats of this mail message",
+ "items": {
+ "description": "A threat of the mail message",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "p1Sender": {
+ "description": "The p1 sender's email address",
+ "readOnly": true,
+ "type": "string"
+ },
+ "p1SenderDisplayName": {
+ "description": "The p1 sender's display name",
+ "readOnly": true,
+ "type": "string"
+ },
+ "p1SenderDomain": {
+ "description": "The p1 sender's domain",
+ "readOnly": true,
+ "type": "string"
+ },
+ "senderIP": {
+ "description": "The sender's IP address",
+ "readOnly": true,
+ "type": "string"
+ },
+ "p2Sender": {
+ "description": "The p2 sender's email address",
+ "readOnly": true,
+ "type": "string"
+ },
+ "p2SenderDisplayName": {
+ "description": "The p2 sender's display name",
+ "readOnly": true,
+ "type": "string"
+ },
+ "p2SenderDomain": {
+ "description": "The p2 sender's domain",
+ "readOnly": true,
+ "type": "string"
+ },
+ "receiveDate": {
+ "description": "The receive date of this message",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "networkMessageId": {
+ "description": "The network message id of this mail message",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ },
+ "internetMessageId": {
+ "description": "The internet message id of this mail message",
+ "readOnly": true,
+ "type": "string"
+ },
+ "subject": {
+ "description": "The subject of this mail message",
+ "readOnly": true,
+ "type": "string"
+ },
+ "language": {
+ "description": "The language of this mail message",
+ "readOnly": true,
+ "type": "string"
+ },
+ "threatDetectionMethods": {
+ "description": "The threat detection methods",
+ "items": {
+ "description": "A threat detection method",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "bodyFingerprintBin1": {
+ "description": "The bodyFingerprintBin1",
+ "type": "integer",
+ "format": "int32"
+ },
+ "bodyFingerprintBin2": {
+ "description": "The bodyFingerprintBin2",
+ "type": "integer",
+ "format": "int32"
+ },
+ "bodyFingerprintBin3": {
+ "description": "The bodyFingerprintBin3",
+ "type": "integer",
+ "format": "int32"
+ },
+ "bodyFingerprintBin4": {
+ "description": "The bodyFingerprintBin4",
+ "type": "integer",
+ "format": "int32"
+ },
+ "bodyFingerprintBin5": {
+ "description": "The bodyFingerprintBin5",
+ "type": "integer",
+ "format": "int32"
+ },
+ "antispamDirection": {
+ "description": "The directionality of this mail message",
+ "enum": [
+ "Unknown",
+ "Inbound",
+ "Outbound",
+ "Intraorg"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AntispamMailDirection",
+ "values": [
+ {
+ "description": "Unknown",
+ "value": "Unknown"
+ },
+ {
+ "description": "Inbound",
+ "value": "Inbound"
+ },
+ {
+ "description": "Outbound",
+ "value": "Outbound"
+ },
+ {
+ "description": "Intraorg",
+ "value": "Intraorg"
+ }
+ ]
+ }
+ },
+ "deliveryAction": {
+ "description": "The delivery action of this mail message like Delivered, Blocked, Replaced etc",
+ "enum": [
+ "Unknown",
+ "DeliveredAsSpam",
+ "Delivered",
+ "Blocked",
+ "Replaced"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": false,
+ "name": "DeliveryAction",
+ "values": [
+ {
+ "description": "Unknown",
+ "value": "Unknown"
+ },
+ {
+ "description": "DeliveredAsSpam",
+ "value": "DeliveredAsSpam"
+ },
+ {
+ "description": "Delivered",
+ "value": "Delivered"
+ },
+ {
+ "description": "Blocked",
+ "value": "Blocked"
+ },
+ {
+ "description": "Replaced",
+ "value": "Replaced"
+ }
+ ]
+ }
+ },
+ "deliveryLocation": {
+ "description": "The delivery location of this mail message like Inbox, JunkFolder etc",
+ "enum": [
+ "Unknown",
+ "Inbox",
+ "JunkFolder",
+ "DeletedFolder",
+ "Quarantine",
+ "External",
+ "Failed",
+ "Dropped",
+ "Forwarded"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": false,
+ "name": "DeliveryLocation",
+ "values": [
+ {
+ "description": "Unknown",
+ "value": "Unknown"
+ },
+ {
+ "description": "Inbox",
+ "value": "Inbox"
+ },
+ {
+ "description": "JunkFolder",
+ "value": "JunkFolder"
+ },
+ {
+ "description": "DeletedFolder",
+ "value": "DeletedFolder"
+ },
+ {
+ "description": "Quarantine",
+ "value": "Quarantine"
+ },
+ {
+ "description": "External",
+ "value": "External"
+ },
+ {
+ "description": "Failed",
+ "value": "Failed"
+ },
+ {
+ "description": "Dropped",
+ "value": "Dropped"
+ },
+ {
+ "description": "Forwarded",
+ "value": "Forwarded"
+ }
+ ]
+ }
+ }
+ },
+ "type": "object"
+ },
+ "MalwareEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a malware entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MalwareEntityProperties",
+ "description": "File entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Malware"
+ },
+ "MalwareEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Malware entity property bag.",
+ "properties": {
+ "category": {
+ "description": "The malware category by the vendor, e.g. Trojan",
+ "readOnly": true,
+ "type": "string"
+ },
+ "fileEntityIds": {
+ "description": "List of linked file entity identifiers on which the malware was found",
+ "items": {
+ "description": "file entity id",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "malwareName": {
+ "description": "The malware name by the vendor, e.g. Win32/Toga!rfn",
+ "readOnly": true,
+ "type": "string"
+ },
+ "processEntityIds": {
+ "description": "List of linked process entity identifiers on which the malware was found.",
+ "items": {
+ "description": "process entity id",
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "ProcessEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a process entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ProcessEntityProperties",
+ "description": "Process entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Process"
+ },
+ "ProcessEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Process entity property bag.",
+ "properties": {
+ "accountEntityId": {
+ "description": "The account entity id running the processes.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "commandLine": {
+ "description": "The command line used to create the process",
+ "readOnly": true,
+ "type": "string"
+ },
+ "creationTimeUtc": {
+ "description": "The time when the process started to run",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "elevationToken": {
+ "description": "The elevation token associated with the process.",
+ "enum": [
+ "Default",
+ "Full",
+ "Limited"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": false,
+ "name": "ElevationToken",
+ "values": [
+ {
+ "description": "Default elevation token",
+ "value": "Default"
+ },
+ {
+ "description": "Full elevation token",
+ "value": "Full"
+ },
+ {
+ "description": "Limited elevation token",
+ "value": "Limited"
+ }
+ ]
+ }
+ },
+ "hostEntityId": {
+ "description": "The host entity id on which the process was running",
+ "readOnly": true,
+ "type": "string"
+ },
+ "hostLogonSessionEntityId": {
+ "description": "The session entity id in which the process was running",
+ "readOnly": true,
+ "type": "string"
+ },
+ "imageFileEntityId": {
+ "description": "Image file entity id",
+ "readOnly": true,
+ "type": "string"
+ },
+ "parentProcessEntityId": {
+ "description": "The parent process entity id.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "processId": {
+ "description": "The process ID",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "RegistryKeyEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a registry key entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RegistryKeyEntityProperties",
+ "description": "RegistryKey entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "RegistryKey"
+ },
+ "RegistryKeyEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "RegistryKey entity property bag.",
+ "properties": {
+ "hive": {
+ "description": "the hive that holds the registry key.",
+ "enum": [
+ "HKEY_LOCAL_MACHINE",
+ "HKEY_CLASSES_ROOT",
+ "HKEY_CURRENT_CONFIG",
+ "HKEY_USERS",
+ "HKEY_CURRENT_USER_LOCAL_SETTINGS",
+ "HKEY_PERFORMANCE_DATA",
+ "HKEY_PERFORMANCE_NLSTEXT",
+ "HKEY_PERFORMANCE_TEXT",
+ "HKEY_A",
+ "HKEY_CURRENT_USER"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RegistryHive",
+ "values": [
+ {
+ "description": "HKEY_LOCAL_MACHINE",
+ "value": "HKEY_LOCAL_MACHINE"
+ },
+ {
+ "description": "HKEY_CLASSES_ROOT",
+ "value": "HKEY_CLASSES_ROOT"
+ },
+ {
+ "description": "HKEY_CURRENT_CONFIG",
+ "value": "HKEY_CURRENT_CONFIG"
+ },
+ {
+ "description": "HKEY_USERS",
+ "value": "HKEY_USERS"
+ },
+ {
+ "description": "HKEY_CURRENT_USER_LOCAL_SETTINGS",
+ "value": "HKEY_CURRENT_USER_LOCAL_SETTINGS"
+ },
+ {
+ "description": "HKEY_PERFORMANCE_DATA",
+ "value": "HKEY_PERFORMANCE_DATA"
+ },
+ {
+ "description": "HKEY_PERFORMANCE_NLSTEXT",
+ "value": "HKEY_PERFORMANCE_NLSTEXT"
+ },
+ {
+ "description": "HKEY_PERFORMANCE_TEXT",
+ "value": "HKEY_PERFORMANCE_TEXT"
+ },
+ {
+ "description": "HKEY_A",
+ "value": "HKEY_A"
+ },
+ {
+ "description": "HKEY_CURRENT_USER",
+ "value": "HKEY_CURRENT_USER"
+ }
+ ]
+ }
+ },
+ "key": {
+ "description": "The registry key path.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "RegistryValueEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a registry value entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RegistryValueEntityProperties",
+ "description": "RegistryKey entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "RegistryValue"
+ },
+ "RegistryValueEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "RegistryValue entity property bag.",
+ "properties": {
+ "keyEntityId": {
+ "description": "The registry key entity id.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "valueData": {
+ "description": "String formatted representation of the value data.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "valueName": {
+ "description": "The registry value name.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "valueType": {
+ "description": "Specifies the data types to use when storing values in the registry, or identifies the data type of a value in the registry.",
+ "enum": [
+ "None",
+ "Unknown",
+ "String",
+ "ExpandString",
+ "Binary",
+ "DWord",
+ "MultiString",
+ "QWord"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RegistryValueKind",
+ "values": [
+ {
+ "description": "None",
+ "value": "None"
+ },
+ {
+ "description": "Unknown value type",
+ "value": "Unknown"
+ },
+ {
+ "description": "String value type",
+ "value": "String"
+ },
+ {
+ "description": "ExpandString value type",
+ "value": "ExpandString"
+ },
+ {
+ "description": "Binary value type",
+ "value": "Binary"
+ },
+ {
+ "description": "DWord value type",
+ "value": "DWord"
+ },
+ {
+ "description": "MultiString value type",
+ "value": "MultiString"
+ },
+ {
+ "description": "QWord value type",
+ "value": "QWord"
+ }
+ ]
+ }
+ }
+ },
+ "type": "object"
+ },
+ "SecurityAlert": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a security alert entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SecurityAlertProperties",
+ "description": "SecurityAlert entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "SecurityAlert"
+ },
+ "SecurityAlertProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "SecurityAlert entity property bag.",
+ "properties": {
+ "alertDisplayName": {
+ "description": "The display name of the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "alertType": {
+ "description": "The type name of the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "compromisedEntity": {
+ "description": "Display name of the main entity being reported on.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "confidenceLevel": {
+ "description": "The confidence level of this alert.",
+ "enum": [
+ "Unknown",
+ "Low",
+ "High"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConfidenceLevel",
+ "values": [
+ {
+ "description": "Unknown confidence, the is the default value",
+ "value": "Unknown"
+ },
+ {
+ "description": "Low confidence, meaning we have some doubts this is indeed malicious or part of an attack",
+ "value": "Low"
+ },
+ {
+ "description": "High confidence that the alert is true positive malicious",
+ "value": "High"
+ }
+ ]
+ }
+ },
+ "confidenceReasons": {
+ "description": "The confidence reasons",
+ "items": {
+ "description": "confidence reason item",
+ "properties": {
+ "reason": {
+ "description": "The reason's description",
+ "readOnly": true,
+ "type": "string"
+ },
+ "reasonType": {
+ "description": "The type (category) of the reason",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "confidenceScore": {
+ "description": "The confidence score of the alert.",
+ "format": "double",
+ "readOnly": true,
+ "type": "number"
+ },
+ "confidenceScoreStatus": {
+ "description": "The confidence score calculation status, i.e. indicating if score calculation is pending for this alert, not applicable or final.",
+ "enum": [
+ "NotApplicable",
+ "InProcess",
+ "NotFinal",
+ "Final"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConfidenceScoreStatus",
+ "values": [
+ {
+ "description": "Score will not be calculated for this alert as it is not supported by virtual analyst",
+ "value": "NotApplicable"
+ },
+ {
+ "description": "No score was set yet and calculation is in progress",
+ "value": "InProcess"
+ },
+ {
+ "description": "Score is calculated and shown as part of the alert, but may be updated again at a later time following the processing of additional data",
+ "value": "NotFinal"
+ },
+ {
+ "description": "Final score was calculated and available",
+ "value": "Final"
+ }
+ ]
+ }
+ },
+ "description": {
+ "description": "Alert description.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "endTimeUtc": {
+ "description": "The impact end time of the alert (the time of the last event contributing to the alert).",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "intent": {
+ "description": "Holds the alert intent stage(s) mapping for this alert.",
+ "enum": [
+ "Unknown",
+ "Probing",
+ "Exploitation",
+ "Persistence",
+ "PrivilegeEscalation",
+ "DefenseEvasion",
+ "CredentialAccess",
+ "Discovery",
+ "LateralMovement",
+ "Execution",
+ "Collection",
+ "Exfiltration",
+ "CommandAndControl",
+ "Impact"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "KillChainIntent",
+ "values": [
+ {
+ "description": "The default value.",
+ "value": "Unknown"
+ },
+ {
+ "description": "Probing could be an attempt to access a certain resource regardless of a malicious intent or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt originating from outside the network in attempt to scan the target system and find a way in.",
+ "value": "Probing"
+ },
+ {
+ "description": "Exploitation is the stage where an attacker manage to get foothold on the attacked resource. This stage is applicable not only for compute hosts, but also for resources such as user accounts, certificates etc. Adversaries will often be able to control the resource after this stage.",
+ "value": "Exploitation"
+ },
+ {
+ "description": "Persistence is any access, action, or configuration change to a system that gives an adversary a persistent presence on that system. Adversaries will often need to maintain access to systems through interruptions such as system restarts, loss of credentials, or other failures that would require a remote access tool to restart or alternate backdoor for them to regain access.",
+ "value": "Persistence"
+ },
+ {
+ "description": "Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. Certain tools or actions require a higher level of privilege to work and are likely necessary at many points throughout an operation. User accounts with permissions to access specific systems or perform specific functions necessary for adversaries to achieve their objective may also be considered an escalation of privilege.",
+ "value": "PrivilegeEscalation"
+ },
+ {
+ "description": "Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. Sometimes these actions are the same as or variations of techniques in other categories that have the added benefit of subverting a particular defense or mitigation. ",
+ "value": "DefenseEvasion"
+ },
+ {
+ "description": "Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. Adversaries will likely attempt to obtain legitimate credentials from users or administrator accounts (local system administrator or domain users with administrator access) to use within the network. With sufficient access within a network, an adversary can create accounts for later use within the environment.",
+ "value": "CredentialAccess"
+ },
+ {
+ "description": "Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. When adversaries gain access to a new system, they must navigate themselves to what they now have control of and what benefits operating from that system give to their current objective or overall goals during the intrusion. The operating system provides many native tools that aid in this post-compromise information-gathering phase.",
+ "value": "Discovery"
+ },
+ {
+ "description": "Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. The lateral movement techniques could allow an adversary to gather information from a system without needing additional tools, such as a remote access tool. An adversary can use lateral movement for many purposes, including remote Execution of tools, pivoting to additional systems, access to specific information or files, access to additional credentials, or to cause an effect.",
+ "value": "LateralMovement"
+ },
+ {
+ "description": "The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. This tactic is often used in conjunction with lateral movement to expand access to remote systems on a network.",
+ "value": "Execution"
+ },
+ {
+ "description": "Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.",
+ "value": "Collection"
+ },
+ {
+ "description": "Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. This category also covers locations on a system or network where the adversary may look for information to exfiltrate.",
+ "value": "Exfiltration"
+ },
+ {
+ "description": "The command and control tactic represents how adversaries communicate with systems under their control within a target network.",
+ "value": "CommandAndControl"
+ },
+ {
+ "description": "The impact intent primary objective is to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. This would often refer to techniques such as ransom-ware, defacement, data manipulation and others.",
+ "value": "Impact"
+ }
+ ]
+ }
+ },
+ "providerAlertId": {
+ "description": "The identifier of the alert inside the product which generated the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "processingEndTime": {
+ "description": "The time the alert was made available for consumption.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "productComponentName": {
+ "description": "The name of a component inside the product which generated the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "productName": {
+ "description": "The name of the product which published this alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "productVersion": {
+ "description": "The version of the product generating the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "remediationSteps": {
+ "description": "Manual action items to take to remediate the alert.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "severity": {
+ "$ref": "AlertTypes.json#/definitions/AlertSeverityEnum",
+ "description": "The severity of the alert",
+ "type": "string"
+ },
+ "startTimeUtc": {
+ "description": "The impact start time of the alert (the time of the first event contributing to the alert).",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "status": {
+ "description": "The lifecycle status of the alert.",
+ "enum": [
+ "Unknown",
+ "New",
+ "Resolved",
+ "Dismissed",
+ "InProgress"
+ ],
+ "readOnly": true,
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "AlertStatus",
+ "values": [
+ {
+ "description": "Unknown value",
+ "value": "Unknown"
+ },
+ {
+ "description": "New alert",
+ "value": "New"
+ },
+ {
+ "description": "Alert closed after handling",
+ "value": "Resolved"
+ },
+ {
+ "description": "Alert dismissed as false positive",
+ "value": "Dismissed"
+ },
+ {
+ "description": "Alert is being handled",
+ "value": "InProgress"
+ }
+ ]
+ }
+ },
+ "systemAlertId": {
+ "description": "Holds the product identifier of the alert for the product.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "tactics": {
+ "description": "The tactics of the alert",
+ "items": {
+ "$ref": "AlertTypes.json#/definitions/AttackTactic"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ },
+ "timeGenerated": {
+ "description": "The time the alert was generated.",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "vendorName": {
+ "description": "The name of the vendor that raise the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "alertLink": {
+ "description": "The uri link of the alert.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "resourceIdentifiers": {
+ "description": "The list of resource identifiers of the alert.",
+ "items": {
+ "type": "object"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ },
+ "SecurityGroupEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a security group entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SecurityGroupEntityProperties",
+ "description": "SecurityGroup entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "SecurityGroup"
+ },
+ "SecurityGroupEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "SecurityGroup entity property bag.",
+ "properties": {
+ "distinguishedName": {
+ "description": "The group distinguished name",
+ "readOnly": true,
+ "type": "string"
+ },
+ "objectGuid": {
+ "description": "A single-value attribute that is the unique identifier for the object, assigned by active directory.",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ },
+ "sid": {
+ "description": "The SID attribute is a single-value attribute that specifies the security identifier (SID) of the group",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "SubmissionMailEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a submission mail entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SubmissionMailEntityProperties",
+ "description": "Submission mail entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "SubmissionMail"
+ },
+ "SubmissionMailEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Submission mail entity property bag.",
+ "properties": {
+ "networkMessageId": {
+ "description": "The network message id of email to which submission belongs",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ },
+ "submissionId": {
+ "description": "The submission id",
+ "format": "uuid",
+ "readOnly": true,
+ "type": "string"
+ },
+ "submitter": {
+ "description": "The submitter",
+ "readOnly": true,
+ "type": "string"
+ },
+ "submissionDate": {
+ "description": "The submission date",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "timestamp": {
+ "description": "The Time stamp when the message is received (Mail)",
+ "format": "date-time",
+ "readOnly": true,
+ "type": "string"
+ },
+ "recipient": {
+ "description": "The recipient of the mail",
+ "readOnly": true,
+ "type": "string"
+ },
+ "sender": {
+ "description": "The sender of the mail",
+ "readOnly": true,
+ "type": "string"
+ },
+ "senderIp": {
+ "description": "The sender's IP",
+ "readOnly": true,
+ "type": "string"
+ },
+ "subject": {
+ "description": "The subject of submission mail",
+ "readOnly": true,
+ "type": "string"
+ },
+ "reportType": {
+ "description": "The submission type for the given instance. This maps to Junk, Phish, Malware or NotJunk.",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "UrlEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents a url entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/UrlEntityProperties",
+ "description": "Url entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Url"
+ },
+ "UrlEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Url entity property bag.",
+ "properties": {
+ "url": {
+ "description": "A full URL the entity points to",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "NicEntity": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Entity"
+ }
+ ],
+ "description": "Represents an network interface entity.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/NicEntityProperties",
+ "description": "Network interface entity properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Nic"
+ },
+ "NicEntityProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/EntityCommonProperties"
+ }
+ ],
+ "description": "Nic entity property bag.",
+ "properties": {
+ "macAddress": {
+ "description": "The MAC address of this network interface",
+ "readOnly": true,
+ "type": "string"
+ },
+ "ipAddressEntityId": {
+ "description": "The IP entity id of this network interface",
+ "readOnly": true,
+ "type": "string"
+ },
+ "vlans": {
+ "description": "A list of VLANs of the network interface entity.",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true,
+ "type": "array",
+ "x-ms-identifiers": []
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/IncidentTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/IncidentTypes.json
new file mode 100644
index 000000000000..38bcbb853ce2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/IncidentTypes.json
@@ -0,0 +1,246 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-10-01-preview",
+ "title": "Common Incident types"
+ },
+ "paths": {},
+ "definitions": {
+ "IncidentClassificationEnum": {
+ "description": "The reason the incident was closed",
+ "enum": [
+ "Undetermined",
+ "TruePositive",
+ "BenignPositive",
+ "FalsePositive"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IncidentClassification",
+ "values": [
+ {
+ "description": "Incident classification was undetermined",
+ "value": "Undetermined"
+ },
+ {
+ "description": "Incident was true positive",
+ "value": "TruePositive"
+ },
+ {
+ "description": "Incident was benign positive",
+ "value": "BenignPositive"
+ },
+ {
+ "description": "Incident was false positive",
+ "value": "FalsePositive"
+ }
+ ]
+ }
+ },
+ "IncidentClassificationReasonEnum": {
+ "description": "The classification reason the incident was closed with",
+ "enum": [
+ "SuspiciousActivity",
+ "SuspiciousButExpected",
+ "IncorrectAlertLogic",
+ "InaccurateData"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IncidentClassificationReason",
+ "values": [
+ {
+ "description": "Classification reason was suspicious activity",
+ "value": "SuspiciousActivity"
+ },
+ {
+ "description": "Classification reason was suspicious but expected",
+ "value": "SuspiciousButExpected"
+ },
+ {
+ "description": "Classification reason was incorrect alert logic",
+ "value": "IncorrectAlertLogic"
+ },
+ {
+ "description": "Classification reason was inaccurate data",
+ "value": "InaccurateData"
+ }
+ ]
+ }
+ },
+ "IncidentLabel": {
+ "description": "Represents an incident label",
+ "properties": {
+ "labelName": {
+ "description": "The name of the label",
+ "type": "string"
+ },
+ "labelType": {
+ "$ref": "#/definitions/IncidentLabelType"
+ }
+ },
+ "required": [
+ "labelName"
+ ],
+ "type": "object"
+ },
+ "IncidentLabelType": {
+ "description": "The type of the label",
+ "enum": [
+ "User",
+ "AutoAssigned"
+ ],
+ "type": "string",
+ "readOnly": true,
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IncidentLabelType",
+ "values": [
+ {
+ "description": "Label manually created by a user",
+ "value": "User"
+ },
+ {
+ "description": "Label automatically created by the system",
+ "value": "AutoAssigned"
+ }
+ ]
+ }
+ },
+ "IncidentSeverityEnum": {
+ "description": "The severity of the incident",
+ "enum": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IncidentSeverity",
+ "values": [
+ {
+ "description": "High severity",
+ "value": "High"
+ },
+ {
+ "description": "Medium severity",
+ "value": "Medium"
+ },
+ {
+ "description": "Low severity",
+ "value": "Low"
+ },
+ {
+ "description": "Informational severity",
+ "value": "Informational"
+ }
+ ]
+ }
+ },
+ "IncidentStatusEnum": {
+ "description": "The status of the incident",
+ "enum": [
+ "New",
+ "Active",
+ "Closed"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "IncidentStatus",
+ "values": [
+ {
+ "description": "An active incident which isn't being handled currently",
+ "value": "New"
+ },
+ {
+ "description": "An active incident which is being handled",
+ "value": "Active"
+ },
+ {
+ "description": "A non-active incident",
+ "value": "Closed"
+ }
+ ]
+ }
+ },
+ "IncidentOwnerInfo": {
+ "description": "Information on the user an incident is assigned to",
+ "properties": {
+ "email": {
+ "description": "The email of the user the incident is assigned to.",
+ "type": "string"
+ },
+ "assignedTo": {
+ "description": "The name of the user the incident is assigned to.",
+ "type": "string"
+ },
+ "objectId": {
+ "description": "The object id of the user the incident is assigned to.",
+ "format": "uuid",
+ "type": "string"
+ },
+ "userPrincipalName": {
+ "description": "The user principal name of the user the incident is assigned to.",
+ "type": "string"
+ },
+ "ownerType": {
+ "description": "The type of the owner the incident is assigned to.",
+ "type": "string",
+ "enum": [
+ "Unknown",
+ "User",
+ "Group"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "OwnerType",
+ "values": [
+ {
+ "description": "The incident owner type is unknown",
+ "value": "Unknown"
+ },
+ {
+ "description": "The incident owner type is an AAD user",
+ "value": "User"
+ },
+ {
+ "description": "The incident owner type is an AAD group",
+ "value": "Group"
+ }
+ ]
+ }
+ }
+ },
+ "type": "object"
+ },
+ "IncidentInfo": {
+ "description": "Describes related incident information for the bookmark",
+ "properties": {
+ "incidentId": {
+ "description": "Incident Id",
+ "type": "string"
+ },
+ "severity": {
+ "description": "The severity of the incident",
+ "type": "string",
+ "$ref": "#/definitions/IncidentSeverityEnum"
+ },
+ "title": {
+ "description": "The title of the incident",
+ "type": "string"
+ },
+ "relationName": {
+ "description": "Relation Name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/RelationTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/RelationTypes.json
new file mode 100644
index 000000000000..86e7ac46b8a6
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/RelationTypes.json
@@ -0,0 +1,98 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-10-01-preview",
+ "title": "Common Relation types"
+ },
+ "paths": {},
+ "definitions": {
+ "RelationList": {
+ "description": "List of relations.",
+ "properties": {
+ "nextLink": {
+ "readOnly": true,
+ "description": "URL to fetch the next set of relations.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of relations.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Relation"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "Relation": {
+ "type": "object",
+ "description": "Represents a relation between two resources",
+ "allOf": [
+ {
+ "$ref": "../../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RelationProperties",
+ "description": "Relation properties",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "RelationProperties": {
+ "description": "Relation property bag.",
+ "properties": {
+ "relatedResourceId": {
+ "description": "The resource ID of the related resource",
+ "type": "string"
+ },
+ "relatedResourceName": {
+ "description": "The name of the related resource",
+ "readOnly": true,
+ "type": "string"
+ },
+ "relatedResourceType": {
+ "description": "The resource type of the related resource",
+ "readOnly": true,
+ "type": "string"
+ },
+ "relatedResourceKind": {
+ "description": "The resource kind of the related resource",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "required": [
+ "relatedResourceId"
+ ],
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "RelationName": {
+ "name": "relationName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,63}$",
+ "minLength": 3,
+ "maxLength": 63,
+ "description": "Relation Name",
+ "x-ms-parameter-location": "method"
+ },
+ "Relation": {
+ "name": "relation",
+ "in": "body",
+ "description": "The relation model",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Relation"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ThreatIntelligenceTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ThreatIntelligenceTypes.json
new file mode 100644
index 000000000000..b4177b523799
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/common/ThreatIntelligenceTypes.json
@@ -0,0 +1,48 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-10-01-preview",
+ "title": "Common Relation types"
+ },
+ "paths": {},
+ "definitions": {
+ "ThreatIntelligence": {
+ "description": "ThreatIntelligence property bag.",
+ "properties": {
+ "confidence": {
+ "description": "Confidence (must be between 0 and 1)",
+ "format": "double",
+ "readOnly": true,
+ "type": "number"
+ },
+ "providerName": {
+ "description": "Name of the provider from whom this Threat Intelligence information was received",
+ "readOnly": true,
+ "type": "string"
+ },
+ "reportLink": {
+ "description": "Report link",
+ "readOnly": true,
+ "type": "string"
+ },
+ "threatDescription": {
+ "description": "Threat description (free text)",
+ "readOnly": true,
+ "type": "string"
+ },
+ "threatName": {
+ "description": "Threat name (e.g. \"Jedobot malware\")",
+ "readOnly": true,
+ "type": "string"
+ },
+ "threatType": {
+ "description": "Threat type (e.g. \"Botnet\")",
+ "readOnly": true,
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectorDefinitions.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectorDefinitions.json
new file mode 100644
index 000000000000..c6d5089e5b55
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectorDefinitions.json
@@ -0,0 +1,706 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectorDefinitions": {
+ "get": {
+ "x-ms-examples": {
+ "Get all data connector definitions.": {
+ "$ref": "./examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json"
+ }
+ },
+ "tags": [
+ "ConnectorDefinitions"
+ ],
+ "description": "Gets all data connector definitions.",
+ "operationId": "DataConnectorDefinitions_List",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DataConnectorDefinitionArmCollectionWrapper"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/{dataConnectorDefinitionName}": {
+ "get": {
+ "x-ms-examples": {
+ "Get customize data connector definition": {
+ "$ref": "./examples/dataConnectorDefinitions/GetCustomizableDataConnectorDefinitionById.json"
+ }
+ },
+ "tags": [
+ "ConnectorDefinitions"
+ ],
+ "description": "Gets a data connector definition.",
+ "operationId": "DataConnectorDefinitions_Get",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/dataConnectorDefinitionName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success",
+ "schema": {
+ "$ref": "#/definitions/DataConnectorDefinition"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-examples": {
+ "Create data connector definition": {
+ "$ref": "./examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json"
+ }
+ },
+ "tags": [
+ "ConnectorDefinitions"
+ ],
+ "description": "Creates or updates the data connector definition.",
+ "operationId": "DataConnectorDefinitions_CreateOrUpdate",
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/dataConnectorDefinitionName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "connectorDefinitionInput",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DataConnectorDefinition"
+ },
+ "description": "The data connector definition",
+ "x-ms-parameter-location": "method"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Updated",
+ "schema": {
+ "$ref": "#/definitions/DataConnectorDefinition"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/DataConnectorDefinition"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete data connector definition": {
+ "$ref": "./examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json"
+ }
+ },
+ "tags": [
+ "ConnectorDefinitions"
+ ],
+ "description": "Delete the data connector definition.",
+ "operationId": "DataConnectorDefinitions_Delete",
+ "produces": [
+ "application/json"
+ ],
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/dataConnectorDefinitionName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Success"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConnectorDefinitionsAvailability": {
+ "description": "The exposure status of the connector to the customers.",
+ "type": "object",
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/AvailabilityStatus"
+ },
+ "isPreview": {
+ "description": "Gets or sets a value indicating whether the connector is preview.",
+ "type": "boolean"
+ }
+ }
+ },
+ "AvailabilityStatus": {
+ "description": "The exposure status of the connector to the customers. Available values are 0-4 (0=None, 1=Available, 2=FeatureFlag, 3=Internal).",
+ "type": "integer",
+ "format": "int32"
+ },
+ "ConnectivityCriterion": {
+ "description": "The criteria by which we determine whether the connector is connected or not.\r\nFor Example, use a KQL query to check if the expected data type is flowing).",
+ "required": [
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "Gets or sets the type of connectivity.",
+ "type": "string"
+ },
+ "value": {
+ "description": "Gets or sets the queries for checking connectivity.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "ConnectorDataType": {
+ "description": "The data type which is created by the connector,\r\nincluding a query indicated when was the last time that data type was received in the workspace.",
+ "required": [
+ "lastDataReceivedQuery",
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Gets or sets the name of the data type to show in the graph.",
+ "type": "string"
+ },
+ "lastDataReceivedQuery": {
+ "description": "Gets or sets the query to indicate when relevant data was last received in the workspace.",
+ "type": "string"
+ }
+ }
+ },
+ "DataConnectorDefinition": {
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "required": [
+ "kind"
+ ],
+ "description": "An Azure resource, which encapsulate the entire info requires to display a data connector page in Azure portal,\r\nand the info required to define data connections.",
+ "type": "object",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/DataConnectorDefinitionKind",
+ "description": "The data connector kind",
+ "type": "string"
+ }
+ },
+ "discriminator": "kind"
+ },
+ "DataConnectorDefinitionKind": {
+ "description": "The kind of the data connector definitions",
+ "enum": [
+ "Customizable"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DataConnectorDefinitionKind",
+ "values": [
+ {
+ "value": "Customizable"
+ }
+ ]
+ }
+ },
+ "DataConnectorDefinitionArmCollectionWrapper": {
+ "type": "object",
+ "description": "Encapsulate the data connector definition object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DataConnectorDefinition"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ }
+ },
+ "CustomizableConnectorDefinition": {
+ "description": "Connector definition for kind 'Customizable'.",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDefinition"
+ }
+ ],
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CustomizableConnectorDefinitionProperties",
+ "description": "Customizable properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "x-ms-discriminator-value": "Customizable"
+ },
+ "CustomizableConnectorDefinitionProperties": {
+ "description": "The UiConfig for 'Customizable' connector definition kind.",
+ "type": "object",
+ "required": [
+ "connectorUiConfig"
+ ],
+ "properties": {
+ "createdTimeUtc": {
+ "format": "date-time",
+ "description": "Gets or sets the connector definition created date in UTC format.",
+ "type": "string"
+ },
+ "lastModifiedUtc": {
+ "format": "date-time",
+ "description": "Gets or sets the connector definition last modified date in UTC format.",
+ "type": "string"
+ },
+ "connectorUiConfig": {
+ "$ref": "#/definitions/CustomizableConnectorUiConfig"
+ },
+ "connectionsConfig": {
+ "$ref": "#/definitions/CustomizableConnectionsConfig"
+ }
+ }
+ },
+ "CustomizableConnectionsConfig": {
+ "description": "The UiConfig for 'Customizable' connector definition kind.",
+ "required": [
+ "templateSpecVersion",
+ "templateSpecName"
+ ],
+ "type": "object",
+ "properties": {
+ "templateSpecName": {
+ "description": "Gets or sets the template name. The template includes ARM templates that can be created by the connector, usually it will be the dataConnectors ARM templates.",
+ "type": "string"
+ },
+ "templateSpecVersion": {
+ "description": "Gets or sets the template version.",
+ "type": "string"
+ }
+ }
+ },
+ "CustomizableConnectorUiConfig": {
+ "description": "The UiConfig for 'Customizable' connector definition kind.",
+ "required": [
+ "dataTypes",
+ "descriptionMarkdown",
+ "graphQueries",
+ "instructionSteps",
+ "permissions",
+ "publisher",
+ "title",
+ "connectivityCriteria"
+ ],
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Gets or sets custom connector id. optional field.",
+ "type": "string"
+ },
+ "title": {
+ "description": "Gets or sets the connector blade title.",
+ "type": "string"
+ },
+ "publisher": {
+ "description": "Gets or sets the connector publisher name.",
+ "type": "string"
+ },
+ "descriptionMarkdown": {
+ "description": "Gets or sets the connector description in markdown format.",
+ "type": "string"
+ },
+ "graphQueries": {
+ "description": "Gets or sets the graph queries to show the current data volume over time.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GraphQuery"
+ },
+ "x-ms-identifiers": []
+ },
+ "dataTypes": {
+ "description": "Gets or sets the data types to check for last data received.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectorDataType"
+ },
+ "x-ms-identifiers": []
+ },
+ "connectivityCriteria": {
+ "description": "Gets or sets the way the connector checks whether the connector is connected.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectivityCriterion"
+ },
+ "x-ms-identifiers": []
+ },
+ "availability": {
+ "$ref": "#/definitions/ConnectorDefinitionsAvailability"
+ },
+ "permissions": {
+ "$ref": "#/definitions/ConnectorDefinitionsPermissions"
+ },
+ "instructionSteps": {
+ "description": "Gets or sets the instruction steps to enable the connector.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstructionStep"
+ },
+ "x-ms-identifiers": []
+ },
+ "logo": {
+ "description": "Gets or sets the connector logo to be used when displaying the connector within Azure Sentinel's connector's gallery.\r\nThe logo value should be in SVG format.",
+ "type": "string"
+ },
+ "isConnectivityCriteriasMatchSome": {
+ "description": "Gets or sets a value indicating whether to use 'OR'(SOME) or 'AND' between ConnectivityCriteria items.",
+ "type": "boolean"
+ }
+ }
+ },
+ "CustomPermissionDetails": {
+ "description": "The Custom permissions required for the connector.",
+ "required": [
+ "description",
+ "name"
+ ],
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Gets or sets the custom permissions name.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Gets or sets the custom permissions description.",
+ "type": "string"
+ }
+ }
+ },
+ "GraphQuery": {
+ "description": "The graph query to show the volume of data arriving into the workspace over time.",
+ "required": [
+ "baseQuery",
+ "legend",
+ "metricName"
+ ],
+ "type": "object",
+ "properties": {
+ "metricName": {
+ "description": "Gets or sets the metric name that the query is checking. For example: 'Total data receive'.",
+ "type": "string"
+ },
+ "legend": {
+ "description": "Gets or sets the legend for the graph.",
+ "type": "string"
+ },
+ "baseQuery": {
+ "description": "Gets or sets the base query for the graph.\r\nThe base query is wrapped by Sentinel UI infra with a KQL query, that measures the volume over time.",
+ "type": "string"
+ }
+ }
+ },
+ "InstructionStep": {
+ "description": "Instruction steps to enable the connector.",
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "Gets or sets the instruction step title.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Gets or sets the instruction step description.",
+ "type": "string"
+ },
+ "instructions": {
+ "description": "Gets or sets the instruction step details.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstructionStepDetails"
+ },
+ "x-ms-identifiers": []
+ },
+ "innerSteps": {
+ "description": "Gets or sets the inner instruction steps details.\r\nFor Example: instruction step 1 might contain inner instruction steps: [instruction step 1.1, instruction step 1.2].",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstructionStep"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "InstructionStepDetails": {
+ "description": "Instruction step details, to be displayed in the Instructions steps section in the connector's page in Sentinel Portal.",
+ "required": [
+ "parameters",
+ "type"
+ ],
+ "type": "object",
+ "properties": {
+ "parameters": {
+ "description": "Gets or sets the instruction type parameters settings.",
+ "type": "object"
+ },
+ "type": {
+ "description": "Gets or sets the instruction type name.",
+ "type": "string"
+ }
+ }
+ },
+ "ConnectorDefinitionsPermissions": {
+ "description": "The required Permissions for the connector.",
+ "type": "object",
+ "properties": {
+ "tenant": {
+ "description": "Gets or sets the required tenant permissions for the connector.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "licenses": {
+ "description": "Gets or sets the required licenses for the user to create connections.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "resourceProvider": {
+ "description": "Gets or sets the resource provider permissions required for the user to create connections.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinitionsResourceProvider"
+ },
+ "x-ms-identifiers": []
+ },
+ "customs": {
+ "description": "Gets or sets the customs permissions required for the user to create connections.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CustomPermissionDetails"
+ },
+ "x-ms-identifiers": []
+ }
+ }
+ },
+ "ProviderPermissionsScope": {
+ "description": "The scope on which the user should have permissions, in order to be able to create connections.",
+ "enum": [
+ "Subscription",
+ "ResourceGroup",
+ "Workspace"
+ ],
+ "type": "string",
+ "example": "Subscription",
+ "x-ms-enum": {
+ "name": "ProviderPermissionsScope",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Subscription"
+ },
+ {
+ "value": "ResourceGroup"
+ },
+ {
+ "value": "Workspace"
+ }
+ ]
+ }
+ },
+ "ConnectorDefinitionsResourceProvider": {
+ "description": "The resource provider details include the required permissions for the user to create connections.\r\nThe user should have the required permissions(Read\\Write, ..) in the specified scope ProviderPermissionsScope against the specified resource provider.",
+ "required": [
+ "permissionsDisplayText",
+ "provider",
+ "providerDisplayName",
+ "requiredPermissions",
+ "scope"
+ ],
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Gets or sets the provider name.",
+ "type": "string"
+ },
+ "permissionsDisplayText": {
+ "description": "Gets or sets the permissions description text.",
+ "type": "string"
+ },
+ "providerDisplayName": {
+ "description": "Gets or sets the permissions provider display name.",
+ "type": "string"
+ },
+ "scope": {
+ "$ref": "#/definitions/ProviderPermissionsScope"
+ },
+ "requiredPermissions": {
+ "$ref": "#/definitions/ResourceProviderRequiredPermissions"
+ }
+ }
+ },
+ "ResourceProviderRequiredPermissions": {
+ "description": "Required permissions for the connector resource provider that define in ResourceProviders.\r\nFor more information about the permissions see here.",
+ "type": "object",
+ "properties": {
+ "read": {
+ "description": "Gets or sets a value indicating whether the permission is read action (GET).",
+ "type": "boolean"
+ },
+ "write": {
+ "description": "Gets or sets a value indicating whether the permission is write action (PUT or PATCH).",
+ "type": "boolean"
+ },
+ "delete": {
+ "description": "Gets or sets a value indicating whether the permission is delete action (DELETE).",
+ "type": "boolean"
+ },
+ "action": {
+ "description": "Gets or sets a value indicating whether the permission is custom actions (POST).",
+ "type": "boolean"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "dataConnectorDefinitionName": {
+ "in": "path",
+ "name": "dataConnectorDefinitionName",
+ "description": "The data connector definition name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-z0-9A-Z-_]*$",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectors.json
new file mode 100644
index 000000000000..af47ed6ae9cc
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectors.json
@@ -0,0 +1,4175 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors": {
+ "get": {
+ "x-ms-examples": {
+ "Get all data connectors.": {
+ "$ref": "./examples/dataConnectors/GetDataConnectors.json"
+ }
+ },
+ "tags": [
+ "Data Connectors"
+ ],
+ "description": "Gets all data connectors.",
+ "operationId": "DataConnectors_List",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed",
+ "schema": {
+ "$ref": "#/definitions/DataConnectorList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors/{dataConnectorId}": {
+ "get": {
+ "x-ms-examples": {
+ "Get an Office365 data connector.": {
+ "$ref": "./examples/dataConnectors/GetOfficeDataConnetorById.json"
+ },
+ "Get a TI data connector": {
+ "$ref": "./examples/dataConnectors/GetThreatIntelligenceById.json"
+ },
+ "Get a TI Taxii data connector.": {
+ "$ref": "./examples/dataConnectors/GetThreatIntelligenceTaxiiById.json"
+ },
+ "Get a MCAS data connector": {
+ "$ref": "./examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json"
+ },
+ "Get a ASC data connector": {
+ "$ref": "./examples/dataConnectors/GetAzureSecurityCenterById.json"
+ },
+ "Get an AADIP (Azure Active Directory Identity Protection) data connector": {
+ "$ref": "./examples/dataConnectors/GetAzureActiveDirectoryById.json"
+ },
+ "Get an AwsCloudTrail data connector": {
+ "$ref": "./examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json"
+ },
+ "Get an Aws S3 data connector": {
+ "$ref": "./examples/dataConnectors/GetAmazonWebServicesS3ById.json"
+ },
+ "Get an AATP data connector": {
+ "$ref": "./examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json"
+ },
+ "Get a MDATP data connector": {
+ "$ref": "./examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json"
+ },
+ "Get an Office ATP data connector": {
+ "$ref": "./examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json"
+ },
+ "Get an Office IRM data connector": {
+ "$ref": "./examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json"
+ },
+ "Get an Office365 Project data connector": {
+ "$ref": "./examples/dataConnectors/GetOffice365ProjectDataConnetorById.json"
+ },
+ "Get a MicrosoftPurviewInformationProtection data connector": {
+ "$ref": "./examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json"
+ },
+ "Get an Office365 PowerBI data connector": {
+ "$ref": "./examples/dataConnectors/GetOfficePowerBIDataConnetorById.json"
+ },
+ "Get a Dynamics365 data connector": {
+ "$ref": "./examples/dataConnectors/GetDynamics365DataConnectorById.json"
+ },
+ "Get a MicrosoftThreatProtection data connector": {
+ "$ref": "./examples/dataConnectors/GetMicrosoftThreatProtectionById.json"
+ },
+ "Get a MicrosoftThreatIntelligence data connector": {
+ "$ref": "./examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json"
+ },
+ "Get a GenericUI data connector": {
+ "$ref": "./examples/dataConnectors/GetGenericUI.json"
+ },
+ "Get a APIPolling data connector": {
+ "$ref": "./examples/dataConnectors/GetAPIPolling.json"
+ },
+ "Get a IoT data connector": {
+ "$ref": "./examples/dataConnectors/GetIoTById.json"
+ },
+ "Get a GCP data connector": {
+ "$ref": "./examples/dataConnectors/GetGoogleCloudPlatformById.json"
+ },
+ "Get a RestApiPoller data connector": {
+ "$ref": "./examples/dataConnectors/GetRestApiPollerById.json"
+ },
+ "Get a PurviewAudit data connector": {
+ "$ref": "./examples/dataConnectors/GetPurviewAuditDataConnectorById.json"
+ }
+ },
+ "tags": [
+ "Data Connectors"
+ ],
+ "description": "Gets a data connector.",
+ "operationId": "DataConnectors_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed",
+ "schema": {
+ "$ref": "#/definitions/DataConnector"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "x-ms-azure-resource": true,
+ "x-ms-examples": {
+ "Creates or updates an Office365 data connector": {
+ "$ref": "./examples/dataConnectors/CreateOfficeDataConnetor.json"
+ },
+ "Creates or updates an Office365 Project data connector": {
+ "$ref": "./examples/dataConnectors/CreateOffice365ProjectDataConnetor.json"
+ },
+ "Creates or updates an MicrosoftPurviewInformationProtection data connector": {
+ "$ref": "./examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json"
+ },
+ "Creates or updates a Microsoft Threat Intelligence data connector.": {
+ "$ref": "./examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json"
+ },
+ "Creates or updates an Office PowerBI data connector": {
+ "$ref": "./examples/dataConnectors/CreateOfficePowerBIDataConnector.json"
+ },
+ "Creates or updates a Threat Intelligence Taxii data connector.": {
+ "$ref": "./examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json"
+ },
+ "Creates or updates an Threat Intelligence Platform data connector": {
+ "$ref": "./examples/dataConnectors/CreateThreatIntelligenceDataConnector.json"
+ },
+ "Creates or updates a Dynamics365 data connector.": {
+ "$ref": "./examples/dataConnectors/CreateDynamics365DataConnetor.json"
+ },
+ "Creates or updates a GenericUI data connector": {
+ "$ref": "./examples/dataConnectors/CreateGenericUI.json"
+ },
+ "Creates or updates a APIPolling data connector": {
+ "$ref": "./examples/dataConnectors/CreateAPIPolling.json"
+ },
+ "Creates or updates a MicrosoftThreatProtection data connector": {
+ "$ref": "./examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json"
+ },
+ "Creates or updates a GCP data connector": {
+ "$ref": "./examples/dataConnectors/CreateGoogleCloudPlatform.json"
+ },
+ "Creates or updates a PurviewAudit data connector": {
+ "$ref": "./examples/dataConnectors/CreatePurviewAuditDataConnector.json"
+ }
+ },
+ "tags": [
+ "Data Connectors"
+ ],
+ "description": "Creates or updates the data connector.",
+ "operationId": "DataConnectors_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorId"
+ },
+ {
+ "$ref": "#/parameters/DataConnector"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed",
+ "schema": {
+ "$ref": "#/definitions/DataConnector"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/DataConnector"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "x-ms-examples": {
+ "Delete an Office365 data connector": {
+ "$ref": "./examples/dataConnectors/DeleteOfficeDataConnetor.json"
+ },
+ "Delete an Office365 Project data connector": {
+ "$ref": "./examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json"
+ },
+ "Delete an MicrosoftPurviewInformationProtection data connector": {
+ "$ref": "./examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json"
+ },
+ "Delete an MicrosoftThreatIntelligence data connector": {
+ "$ref": "./examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json"
+ },
+ "Delete an Office PowerBI data connector": {
+ "$ref": "./examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json"
+ },
+ "Delete a GenericUI data connector": {
+ "$ref": "./examples/dataConnectors/DeleteGenericUI.json"
+ },
+ "Delete a APIPolling data connector": {
+ "$ref": "./examples/dataConnectors/DeleteAPIPolling.json"
+ },
+ "Delete a GCP data connector": {
+ "$ref": "./examples/dataConnectors/DeleteGoogleCloudPlatform.json"
+ },
+ "Delete a PurviewAudit data connector": {
+ "$ref": "./examples/dataConnectors/DeletePurviewAuditDataConnector.json"
+ }
+ },
+ "tags": [
+ "Data Connectors"
+ ],
+ "description": "Delete the data connector.",
+ "operationId": "DataConnectors_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": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed"
+ },
+ "204": {
+ "description": "No Content"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors/{dataConnectorId}/connect": {
+ "post": {
+ "x-ms-examples": {
+ "Connect an APIPolling data connector": {
+ "$ref": "./examples/dataConnectors/ConnectAPIPolling.json"
+ },
+ "Connect an APIPolling V2 logs data connector": {
+ "$ref": "./examples/dataConnectors/ConnectAPIPollingV2Logs.json"
+ }
+ },
+ "tags": [
+ "Data Connectors Connect"
+ ],
+ "description": "Connects a data connector.",
+ "operationId": "DataConnectors_Connect",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorId"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorConnectBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors/{dataConnectorId}/disconnect": {
+ "post": {
+ "x-ms-examples": {
+ "Disconnect an APIPolling data connector": {
+ "$ref": "./examples/dataConnectors/DisconnectAPIPolling.json"
+ }
+ },
+ "tags": [
+ "Data Connectors Disconnect"
+ ],
+ "description": "Disconnect a data connector.",
+ "operationId": "DataConnectors_Disconnect",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorId"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK, Operation successfully completed"
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectorsCheckRequirements": {
+ "post": {
+ "x-ms-examples": {
+ "Check requirements for TI.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsThreatIntelligence.json"
+ },
+ "Check requirements for TI Taxii.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json"
+ },
+ "Check requirements for AADIP (Azure Active Directory Identity Protection).": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json"
+ },
+ "Check requirements for AADIP (Azure Active Directory Identity Protection) - no license.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json"
+ },
+ "Check requirements for AADIP (Azure Active Directory Identity Protection) - no authorization.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json"
+ },
+ "Check requirements for ASC.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json"
+ },
+ "Check requirements for Mcas.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json"
+ },
+ "Check requirements for Mdatp.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsMdatp.json"
+ },
+ "Check requirements for OfficeATP.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsOfficeATP.json"
+ },
+ "Check requirements for OfficeIRM.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsOfficeIRM.json"
+ },
+ "Check requirements for Office365Project.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsOffice365Project.json"
+ },
+ "Check requirements for MicrosoftPurviewInformationProtection.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json"
+ },
+ "Check requirements for OfficePowerBI.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsOfficePowerBI.json"
+ },
+ "Check requirements for Dynamics365.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsDynamics365.json"
+ },
+ "Check requirements for MicrosoftThreatProtection.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json"
+ },
+ "Check requirements for MicrosoftThreatIntelligence.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json"
+ },
+ "Check requirements for IoT.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsIoT.json"
+ },
+ "Check requirements for PurviewAudit.": {
+ "$ref": "./examples/dataConnectors/CheckRequirementsPurviewAudit.json"
+ }
+ },
+ "tags": [
+ "Check Data Connector Requirements"
+ ],
+ "description": "Get requirements state for a data connector type.",
+ "operationId": "DataConnectorsCheckRequirements_Post",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName"
+ },
+ {
+ "$ref": "#/parameters/DataConnectorsCheckRequirementsBody"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/DataConnectorRequirementsState"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AADCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents AADIP (Azure Active Directory Identity Protection) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AADCheckRequirementsProperties",
+ "description": "AADIP (Azure Active Directory Identity Protection) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureActiveDirectory"
+ },
+ "AADCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "AADIP (Azure Active Directory Identity Protection) requirements check properties.",
+ "type": "object"
+ },
+ "AATPCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents AATP (Azure Advanced Threat Protection) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AATPCheckRequirementsProperties",
+ "description": "AATP (Azure Advanced Threat Protection) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureAdvancedThreatProtection"
+ },
+ "AATPCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "AATP (Azure Advanced Threat Protection) requirements check properties.",
+ "type": "object"
+ },
+ "ASCCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents ASC (Azure Security Center) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ASCCheckRequirementsProperties",
+ "description": "ASC (Azure Security Center) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureSecurityCenter"
+ },
+ "ASCCheckRequirementsProperties": {
+ "description": "ASC (Azure Security Center) requirements check properties.",
+ "properties": {
+ "subscriptionId": {
+ "description": "The subscription id to connect to, and get the data from.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AwsCloudTrailCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Amazon Web Services CloudTrail requirements check request.",
+ "type": "object",
+ "x-ms-discriminator-value": "AmazonWebServicesCloudTrail"
+ },
+ "AwsS3CheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Amazon Web Services S3 requirements check request.",
+ "type": "object",
+ "x-ms-discriminator-value": "AmazonWebServicesS3"
+ },
+ "DataConnectorsCheckRequirements": {
+ "description": "Data connector requirements properties.",
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/DataConnectorKind",
+ "description": "Describes the kind of connector to be checked.",
+ "type": "string"
+ }
+ },
+ "discriminator": "kind",
+ "type": "object",
+ "required": [
+ "kind"
+ ]
+ },
+ "DataConnectorAuthorizationState": {
+ "description": "Describes the state of user's authorization for a connector kind.",
+ "enum": [
+ "Valid",
+ "Invalid"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DataConnectorAuthorizationState",
+ "values": [
+ {
+ "value": "Valid"
+ },
+ {
+ "value": "Invalid"
+ }
+ ]
+ }
+ },
+ "DataConnectorLicenseState": {
+ "description": "Describes the state of user's license for a connector kind.",
+ "enum": [
+ "Valid",
+ "Invalid",
+ "Unknown"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DataConnectorLicenseState",
+ "values": [
+ {
+ "value": "Valid"
+ },
+ {
+ "value": "Invalid"
+ },
+ {
+ "value": "Unknown"
+ }
+ ]
+ }
+ },
+ "DataConnectorRequirementsState": {
+ "description": "Data connector requirements status.",
+ "properties": {
+ "authorizationState": {
+ "description": "Authorization state for this connector",
+ "$ref": "#/definitions/DataConnectorAuthorizationState"
+ },
+ "licenseState": {
+ "description": "License state for this connector",
+ "$ref": "#/definitions/DataConnectorLicenseState"
+ }
+ },
+ "type": "object"
+ },
+ "Dynamics365CheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents Dynamics365 requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/Dynamics365CheckRequirementsProperties",
+ "description": "Dynamics365 requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Dynamics365"
+ },
+ "Dynamics365CheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Dynamics365 requirements check properties.",
+ "type": "object"
+ },
+ "MCASCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents MCAS (Microsoft Cloud App Security) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MCASCheckRequirementsProperties",
+ "description": "MCAS (Microsoft Cloud App Security) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftCloudAppSecurity"
+ },
+ "MCASCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "MCAS (Microsoft Cloud App Security) requirements check properties.",
+ "type": "object"
+ },
+ "MDATPCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MDATPCheckRequirementsProperties",
+ "description": "MDATP (Microsoft Defender Advanced Threat Protection) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection"
+ },
+ "MDATPCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "MDATP (Microsoft Defender Advanced Threat Protection) requirements check properties.",
+ "type": "object"
+ },
+ "MSTICheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents Microsoft Threat Intelligence requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MSTICheckRequirementsProperties",
+ "description": "Microsoft Threat Intelligence requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftThreatIntelligence"
+ },
+ "MSTICheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Microsoft Threat Intelligence requirements check properties.",
+ "type": "object"
+ },
+ "MtpCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents MTP (Microsoft Threat Protection) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MTPCheckRequirementsProperties",
+ "description": "MTP (Microsoft Threat Protection) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftThreatProtection"
+ },
+ "MTPCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "MTP (Microsoft Threat Protection) requirements check properties.",
+ "type": "object"
+ },
+ "OfficeATPCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents OfficeATP (Office 365 Advanced Threat Protection) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficeATPCheckRequirementsProperties",
+ "description": "OfficeATP (Office 365 Advanced Threat Protection) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "OfficeATP"
+ },
+ "OfficeATPCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "OfficeATP (Office 365 Advanced Threat Protection) requirements check properties.",
+ "type": "object"
+ },
+ "OfficeIRMCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents OfficeIRM (Microsoft Insider Risk Management) requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficeIRMCheckRequirementsProperties",
+ "description": "OfficeIRM (Microsoft Insider Risk Management) requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "OfficeIRM"
+ },
+ "OfficeIRMCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "OfficeIRM (Microsoft Insider Risk Management) requirements check properties.",
+ "type": "object"
+ },
+ "MicrosoftPurviewInformationProtectionCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents MicrosoftPurviewInformationProtection requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MicrosoftPurviewInformationProtectionCheckRequirementsProperties",
+ "description": "MicrosoftPurviewInformationProtection requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftPurviewInformationProtection"
+ },
+ "MicrosoftPurviewInformationProtectionCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "MicrosoftPurviewInformationProtection requirements check properties.",
+ "type": "object"
+ },
+ "Office365ProjectCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents Office365 Project requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/Office365ProjectCheckRequirementsProperties",
+ "description": "Office365 Project requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Office365Project"
+ },
+ "Office365ProjectCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Office365 Project requirements check properties.",
+ "type": "object"
+ },
+ "OfficePowerBICheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents Office PowerBI requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficePowerBICheckRequirementsProperties",
+ "description": "Office Power BI requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "OfficePowerBI"
+ },
+ "PurviewAuditCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents PurviewAudit requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PurviewAuditCheckRequirementsProperties",
+ "description": "PurviewAudit requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "PurviewAudit"
+ },
+ "PurviewAuditCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "PurviewAudit requirements check properties.",
+ "type": "object"
+ },
+ "OfficePowerBICheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Office PowerBI requirements check properties.",
+ "type": "object"
+ },
+ "TICheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Threat Intelligence Platforms data connector check requirements",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TICheckRequirementsProperties",
+ "description": "Threat Intelligence Platforms data connector check required properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "ThreatIntelligence"
+ },
+ "TICheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Threat Intelligence Platforms data connector required properties.",
+ "properties": {},
+ "type": "object"
+ },
+ "TiTaxiiCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Threat Intelligence TAXII data connector check requirements",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TiTaxiiCheckRequirementsProperties",
+ "description": "Threat Intelligence TAXII check required properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "ThreatIntelligenceTaxii"
+ },
+ "TiTaxiiCheckRequirementsProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Threat Intelligence TAXII data connector required properties.",
+ "type": "object"
+ },
+ "IoTCheckRequirements": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ }
+ ],
+ "description": "Represents IoT requirements check request.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/IoTCheckRequirementsProperties",
+ "description": "IoT requirements check properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "IOT"
+ },
+ "IoTCheckRequirementsProperties": {
+ "description": "IoT requirements check properties.",
+ "properties": {
+ "subscriptionId": {
+ "description": "The subscription id to connect to, and get the data from.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AADDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents AADIP (Azure Active Directory Identity Protection) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AADDataConnectorProperties",
+ "description": "AADIP (Azure Active Directory Identity Protection) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureActiveDirectory"
+ },
+ "AADDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ },
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "AADIP (Azure Active Directory Identity Protection) data connector properties.",
+ "type": "object"
+ },
+ "AlertsDataTypeOfDataConnector": {
+ "description": "Alerts data type for data connectors.",
+ "properties": {
+ "alerts": {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon",
+ "description": "Alerts data type connection.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "alerts"
+ ]
+ },
+ "MSTIDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Microsoft Threat Intelligence data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MSTIDataConnectorProperties",
+ "description": "Microsoft Threat Intelligence data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftThreatIntelligence"
+ },
+ "MSTIDataConnectorDataTypes": {
+ "description": "The available data types for Microsoft Threat Intelligence Platforms data connector.",
+ "properties": {
+ "microsoftEmergingThreatFeed": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "properties": {
+ "lookbackPeriod": {
+ "description": "The lookback period for the feed to be imported.",
+ "type": "string"
+ }
+ },
+ "description": "Data type for Microsoft Threat Intelligence Platforms data connector.",
+ "type": "object",
+ "required": [
+ "lookbackPeriod"
+ ]
+ }
+ },
+ "type": "object",
+ "required": [
+ "microsoftEmergingThreatFeed"
+ ]
+ },
+ "MSTIDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Microsoft Threat Intelligence data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/MSTIDataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "required": [
+ "dataTypes"
+ ],
+ "type": "object"
+ },
+ "MTPDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents MTP (Microsoft Threat Protection) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MTPDataConnectorProperties",
+ "description": "MTP (Microsoft Threat Protection) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftThreatProtection"
+ },
+ "MTPDataConnectorDataTypes": {
+ "description": "The available data types for Microsoft Threat Protection Platforms data connector.",
+ "properties": {
+ "incidents": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Incidents data type for Microsoft Threat Protection Platforms data connector.",
+ "type": "object"
+ },
+ "alerts": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Alerts data type for Microsoft Threat Protection Platforms data connector.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "incidents"
+ ]
+ },
+ "MtpProvider": {
+ "description": "The available data providers.",
+ "enum": [
+ "microsoftDefenderForCloudApps",
+ "microsoftDefenderForIdentity"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "MtpProvider"
+ }
+ },
+ "MtpFilteredProviders": {
+ "description": "Represents the connector's Filtered providers",
+ "properties": {
+ "alerts": {
+ "description": "Alerts filtered providers. When filters are not applied, all alerts will stream through the MTP pipeline, still in private preview for all products EXCEPT MDA and MDI, which are in GA state.",
+ "items": {
+ "$ref": "#/definitions/MtpProvider"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "alerts"
+ ]
+ },
+ "MTPDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "MTP (Microsoft Threat Protection) data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/MTPDataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ },
+ "filteredProviders": {
+ "$ref": "#/definitions/MtpFilteredProviders",
+ "description": "The available filtered providers for the connector."
+ }
+ },
+ "required": [
+ "dataTypes"
+ ],
+ "type": "object"
+ },
+ "AATPDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents AATP (Azure Advanced Threat Protection) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AATPDataConnectorProperties",
+ "description": "AATP (Azure Advanced Threat Protection) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureAdvancedThreatProtection"
+ },
+ "AATPDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ },
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "AATP (Azure Advanced Threat Protection) data connector properties.",
+ "type": "object"
+ },
+ "ASCDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents ASC (Azure Security Center) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ASCDataConnectorProperties",
+ "description": "ASC (Azure Security Center) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AzureSecurityCenter"
+ },
+ "ASCDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "ASC (Azure Security Center) data connector properties.",
+ "properties": {
+ "subscriptionId": {
+ "description": "The subscription id to connect to, and get the data from.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AwsCloudTrailDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Amazon Web Services CloudTrail data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AwsCloudTrailDataConnectorProperties",
+ "description": "Amazon Web Services CloudTrail data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AmazonWebServicesCloudTrail"
+ },
+ "AwsCloudTrailDataConnectorDataTypes": {
+ "description": "The available data types for Amazon Web Services CloudTrail data connector.",
+ "properties": {
+ "logs": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Logs data type.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "logs"
+ ]
+ },
+ "AwsCloudTrailDataConnectorProperties": {
+ "description": "Amazon Web Services CloudTrail data connector properties.",
+ "properties": {
+ "awsRoleArn": {
+ "description": "The Aws Role Arn (with CloudTrailReadOnly policy) that is used to access the Aws account.",
+ "type": "string"
+ },
+ "dataTypes": {
+ "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataTypes"
+ ]
+ },
+ "AwsS3DataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Amazon Web Services S3 data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AwsS3DataConnectorProperties",
+ "description": "Amazon Web Services S3 data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "AmazonWebServicesS3"
+ },
+ "AwsS3DataConnectorDataTypes": {
+ "description": "The available data types for Amazon Web Services S3 data connector.",
+ "properties": {
+ "logs": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Logs data type.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "logs"
+ ]
+ },
+ "AwsS3DataConnectorProperties": {
+ "description": "Amazon Web Services S3 data connector properties.",
+ "properties": {
+ "destinationTable": {
+ "description": "The logs destination table name in LogAnalytics.",
+ "type": "string"
+ },
+ "sqsUrls": {
+ "description": "The AWS sqs urls for the connector.",
+ "x-ms-identifiers": [],
+ "type": "array",
+ "items": {
+ "description": "AWS sqs url.",
+ "type": "string"
+ }
+ },
+ "roleArn": {
+ "description": "The Aws Role Arn that is used to access the Aws account.",
+ "type": "string"
+ },
+ "dataTypes": {
+ "$ref": "#/definitions/AwsS3DataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "destinationTable",
+ "sqsUrls",
+ "roleArn",
+ "dataTypes"
+ ]
+ },
+ "RestApiPollerDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Rest Api Poller data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/RestApiPollerDataConnectorProperties",
+ "description": "Rest Api Poller data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "RestApiPoller"
+ },
+ "RestApiPollerDataConnectorProperties": {
+ "description": "Rest Api Poller data connector properties.",
+ "properties": {
+ "connectorDefinitionName": {
+ "description": "The connector definition name (the dataConnectorDefinition resource id).",
+ "type": "string"
+ },
+ "auth": {
+ "description": "The a authentication model.",
+ "$ref": "#/definitions/CcpAuthConfig"
+ },
+ "request": {
+ "description": "The request configuration.",
+ "$ref": "#/definitions/RestApiPollerRequestConfig"
+ },
+ "dcrConfig": {
+ "description": "The DCR related properties.",
+ "$ref": "#/definitions/DCRConfiguration"
+ },
+ "isActive": {
+ "description": "Indicates whether the connector is active or not.",
+ "type": "boolean"
+ },
+ "dataType": {
+ "description": "The Log Analytics table destination.",
+ "type": "string"
+ },
+ "response": {
+ "description": "The response configuration.",
+ "$ref": "#/definitions/CcpResponseConfig"
+ },
+ "paging": {
+ "description": "The paging configuration.",
+ "$ref": "#/definitions/RestApiPollerRequestPagingConfig"
+ },
+ "addOnAttributes": {
+ "description": "The add on attributes. The key name will become attribute name (a column) and the value will become the attribute value in the payload.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "connectorDefinitionName",
+ "auth",
+ "request"
+ ]
+ },
+ "RestApiPollerRequestConfig": {
+ "type": "object",
+ "description": "The request configuration.",
+ "properties": {
+ "apiEndpoint": {
+ "description": "The API endpoint.",
+ "type": "string"
+ },
+ "rateLimitQPS": {
+ "description": "The Rate limit queries per second for the request..",
+ "type": "integer",
+ "x-nullable": true,
+ "format": "int32"
+ },
+ "queryWindowInMin": {
+ "description": "The query window in minutes for the request.",
+ "type": "integer",
+ "x-nullable": true,
+ "format": "int32"
+ },
+ "httpMethod": {
+ "description": "The HTTP method, default value GET.",
+ "enum": [
+ "GET",
+ "POST",
+ "PUT",
+ "DELETE"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "httpMethodVerb"
+ }
+ },
+ "queryTimeFormat": {
+ "description": "The query time format. A remote server can have a query to pull data from range 'start' to 'end'. This property indicate what is the expected time format the remote server know to parse.",
+ "example": "UnixTimestamp, UnixTimestampInMills, or more specific formats, for example: yyyy-MM-ddTHH:mm:ssZ",
+ "type": "string"
+ },
+ "retryCount": {
+ "description": "The retry count.",
+ "type": "integer",
+ "x-nullable": true,
+ "format": "int32"
+ },
+ "timeoutInSeconds": {
+ "description": "The timeout in seconds.",
+ "type": "integer",
+ "x-nullable": true,
+ "format": "int32"
+ },
+ "isPostPayloadJson": {
+ "description": "Flag to indicate if HTTP POST payload is in JSON format (vs form-urlencoded).",
+ "type": "boolean",
+ "x-nullable": true
+ },
+ "headers": {
+ "description": "The header for the request for the remote server.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "queryParameters": {
+ "description": "The HTTP query parameters to RESTful API.",
+ "type": "object",
+ "additionalProperties": {}
+ },
+ "queryParametersTemplate": {
+ "description": "the query parameters template. Defines the query parameters template to use when passing query parameters in advanced scenarios.",
+ "type": "string"
+ },
+ "startTimeAttributeName": {
+ "description": "The query parameter name which the remote server expect to start query. This property goes hand to hand with `endTimeAttributeName`.",
+ "type": "string"
+ },
+ "endTimeAttributeName": {
+ "description": "The query parameter name which the remote server expect to end query. This property goes hand to hand with `startTimeAttributeName`",
+ "type": "string"
+ },
+ "queryTimeIntervalAttributeName": {
+ "description": "The query parameter name which we need to send the server for query logs in time interval. Should be defined with `queryTimeIntervalPrepend` and `queryTimeIntervalDelimiter`",
+ "type": "string"
+ },
+ "queryTimeIntervalPrepend": {
+ "description": "The string prepend to the value of the query parameter in `queryTimeIntervalAttributeName`.",
+ "type": "string"
+ },
+ "queryTimeIntervalDelimiter": {
+ "description": "The delimiter string between 2 QueryTimeFormat in the query parameter `queryTimeIntervalAttributeName`.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "apiEndpoint"
+ ]
+ },
+ "RestApiPollerRequestPagingKind": {
+ "type": "string",
+ "enum": [
+ "LinkHeader",
+ "NextPageToken",
+ "NextPageUrl",
+ "PersistentToken",
+ "PersistentLinkHeader",
+ "Offset",
+ "CountBasedPaging"
+ ],
+ "description": "Type of paging",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "RestApiPollerRequestPagingKind",
+ "values": [
+ {
+ "value": "LinkHeader"
+ },
+ {
+ "value": "NextPageToken"
+ },
+ {
+ "value": "NextPageUrl"
+ },
+ {
+ "value": "PersistentToken"
+ },
+ {
+ "value": "PersistentLinkHeader"
+ },
+ {
+ "value": "Offset"
+ },
+ {
+ "value": "CountBasedPaging"
+ }
+ ]
+ }
+ },
+ "RestApiPollerRequestPagingConfig": {
+ "description": "The request paging configuration.",
+ "type": "object",
+ "properties": {
+ "pagingType": {
+ "type": "string",
+ "$ref": "#/definitions/RestApiPollerRequestPagingKind",
+ "description": "Type of paging"
+ },
+ "pageSize": {
+ "type": "integer",
+ "description": "Page size",
+ "format": "int32"
+ },
+ "pageSizeParameterName": {
+ "type": "string",
+ "description": "Page size parameter name"
+ }
+ },
+ "x-ms-discriminator": {
+ "propertyName": "pagingType",
+ "mapping": {
+ "LinkHeader": "#/components/schemas/RestApiPollerRequestPagingLinkHeaderConfig",
+ "NextPageToken": "#/components/schemas/RestApiPollerRequestPagingTokenConfig",
+ "NextPageUrl": "#/components/schemas/RestApiPollerRequestPagingNextPageUrlConfig",
+ "PersistentToken": "#/components/schemas/RestApiPollerRequestPagingTokenConfig",
+ "PersistentLinkHeader": "#/components/schemas/RestApiPollerRequestPagingLinkHeaderConfig",
+ "Offset": "#/components/schemas/RestApiPollerRequestPagingOffsetConfig",
+ "CountBasedPaging": "#/components/schemas/RestApiPollerRequestPagingCountBaseConfig"
+ }
+ },
+ "required": [
+ "pagingType"
+ ]
+ },
+ "RestApiPollerRequestPagingLinkHeaderConfig": {
+ "description": "The request paging configuration for LinkHeader and PersistentLinkHeader paging type parameters.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/RestApiPollerRequestPagingConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "linkHeaderTokenJsonPath": {
+ "type": "string",
+ "description": "JSON path of link header token in HTTP response payload"
+ },
+ "linkHeaderRelLinkName": {
+ "type": "string",
+ "description": "Rel link name from the link header"
+ }
+ }
+ },
+ "RestApiPollerRequestPagingTokenConfig": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/RestApiPollerRequestPagingConfig"
+ }
+ ],
+ "description": "The request paging configuration for NextPageToken and PersistentToken paging type parameters.",
+ "type": "object",
+ "properties": {
+ "nextPageTokenJsonPath": {
+ "type": "string",
+ "description": "JSON path of next page token in HTTP response payload"
+ },
+ "hasNextFlagJsonPath": {
+ "type": "string",
+ "description": "JSON path of flag in HTTP response payload to indicate more pages"
+ },
+ "nextPageTokenResponseHeader": {
+ "type": "string",
+ "description": "HTTP response header name of next page token"
+ },
+ "nextPageParaName": {
+ "type": "string",
+ "description": "Next page parameter name in HTTP request"
+ },
+ "nextPageRequestHeader": {
+ "type": "string",
+ "description": "Next page header name in the request"
+ }
+ }
+ },
+ "RestApiPollerRequestPagingNextPageUrlConfig": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/RestApiPollerRequestPagingConfig"
+ }
+ ],
+ "description": "The request paging configuration for NextPageUrl paging type parameters.",
+ "type": "object",
+ "properties": {
+ "nextPageUrl": {
+ "type": "string",
+ "description": "Next page URL"
+ },
+ "nextPageUrlQueryParameters": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Query parameters of next page URL"
+ },
+ "nextPageUrlQueryParametersTemplate": {
+ "type": "string",
+ "description": "Paging query parameters in string template format"
+ },
+ "nextPageParaName": {
+ "type": "string",
+ "description": "Next page parameter name in HTTP request"
+ },
+ "nextPageRequestHeader": {
+ "type": "string",
+ "description": "Next page header name in the request"
+ },
+ "hasNextFlagJsonPath": {
+ "type": "string",
+ "description": "JSON path of flag in HTTP response payload to indicate more pages"
+ }
+ }
+ },
+ "RestApiPollerRequestPagingOffsetConfig": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/RestApiPollerRequestPagingConfig"
+ }
+ ],
+ "description": "The request paging configuration for Offset paging type parameters.",
+ "type": "object",
+ "properties": {
+ "offsetParaName": {
+ "type": "string",
+ "description": "Offset parameter name in HTTP request"
+ }
+ }
+ },
+ "RestApiPollerRequestPagingCountBaseConfig": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/RestApiPollerRequestPagingConfig"
+ }
+ ],
+ "description": "The request paging configuration for Count base paging type parameters.",
+ "type": "object",
+ "properties": {
+ "zeroBasedIndexing": {
+ "type": "boolean",
+ "description": "Indicates whether the count is zero based"
+ },
+ "pageCountJsonPath": {
+ "type": "string",
+ "description": "JSON path of page count in HTTP response payload"
+ },
+ "pageNumberParaName": {
+ "type": "string",
+ "description": "Parameter name of page number in HTTP request"
+ },
+ "pageNumberJsonPath": {
+ "type": "string",
+ "description": "JSON path of page number in HTTP response payload"
+ },
+ "totalResultsJsonPath": {
+ "type": "string",
+ "description": "JSON path of total number of results in HTTP response payload"
+ }
+ }
+ },
+ "GCPDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Google Cloud Platform data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/GCPDataConnectorProperties",
+ "description": "Google Cloud Platform data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "GCP"
+ },
+ "GCPDataConnectorProperties": {
+ "description": "Google Cloud Platform data connector properties.",
+ "properties": {
+ "connectorDefinitionName": {
+ "description": "The name of the connector definition that represents the UI config.",
+ "type": "string"
+ },
+ "auth": {
+ "$ref": "#/definitions/GCPAuthProperties",
+ "description": "The auth section of the connector."
+ },
+ "request": {
+ "$ref": "#/definitions/GCPRequestProperties",
+ "description": "The request section of the connector."
+ },
+ "dcrConfig": {
+ "$ref": "#/definitions/DCRConfiguration",
+ "description": "The configuration of the destination of the data."
+ }
+ },
+ "type": "object",
+ "required": [
+ "connectorDefinitionName",
+ "auth",
+ "request"
+ ]
+ },
+ "GCPAuthProperties": {
+ "description": "Google Cloud Platform auth section properties.",
+ "properties": {
+ "serviceAccountEmail": {
+ "description": "The service account that is used to access the GCP project.",
+ "type": "string"
+ },
+ "projectNumber": {
+ "description": "The GCP project number.",
+ "type": "string"
+ },
+ "workloadIdentityProviderId": {
+ "description": "The workload identity provider id that is used to gain access to the GCP project.",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "serviceAccountEmail",
+ "projectNumber",
+ "workloadIdentityProviderId"
+ ]
+ },
+ "GCPRequestProperties": {
+ "description": "Google Cloud Platform request section properties.",
+ "properties": {
+ "projectId": {
+ "description": "The GCP project id.",
+ "type": "string"
+ },
+ "subscriptionNames": {
+ "description": "The GCP pub/sub subscription names.",
+ "x-ms-identifiers": [],
+ "type": "array",
+ "items": {
+ "description": "GCP pub/sub subscription name.",
+ "type": "string"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "projectId",
+ "subscriptionNames"
+ ]
+ },
+ "DCRConfiguration": {
+ "description": "The configuration of the destination of the data.",
+ "properties": {
+ "dataCollectionEndpoint": {
+ "description": "Represents the data collection ingestion endpoint in log analytics.",
+ "type": "string"
+ },
+ "dataCollectionRuleImmutableId": {
+ "description": "The data collection rule immutable id, the rule defines the transformation and data destination.",
+ "type": "string"
+ },
+ "streamName": {
+ "description": "The stream we are sending the data to.",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataCollectionEndpoint",
+ "dataCollectionRuleImmutableId",
+ "streamName"
+ ]
+ },
+ "CcpAuthType": {
+ "type": "string",
+ "enum": [
+ "Basic",
+ "APIKey",
+ "OAuth2",
+ "AWS",
+ "GCP",
+ "Session",
+ "JwtToken",
+ "GitHub",
+ "ServiceBus",
+ "Oracle",
+ "None"
+ ],
+ "description": "Type of paging",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "CcpAuthType",
+ "values": [
+ {
+ "value": "Basic"
+ },
+ {
+ "value": "APIKey"
+ },
+ {
+ "value": "OAuth2"
+ },
+ {
+ "value": "AWS"
+ },
+ {
+ "value": "GCP"
+ },
+ {
+ "value": "Session"
+ },
+ {
+ "value": "JwtToken"
+ },
+ {
+ "value": "GitHub"
+ },
+ {
+ "value": "ServiceBus"
+ },
+ {
+ "value": "Oracle"
+ },
+ {
+ "value": "None"
+ }
+ ]
+ }
+ },
+ "CcpAuthConfig": {
+ "description": "Base Model for API authentication.",
+ "properties": {
+ "type": {
+ "description": "The auth type",
+ "$ref": "#/definitions/CcpAuthType",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "type"
+ ],
+ "discriminator": "type"
+ },
+ "ApiKeyAuthModel": {
+ "description": "Model for authentication with the API Key. Will result in additional header on the request (default behavior) to the remote server: 'ApiKeyName: ApiKeyIdentifier ApiKey'. If 'IsApiKeyInPostPayload' is true it will send it in the body of the request and not the header.",
+ "example": "ApiKey = placeholderApiKey, ApiKeyName = 'Authorization', ApiKeyIdentifier = 'token', IsApiKeyInPostPayload = false. will result in a new header on the request: 'Authorization: token placeholderApiKey'",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "apiKey": {
+ "type": "string",
+ "description": "API Key for the user secret key credential"
+ },
+ "apiKeyName": {
+ "type": "string",
+ "description": "API Key name"
+ },
+ "apiKeyIdentifier": {
+ "type": "string",
+ "description": "API Key Identifier"
+ },
+ "isApiKeyInPostPayload": {
+ "type": "boolean",
+ "description": "Flag to indicate if API key is set in HTTP POST payload"
+ }
+ },
+ "required": [
+ "apiKey",
+ "apiKeyName"
+ ],
+ "x-ms-discriminator-value": "APIKey"
+ },
+ "AWSAuthModel": {
+ "description": "Model for API authentication with AWS.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "roleArn": {
+ "type": "string",
+ "description": "AWS STS assume role ARN",
+ "example": "arn:aws:iam::123456789012:role/your-role-name"
+ },
+ "externalId": {
+ "type": "string",
+ "description": "AWS STS assume role external ID. This is used to prevent the confused deputy problem: 'https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html'"
+ }
+ },
+ "required": [
+ "roleArn"
+ ],
+ "x-ms-discriminator-value": "AWS"
+ },
+ "BasicAuthModel": {
+ "description": "Model for API authentication with basic flow - user name + password.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "userName": {
+ "type": "string",
+ "description": "The user name."
+ },
+ "password": {
+ "type": "string",
+ "description": "The password",
+ "x-secret": true
+ }
+ },
+ "required": [
+ "userName",
+ "password"
+ ],
+ "x-ms-discriminator-value": "Basic"
+ },
+ "GCPAuthModel": {
+ "description": "Model for API authentication for all GCP kind connectors.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "serviceAccountEmail": {
+ "type": "string",
+ "description": "GCP Service Account Email"
+ },
+ "projectNumber": {
+ "type": "string",
+ "description": "GCP Project Number"
+ },
+ "workloadIdentityProviderId": {
+ "type": "string",
+ "description": "GCP Workload Identity Provider ID"
+ }
+ },
+ "required": [
+ "serviceAccountEmail",
+ "projectNumber",
+ "workloadIdentityProviderId"
+ ],
+ "x-ms-discriminator-value": "GCP"
+ },
+ "GenericBlobSbsAuthModel": {
+ "description": "Model for API authentication for working with service bus or storage account.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "credentialsConfig": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Credentials for service bus namespace, keyvault uri for access key"
+ },
+ "storageAccountCredentialsConfig": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Credentials for storage account, keyvault uri for access key"
+ }
+ },
+ "x-ms-discriminator-value": "ServiceBus"
+ },
+ "GitHubAuthModel": {
+ "description": "Model for API authentication for GitHub. For this authentication first we need to approve the Router app (Microsoft Security DevOps) to access the GitHub account, Then we only need the InstallationId to get the access token from https://api.github.com/app/installations/{installId}/access_tokens.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "properties": {
+ "installationId": {
+ "type": "string",
+ "description": "The GitHubApp auth installation id."
+ }
+ },
+ "x-ms-discriminator-value": "GitHub"
+ },
+ "NoneAuthModel": {
+ "description": "Model for API authentication with no authentication method - public API.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "type": "object",
+ "x-ms-discriminator-value": "None"
+ },
+ "JwtAuthModel": {
+ "description": "Model for API authentication with JWT. Simple exchange between user name + password to access token.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "properties": {
+ "tokenEndpoint": {
+ "type": "string",
+ "description": "Token endpoint to request JWT"
+ },
+ "userName": {
+ "description": "The user name. If user name and password sent in header request we only need to populate the `value` property with the user name (Same as basic auth). If user name and password sent in body request we need to specify the `Key` and `Value`.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "password": {
+ "description": "The password",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-secret": true
+ },
+ "queryParameters": {
+ "description": "The custom query parameter we want to add once we send request to token endpoint.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "headers": {
+ "description": "The custom headers we want to add once we send request to token endpoint.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "isCredentialsInHeaders": {
+ "type": "boolean",
+ "x-nullable": true,
+ "description": "Flag indicating whether we want to send the user name and password to token endpoint in the headers."
+ },
+ "isJsonRequest": {
+ "type": "boolean",
+ "x-nullable": true,
+ "default": false,
+ "description": "Flag indicating whether the body request is JSON (header Content-Type = application/json), meaning its a Form URL encoded request (header Content-Type = application/x-www-form-urlencoded)."
+ },
+ "requestTimeoutInSeconds": {
+ "type": "integer",
+ "format": "int32",
+ "default": 100,
+ "maximum": 180,
+ "description": "Request timeout in seconds."
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "JwtToken",
+ "required": [
+ "tokenEndpoint",
+ "userName",
+ "password"
+ ]
+ },
+ "OAuthModel": {
+ "description": "Model for API authentication with OAuth2.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "properties": {
+ "authorizationCode": {
+ "type": "string",
+ "description": "The user's authorization code.",
+ "x-secret": true
+ },
+ "clientSecret": {
+ "type": "string",
+ "description": "The Application (client) secret that the OAuth provider assigned to your app.",
+ "x-secret": true
+ },
+ "clientId": {
+ "type": "string",
+ "description": "The Application (client) ID that the OAuth provider assigned to your app."
+ },
+ "isCredentialsInHeaders": {
+ "type": "boolean",
+ "x-nullable": true,
+ "default": false,
+ "description": "Indicating whether we want to send the clientId and clientSecret to token endpoint in the headers."
+ },
+ "scope": {
+ "type": "string",
+ "description": "The Application (client) Scope that the OAuth provider assigned to your app."
+ },
+ "redirectUri": {
+ "type": "string",
+ "format": "uri",
+ "description": "The Application redirect url that the user config in the OAuth provider."
+ },
+ "grantType": {
+ "type": "string",
+ "description": "The grant type, usually will be 'authorization code'."
+ },
+ "tokenEndpoint": {
+ "type": "string",
+ "description": "The token endpoint. Defines the OAuth2 refresh token."
+ },
+ "tokenEndpointHeaders": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The token endpoint headers."
+ },
+ "tokenEndpointQueryParameters": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The token endpoint query parameters."
+ },
+ "authorizationEndpoint": {
+ "type": "string",
+ "description": "The authorization endpoint."
+ },
+ "authorizationEndpointHeaders": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The authorization endpoint headers."
+ },
+ "authorizationEndpointQueryParameters": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The authorization endpoint query parameters."
+ },
+ "isJwtBearerFlow": {
+ "type": "boolean",
+ "description": "A value indicating whether it's a JWT flow."
+ },
+ "accessTokenPrepend": {
+ "type": "string",
+ "description": "Access token prepend. Default is 'Bearer'."
+ }
+ },
+ "required": [
+ "clientSecret",
+ "clientId",
+ "grantType",
+ "tokenEndpoint"
+ ],
+ "type": "object",
+ "x-ms-discriminator-value": "OAuth2"
+ },
+ "OracleAuthModel": {
+ "description": "Model for API authentication for Oracle.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "description": "Oracle tenant ID"
+ },
+ "userId": {
+ "type": "string",
+ "description": "Oracle user ID"
+ },
+ "publicFingerprint": {
+ "type": "string",
+ "description": "Public Fingerprint"
+ },
+ "pemFile": {
+ "type": "string",
+ "description": "Content of the PRM file"
+ }
+ },
+ "type": "object",
+ "required": [
+ "tenantId",
+ "userId",
+ "publicFingerprint",
+ "pemFile"
+ ],
+ "x-ms-discriminator-value": "Oracle"
+ },
+ "SessionAuthModel": {
+ "description": "Model for API authentication with session cookie.",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CcpAuthConfig"
+ }
+ ],
+ "properties": {
+ "userName": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The user name attribute key value."
+ },
+ "password": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The password attribute name.",
+ "x-secret": true
+ },
+ "queryParameters": {
+ "type": "object",
+ "additionalProperties": {},
+ "description": "Query parameters to session service endpoint."
+ },
+ "isPostPayloadJson": {
+ "type": "boolean",
+ "x-nullable": true,
+ "description": "Indicating whether API key is set in HTTP POST payload."
+ },
+ "headers": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "HTTP request headers to session service endpoint."
+ },
+ "sessionTimeoutInMinutes": {
+ "type": "integer",
+ "format": "int32",
+ "x-nullable": true,
+ "description": "Session timeout in minutes."
+ },
+ "sessionIdName": {
+ "type": "string",
+ "description": "Session id attribute name from HTTP response header."
+ },
+ "sessionLoginRequestUri": {
+ "type": "string",
+ "description": "HTTP request URL to session service endpoint."
+ }
+ },
+ "type": "object",
+ "required": [
+ "userName",
+ "password"
+ ],
+ "x-ms-discriminator-value": "Session"
+ },
+ "CcpResponseConfig": {
+ "description": "A custom response configuration for a rule.",
+ "properties": {
+ "eventsJsonPaths": {
+ "description": "The json paths, '$' char is the json root.",
+ "example": "'$', '$.someProperty'",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "successStatusJsonPath": {
+ "description": "The value where the status message/code should appear in the response.",
+ "type": "string"
+ },
+ "successStatusValue": {
+ "description": "The status value.",
+ "type": "string",
+ "x-nullable": true
+ },
+ "isGzipCompressed": {
+ "description": "The value indicating whether the remote server support Gzip and we should expect Gzip response.",
+ "type": "boolean"
+ },
+ "compressionAlgo": {
+ "description": "The compression algorithm. For Example: 'gzip', 'multi-gzip', 'deflate'.",
+ "type": "string",
+ "default": "gzip"
+ },
+ "format": {
+ "description": "The response format. possible values are json,csv,xml",
+ "type": "string",
+ "default": "json"
+ },
+ "csvDelimiter": {
+ "description": "The csv delimiter, in case the response format is CSV.",
+ "type": "string"
+ },
+ "hasCsvBoundary": {
+ "description": "The value indicating whether the response has CSV boundary in case the response in CSV format.",
+ "type": "boolean",
+ "x-nullable": true
+ },
+ "hasCsvHeader": {
+ "description": "The value indicating whether the response has headers in case the response in CSV format.",
+ "type": "boolean",
+ "x-nullable": true
+ },
+ "convertChildPropertiesToArray": {
+ "description": "The value indicating whether the response isn't an array of events / logs. By setting this flag to true it means the remote server will response with an object which each property has as a value an array of events / logs.",
+ "type": "boolean",
+ "x-nullable": true
+ },
+ "csvEscape": {
+ "description": "The character used to escape characters in CSV.",
+ "type": "string",
+ "x-nullable": true,
+ "default": "\"",
+ "minLength": 1,
+ "maxLength": 1
+ }
+ },
+ "type": "object",
+ "required": [
+ "eventsJsonPaths"
+ ]
+ },
+ "DataConnector": {
+ "description": "Data connector",
+ "allOf": [
+ {
+ "$ref": "../../../common/2.0/types.json#/definitions/ResourceWithEtag"
+ }
+ ],
+ "discriminator": "kind",
+ "required": [
+ "kind"
+ ],
+ "properties": {
+ "kind": {
+ "$ref": "#/definitions/DataConnectorKind",
+ "description": "The data connector kind",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "DataConnectorDataTypeCommon": {
+ "description": "Common field for data type in data connectors.",
+ "properties": {
+ "state": {
+ "description": "Describe whether this data type connection is enabled or not.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DataTypeState"
+ }
+ }
+ },
+ "type": "object",
+ "required": [
+ "state"
+ ]
+ },
+ "DataConnectorWithAlertsProperties": {
+ "description": "Data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/AlertsDataTypeOfDataConnector",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object"
+ },
+ "DataConnectorKind": {
+ "description": "The kind of the data connector",
+ "enum": [
+ "AzureActiveDirectory",
+ "AzureSecurityCenter",
+ "MicrosoftCloudAppSecurity",
+ "ThreatIntelligence",
+ "ThreatIntelligenceTaxii",
+ "Office365",
+ "OfficeATP",
+ "OfficeIRM",
+ "Office365Project",
+ "MicrosoftPurviewInformationProtection",
+ "OfficePowerBI",
+ "AmazonWebServicesCloudTrail",
+ "AmazonWebServicesS3",
+ "AzureAdvancedThreatProtection",
+ "MicrosoftDefenderAdvancedThreatProtection",
+ "Dynamics365",
+ "MicrosoftThreatProtection",
+ "MicrosoftThreatIntelligence",
+ "GenericUI",
+ "APIPolling",
+ "IOT",
+ "GCP",
+ "RestApiPoller",
+ "PurviewAudit"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "DataConnectorKind",
+ "values": [
+ {
+ "value": "AzureActiveDirectory"
+ },
+ {
+ "value": "AzureSecurityCenter"
+ },
+ {
+ "value": "MicrosoftCloudAppSecurity"
+ },
+ {
+ "value": "ThreatIntelligence"
+ },
+ {
+ "value": "ThreatIntelligenceTaxii"
+ },
+ {
+ "value": "Office365"
+ },
+ {
+ "value": "OfficeATP"
+ },
+ {
+ "value": "OfficeIRM"
+ },
+ {
+ "value": "Office365Project"
+ },
+ {
+ "value": "MicrosoftPurviewInformationProtection"
+ },
+ {
+ "value": "OfficePowerBI"
+ },
+ {
+ "value": "AmazonWebServicesCloudTrail"
+ },
+ {
+ "value": "AmazonWebServicesS3"
+ },
+ {
+ "value": "AzureAdvancedThreatProtection"
+ },
+ {
+ "value": "MicrosoftDefenderAdvancedThreatProtection"
+ },
+ {
+ "value": "Dynamics365"
+ },
+ {
+ "value": "MicrosoftThreatProtection"
+ },
+ {
+ "value": "MicrosoftThreatIntelligence"
+ },
+ {
+ "value": "GenericUI"
+ },
+ {
+ "value": "APIPolling"
+ },
+ {
+ "value": "IOT"
+ },
+ {
+ "value": "GCP"
+ },
+ {
+ "value": "RestApiPoller"
+ },
+ {
+ "value": "PurviewAudit"
+ }
+ ]
+ }
+ },
+ "DataConnectorList": {
+ "description": "List all the data connectors.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of data connectors.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "value": {
+ "description": "Array of data connectors.",
+ "items": {
+ "$ref": "#/definitions/DataConnector"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object",
+ "required": [
+ "value"
+ ]
+ },
+ "DataConnectorTenantId": {
+ "description": "Properties data connector on tenant level.",
+ "properties": {
+ "tenantId": {
+ "description": "The tenant id to connect to, and get the data from.",
+ "type": "string"
+ }
+ },
+ "type": "object",
+ "required": [
+ "tenantId"
+ ]
+ },
+ "MCASDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents MCAS (Microsoft Cloud App Security) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MCASDataConnectorProperties",
+ "description": "MCAS (Microsoft Cloud App Security) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftCloudAppSecurity"
+ },
+ "MCASDataConnectorDataTypes": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/AlertsDataTypeOfDataConnector"
+ }
+ ],
+ "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector.",
+ "properties": {
+ "discoveryLogs": {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon",
+ "description": "Discovery log data type connection."
+ }
+ },
+ "type": "object"
+ },
+ "MCASDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "MCAS (Microsoft Cloud App Security) data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/MCASDataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "required": [
+ "dataTypes"
+ ],
+ "type": "object"
+ },
+ "Dynamics365DataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Dynamics365 data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/Dynamics365DataConnectorProperties",
+ "description": "Dynamics365 data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Dynamics365"
+ },
+ "Dynamics365DataConnectorDataTypes": {
+ "description": "The available data types for Dynamics365 data connector.",
+ "properties": {
+ "dynamics365CdsActivities": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Common Data Service data type connection.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "dynamics365CdsActivities"
+ ]
+ },
+ "Dynamics365DataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Dynamics365 data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/Dynamics365DataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "required": [
+ "dataTypes"
+ ],
+ "type": "object"
+ },
+ "OfficeATPDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents OfficeATP (Office 365 Advanced Threat Protection) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficeATPDataConnectorProperties",
+ "description": "OfficeATP (Office 365 Advanced Threat Protection) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "OfficeATP"
+ },
+ "OfficeATPDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ },
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "OfficeATP (Office 365 Advanced Threat Protection) data connector properties.",
+ "type": "object"
+ },
+ "MicrosoftPurviewInformationProtectionDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Microsoft Purview Information Protection data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MicrosoftPurviewInformationProtectionDataConnectorProperties",
+ "description": "Microsoft Purview Information Protection data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftPurviewInformationProtection"
+ },
+ "MicrosoftPurviewInformationProtectionConnectorDataTypes": {
+ "description": "The available data types for Microsoft Purview Information Protection data connector.",
+ "properties": {
+ "logs": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Logs data type.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "logs"
+ ]
+ },
+ "MicrosoftPurviewInformationProtectionDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Microsoft Purview Information Protection data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/MicrosoftPurviewInformationProtectionConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataTypes"
+ ]
+ },
+ "Office365ProjectDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Office Microsoft Project data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/Office365ProjectDataConnectorProperties",
+ "description": "Office Microsoft Project data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Office365Project"
+ },
+ "Office365ProjectConnectorDataTypes": {
+ "description": "The available data types for Office Microsoft Project data connector.",
+ "properties": {
+ "logs": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Logs data type.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "logs"
+ ]
+ },
+ "Office365ProjectDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Office Microsoft Project data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/Office365ProjectConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataTypes"
+ ]
+ },
+ "OfficePowerBIDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Office Microsoft PowerBI data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficePowerBIDataConnectorProperties",
+ "description": "Office Microsoft PowerBI data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "OfficePowerBI"
+ },
+ "OfficePowerBIConnectorDataTypes": {
+ "description": "The available data types for Office Microsoft PowerBI data connector.",
+ "properties": {
+ "logs": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Logs data type.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "logs"
+ ]
+ },
+ "OfficePowerBIDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Office Microsoft PowerBI data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/OfficePowerBIConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataTypes"
+ ]
+ },
+ "PurviewAuditDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents PurviewAudit data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PurviewAuditDataConnectorProperties",
+ "description": "PurviewAudit data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "PurviewAudit"
+ },
+ "PurviewAuditConnectorDataTypes": {
+ "description": "The available data types for PurviewAudit data connector.",
+ "properties": {
+ "logs": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Logs data type.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "logs"
+ ]
+ },
+ "PurviewAuditDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "PurviewAudit data connector properties.",
+ "properties": {
+ "connectorDefinitionName": {
+ "description": "The connector definition name (the dataConnectorDefinition resource id).",
+ "type": "string"
+ },
+ "sourceType": {
+ "description": "The source type indicates which kind of data is relevant for this connector.",
+ "type": "string"
+ },
+ "dcrConfig": {
+ "description": "The DCR related properties.",
+ "$ref": "#/definitions/DCRConfiguration"
+ },
+ "dataTypes": {
+ "$ref": "#/definitions/PurviewAuditConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataTypes"
+ ]
+ },
+ "OfficeIRMDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents OfficeIRM (Microsoft Insider Risk Management) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficeIRMDataConnectorProperties",
+ "description": "OfficeIRM (Microsoft Insider Risk Management) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "OfficeIRM"
+ },
+ "OfficeIRMDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ },
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "OfficeIRM (Microsoft Insider Risk Management) data connector properties.",
+ "type": "object"
+ },
+ "MDATPDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MDATPDataConnectorProperties",
+ "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection"
+ },
+ "MDATPDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ },
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.",
+ "type": "object"
+ },
+ "OfficeDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents office data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/OfficeDataConnectorProperties",
+ "description": "Office data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "Office365"
+ },
+ "OfficeDataConnectorDataTypes": {
+ "description": "The available data types for office data connector.",
+ "properties": {
+ "exchange": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Exchange data type connection.",
+ "type": "object"
+ },
+ "sharePoint": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "SharePoint data type connection.",
+ "type": "object"
+ },
+ "teams": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Teams data type connection.",
+ "type": "object"
+ }
+ },
+ "required": [
+ "exchange",
+ "sharePoint",
+ "teams"
+ ],
+ "type": "object"
+ },
+ "OfficeDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Office data connector properties.",
+ "properties": {
+ "dataTypes": {
+ "$ref": "#/definitions/OfficeDataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "required": [
+ "dataTypes"
+ ],
+ "type": "object"
+ },
+ "TIDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents threat intelligence data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TIDataConnectorProperties",
+ "description": "TI (Threat Intelligence) data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "ThreatIntelligence"
+ },
+ "TIDataConnectorDataTypes": {
+ "description": "The available data types for TI (Threat Intelligence) data connector.",
+ "properties": {
+ "indicators": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Data type for indicators connection.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "indicators"
+ ]
+ },
+ "TIDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "TI (Threat Intelligence) data connector properties.",
+ "properties": {
+ "tipLookbackPeriod": {
+ "description": "The lookback period for the feed to be imported.",
+ "format": "date-time",
+ "type": "string",
+ "x-nullable": true
+ },
+ "dataTypes": {
+ "$ref": "#/definitions/TIDataConnectorDataTypes",
+ "description": "The available data types for the connector."
+ }
+ },
+ "type": "object",
+ "required": [
+ "dataTypes"
+ ]
+ },
+ "TiTaxiiDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Data connector to pull Threat intelligence data from TAXII 2.0/2.1 server",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TiTaxiiDataConnectorProperties",
+ "description": "Threat intelligence TAXII data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "ThreatIntelligenceTaxii"
+ },
+ "TiTaxiiDataConnectorDataTypes": {
+ "description": "The available data types for Threat Intelligence TAXII data connector.",
+ "properties": {
+ "taxiiClient": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorDataTypeCommon"
+ }
+ ],
+ "description": "Data type for TAXII connector.",
+ "type": "object"
+ }
+ },
+ "type": "object",
+ "required": [
+ "taxiiClient"
+ ]
+ },
+ "TiTaxiiDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorTenantId"
+ }
+ ],
+ "description": "Threat Intelligence TAXII data connector properties.",
+ "properties": {
+ "workspaceId": {
+ "description": "The workspace id.",
+ "type": "string"
+ },
+ "friendlyName": {
+ "description": "The friendly name for the TAXII server.",
+ "type": "string"
+ },
+ "taxiiServer": {
+ "description": "The API root for the TAXII server.",
+ "type": "string"
+ },
+ "collectionId": {
+ "description": "The collection id of the TAXII server.",
+ "type": "string"
+ },
+ "userName": {
+ "description": "The userName for the TAXII server.",
+ "type": "string"
+ },
+ "password": {
+ "description": "The password for the TAXII server.",
+ "type": "string"
+ },
+ "taxiiLookbackPeriod": {
+ "description": "The lookback period for the TAXII server.",
+ "format": "date-time",
+ "type": "string",
+ "x-nullable": true
+ },
+ "pollingFrequency": {
+ "description": "The polling frequency for the TAXII server.",
+ "type": "string",
+ "x-nullable": true,
+ "enum": [
+ "OnceAMinute",
+ "OnceAnHour",
+ "OnceADay"
+ ],
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "PollingFrequency",
+ "values": [
+ {
+ "description": "Once a minute",
+ "value": "OnceAMinute"
+ },
+ {
+ "description": "Once an hour",
+ "value": "OnceAnHour"
+ },
+ {
+ "description": "Once a day",
+ "value": "OnceADay"
+ }
+ ]
+ }
+ },
+ "dataTypes": {
+ "$ref": "#/definitions/TiTaxiiDataConnectorDataTypes",
+ "description": "The available data types for Threat Intelligence TAXII data connector."
+ }
+ },
+ "required": [
+ "dataTypes",
+ "pollingFrequency"
+ ],
+ "type": "object"
+ },
+ "IoTDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents IoT data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/IoTDataConnectorProperties",
+ "description": "IoT data connector properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "IOT"
+ },
+ "IoTDataConnectorProperties": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnectorWithAlertsProperties"
+ }
+ ],
+ "description": "IoT data connector properties.",
+ "properties": {
+ "subscriptionId": {
+ "description": "The subscription id to connect to, and get the data from.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "CodelessUiDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Codeless UI data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/CodelessParameters",
+ "description": "Codeless UI data connector properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "GenericUI"
+ },
+ "CodelessParameters": {
+ "description": "Represents Codeless UI data connector",
+ "type": "object",
+ "properties": {
+ "connectorUiConfig": {
+ "$ref": "#/definitions/CodelessUiConnectorConfigProperties",
+ "description": "Config to describe the instructions blade"
+ }
+ }
+ },
+ "CodelessUiConnectorConfigProperties": {
+ "description": "Config to describe the instructions blade",
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "Connector blade title",
+ "type": "string"
+ },
+ "publisher": {
+ "description": "Connector publisher name",
+ "type": "string"
+ },
+ "descriptionMarkdown": {
+ "description": "Connector description",
+ "type": "string"
+ },
+ "customImage": {
+ "description": "An optional custom image to be used when displaying the connector within Azure Sentinel's connector's gallery",
+ "type": "string"
+ },
+ "graphQueriesTableName": {
+ "description": "Name of the table the connector will insert the data to",
+ "type": "string"
+ },
+ "graphQueries": {
+ "description": "The graph query to show the current data status",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/GraphQueries"
+ }
+ ]
+ },
+ "type": "array"
+ },
+ "sampleQueries": {
+ "description": "The sample queries for the connector",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/SampleQueries"
+ }
+ ]
+ },
+ "type": "array"
+ },
+ "dataTypes": {
+ "description": "Data types to check for last data received",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/LastDataReceivedDataType"
+ }
+ ]
+ },
+ "type": "array"
+ },
+ "connectivityCriteria": {
+ "description": "Define the way the connector check connectivity",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectivityCriteria"
+ }
+ ]
+ },
+ "type": "array"
+ },
+ "availability": {
+ "description": "Connector Availability Status",
+ "$ref": "#/definitions/Availability"
+ },
+ "permissions": {
+ "description": "Permissions required for the connector",
+ "$ref": "#/definitions/Permissions"
+ },
+ "instructionSteps": {
+ "description": "Instruction steps to enable the connector",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/InstructionSteps"
+ }
+ ]
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "title",
+ "publisher",
+ "descriptionMarkdown",
+ "graphQueriesTableName",
+ "graphQueries",
+ "sampleQueries",
+ "dataTypes",
+ "connectivityCriteria",
+ "availability",
+ "permissions",
+ "instructionSteps"
+ ]
+ },
+ "DataConnectorConnectBody": {
+ "description": "Represents Codeless API Polling data connector.",
+ "type": "object",
+ "x-ms-identifiers": [],
+ "properties": {
+ "kind": {
+ "description": "The authentication kind used to poll the data",
+ "enum": [
+ "Basic",
+ "OAuth2",
+ "APIKey"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConnectAuthKind"
+ }
+ },
+ "apiKey": {
+ "type": "string",
+ "description": "The API key of the audit server.",
+ "x-secret": true
+ },
+ "dataCollectionEndpoint": {
+ "type": "string",
+ "description": "Used in v2 logs connector. Represents the data collection ingestion endpoint in log analytics."
+ },
+ "dataCollectionRuleImmutableId": {
+ "type": "string",
+ "description": "Used in v2 logs connector. The data collection rule immutable id, the rule defines the transformation and data destination."
+ },
+ "outputStream": {
+ "type": "string",
+ "description": "Used in v2 logs connector. The stream we are sending the data to, this is the name of the streamDeclarations defined in the DCR."
+ },
+ "clientSecret": {
+ "type": "string",
+ "description": "The client secret of the OAuth 2.0 application."
+ },
+ "clientId": {
+ "type": "string",
+ "description": "The client id of the OAuth 2.0 application."
+ },
+ "authorizationCode": {
+ "type": "string",
+ "description": "The authorization code used in OAuth 2.0 code flow to issue a token."
+ },
+ "userName": {
+ "type": "string",
+ "description": "The user name in the audit log server."
+ },
+ "password": {
+ "type": "string",
+ "description": "The user password in the audit log server.",
+ "x-ms-secret": true
+ },
+ "requestConfigUserInputValues": {
+ "type": "array",
+ "description": "",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object"
+ }
+ }
+ }
+ },
+ "CodelessApiPollingDataConnector": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/DataConnector"
+ }
+ ],
+ "description": "Represents Codeless API Polling data connector.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ApiPollingParameters",
+ "description": "Codeless poling data connector properties",
+ "x-ms-client-flatten": true
+ }
+ },
+ "type": "object",
+ "x-ms-discriminator-value": "APIPolling"
+ },
+ "ApiPollingParameters": {
+ "description": "Represents Codeless API Polling data connector",
+ "type": "object",
+ "properties": {
+ "connectorUiConfig": {
+ "$ref": "#/definitions/CodelessUiConnectorConfigProperties",
+ "description": "Config to describe the instructions blade"
+ },
+ "pollingConfig": {
+ "$ref": "#/definitions/CodelessConnectorPollingConfigProperties",
+ "description": "Config to describe the polling instructions"
+ }
+ }
+ },
+ "CodelessConnectorPollingConfigProperties": {
+ "description": "Config to describe the polling config for API poller connector",
+ "type": "object",
+ "properties": {
+ "isActive": {
+ "description": "The poller active status",
+ "type": "boolean"
+ },
+ "auth": {
+ "type": "object",
+ "$ref": "#/definitions/CodelessConnectorPollingAuthProperties",
+ "description": "Describe the authentication type of the poller"
+ },
+ "request": {
+ "type": "object",
+ "$ref": "#/definitions/CodelessConnectorPollingRequestProperties",
+ "description": "Describe the poll request config parameters of the poller"
+ },
+ "paging": {
+ "type": "object",
+ "$ref": "#/definitions/CodelessConnectorPollingPagingProperties",
+ "description": "Describe the poll request paging config of the poller"
+ },
+ "response": {
+ "type": "object",
+ "$ref": "#/definitions/CodelessConnectorPollingResponseProperties",
+ "description": "Describe the response config parameters of the poller"
+ }
+ },
+ "required": [
+ "auth",
+ "request"
+ ]
+ },
+ "CodelessConnectorPollingResponseProperties": {
+ "description": "Describes the response from the external server",
+ "type": "object",
+ "properties": {
+ "eventsJsonPaths": {
+ "description": "Describes the path we should extract the data in the response",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "successStatusJsonPath": {
+ "description": "Describes the path we should extract the status code in the response",
+ "type": "string"
+ },
+ "successStatusValue": {
+ "description": "Describes the path we should extract the status value in the response",
+ "type": "string"
+ },
+ "isGzipCompressed": {
+ "description": "Describes if the data in the response is Gzip",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "eventsJsonPaths"
+ ]
+ },
+ "CodelessConnectorPollingPagingProperties": {
+ "description": "Describe the properties needed to make a pagination call",
+ "type": "object",
+ "properties": {
+ "pagingType": {
+ "description": "Describes the type. could be 'None', 'PageToken', 'PageCount', 'TimeStamp'",
+ "type": "string"
+ },
+ "nextPageParaName": {
+ "description": "Defines the name of a next page attribute",
+ "type": "string"
+ },
+ "nextPageTokenJsonPath": {
+ "description": "Defines the path to a next page token JSON",
+ "type": "string"
+ },
+ "pageCountAttributePath": {
+ "description": "Defines the path to a page count attribute",
+ "type": "string"
+ },
+ "pageTotalCountAttributePath": {
+ "description": "Defines the path to a page total count attribute",
+ "type": "string"
+ },
+ "pageTimeStampAttributePath": {
+ "description": "Defines the path to a paging time stamp attribute",
+ "type": "string"
+ },
+ "searchTheLatestTimeStampFromEventsList": {
+ "description": "Determines whether to search for the latest time stamp in the events list",
+ "type": "string"
+ },
+ "pageSizeParaName": {
+ "description": "Defines the name of the page size parameter",
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Defines the paging size",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "required": [
+ "pagingType"
+ ]
+ },
+ "CodelessConnectorPollingRequestProperties": {
+ "description": "Describe the request properties needed to successfully pull from the server",
+ "type": "object",
+ "properties": {
+ "apiEndpoint": {
+ "description": "Describe the endpoint we should pull the data from",
+ "type": "string"
+ },
+ "rateLimitQps": {
+ "description": "Defines the rate limit QPS",
+ "format": "int32",
+ "type": "integer"
+ },
+ "queryWindowInMin": {
+ "description": "The window interval we will use the pull the data",
+ "format": "int32",
+ "type": "integer"
+ },
+ "httpMethod": {
+ "description": "The http method type we will use in the poll request, GET or POST",
+ "type": "string"
+ },
+ "queryTimeFormat": {
+ "description": "The time format will be used the query events in a specific window",
+ "type": "string"
+ },
+ "retryCount": {
+ "description": "Describe the amount of time we should try and poll the data in case of failure",
+ "format": "int32",
+ "type": "integer"
+ },
+ "timeoutInSeconds": {
+ "description": "The number of seconds we will consider as a request timeout",
+ "format": "int32",
+ "type": "integer"
+ },
+ "headers": {
+ "description": "Describe the headers sent in the poll request",
+ "type": "object"
+ },
+ "queryParameters": {
+ "description": "Describe the query parameters sent in the poll request",
+ "type": "object"
+ },
+ "queryParametersTemplate": {
+ "description": "For advanced scenarios for example user name/password embedded in nested JSON payload",
+ "type": "string"
+ },
+ "startTimeAttributeName": {
+ "description": "This will be used the query events from a start of the time window",
+ "type": "string"
+ },
+ "endTimeAttributeName": {
+ "description": "This will be used the query events from the end of the time window",
+ "type": "string"
+ }
+ },
+ "required": [
+ "apiEndpoint",
+ "httpMethod",
+ "queryWindowInMin",
+ "queryTimeFormat"
+ ]
+ },
+ "CodelessConnectorPollingAuthProperties": {
+ "description": "Describe the authentication properties needed to successfully authenticate with the server",
+ "type": "object",
+ "properties": {
+ "authType": {
+ "description": "The authentication type",
+ "type": "string"
+ },
+ "apiKeyName": {
+ "description": "The header name which the token is sent with",
+ "type": "string"
+ },
+ "apiKeyIdentifier": {
+ "description": "A prefix send in the header before the actual token",
+ "type": "string"
+ },
+ "isApiKeyInPostPayload": {
+ "description": "Marks if the key should sent in header",
+ "type": "string"
+ },
+ "flowName": {
+ "description": "Describes the flow name, for example 'AuthCode' for Oauth 2.0",
+ "type": "string"
+ },
+ "tokenEndpoint": {
+ "description": "The endpoint used to issue a token, used in Oauth 2.0 flow",
+ "type": "string"
+ },
+ "authorizationEndpoint": {
+ "description": "The endpoint used to authorize the user, used in Oauth 2.0 flow",
+ "type": "string"
+ },
+ "authorizationEndpointQueryParameters": {
+ "description": "The query parameters used in authorization request, used in Oauth 2.0 flow",
+ "type": "object"
+ },
+ "redirectionEndpoint": {
+ "description": "The redirect endpoint where we will get the authorization code, used in Oauth 2.0 flow",
+ "type": "string"
+ },
+ "tokenEndpointHeaders": {
+ "description": "The query headers used in token request, used in Oauth 2.0 flow",
+ "type": "object"
+ },
+ "tokenEndpointQueryParameters": {
+ "description": "The query parameters used in token request, used in Oauth 2.0 flow",
+ "type": "object"
+ },
+ "isClientSecretInHeader": {
+ "description": "Marks if we should send the client secret in header or payload, used in Oauth 2.0 flow",
+ "type": "boolean"
+ },
+ "scope": {
+ "description": "The OAuth token scope",
+ "type": "string"
+ }
+ },
+ "required": [
+ "authType"
+ ]
+ },
+ "LastDataReceivedDataType": {
+ "description": "Data type for last data received",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Name of the data type to show in the graph. can be use with {{graphQueriesTableName}} placeholder",
+ "type": "string"
+ },
+ "lastDataReceivedQuery": {
+ "description": "Query for indicate last data received",
+ "type": "string"
+ }
+ }
+ },
+ "Permissions": {
+ "description": "Permissions required for the connector",
+ "x-ms-identifiers": [],
+ "type": "object",
+ "properties": {
+ "resourceProvider": {
+ "description": "Resource provider permissions required for the connector",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ResourceProvider"
+ }
+ ]
+ },
+ "type": "array"
+ },
+ "customs": {
+ "description": "Customs permissions required for the connector",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/Customs"
+ }
+ ]
+ },
+ "type": "array"
+ }
+ }
+ },
+ "Customs": {
+ "description": "Customs permissions required for the connector",
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/CustomsPermission"
+ }
+ ]
+ },
+ "CustomsPermission": {
+ "description": "Customs permissions required for the connector",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Customs permissions name",
+ "type": "string"
+ },
+ "description": {
+ "description": "Customs permissions description",
+ "type": "string"
+ }
+ }
+ },
+ "ResourceProvider": {
+ "description": "Resource provider permissions required for the connector",
+ "type": "object",
+ "properties": {
+ "provider": {
+ "description": "Provider name",
+ "enum": [
+ "Microsoft.OperationalInsights/solutions",
+ "Microsoft.OperationalInsights/workspaces",
+ "Microsoft.OperationalInsights/workspaces/datasources",
+ "microsoft.aadiam/diagnosticSettings",
+ "Microsoft.OperationalInsights/workspaces/sharedKeys",
+ "Microsoft.Authorization/policyAssignments"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ProviderName"
+ }
+ },
+ "permissionsDisplayText": {
+ "description": "Permission description text",
+ "type": "string"
+ },
+ "providerDisplayName": {
+ "description": "Permission provider display name",
+ "type": "string"
+ },
+ "scope": {
+ "description": "Permission provider scope",
+ "enum": [
+ "ResourceGroup",
+ "Subscription",
+ "Workspace"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "PermissionProviderScope"
+ }
+ },
+ "requiredPermissions": {
+ "description": "Required permissions for the connector",
+ "$ref": "#/definitions/RequiredPermissions"
+ }
+ }
+ },
+ "InstructionSteps": {
+ "description": "Instruction steps to enable the connector",
+ "type": "object",
+ "properties": {
+ "title": {
+ "description": "Instruction step title",
+ "type": "string"
+ },
+ "description": {
+ "description": "Instruction step description",
+ "type": "string"
+ },
+ "instructions": {
+ "description": "Instruction step details",
+ "x-ms-identifiers": [],
+ "items": {
+ "type": "object",
+ "allOf": [
+ {
+ "$ref": "#/definitions/ConnectorInstructionModelBase"
+ }
+ ]
+ },
+ "type": "array"
+ }
+ }
+ },
+ "ConnectorInstructionModelBase": {
+ "description": "Instruction step details",
+ "type": "object",
+ "properties": {
+ "parameters": {
+ "type": "object",
+ "description": "The parameters for the setting"
+ },
+ "type": {
+ "description": "The kind of the setting",
+ "enum": [
+ "CopyableLabel",
+ "InstructionStepsGroup",
+ "InfoMessage"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "SettingType"
+ }
+ }
+ },
+ "required": [
+ "type"
+ ]
+ },
+ "RequiredPermissions": {
+ "description": "Required permissions for the connector",
+ "type": "object",
+ "properties": {
+ "action": {
+ "description": "action permission",
+ "type": "boolean"
+ },
+ "write": {
+ "description": "write permission",
+ "type": "boolean"
+ },
+ "read": {
+ "description": "read permission",
+ "type": "boolean"
+ },
+ "delete": {
+ "description": "delete permission",
+ "type": "boolean"
+ }
+ }
+ },
+ "Availability": {
+ "description": "Connector Availability Status",
+ "type": "object",
+ "properties": {
+ "status": {
+ "description": "The connector Availability Status",
+ "format": "int32",
+ "type": "integer",
+ "enum": [
+ 1
+ ],
+ "x-ms-enum": {
+ "name": "AvailabilityStatus",
+ "values": [
+ {
+ "value": 1,
+ "description": "Available"
+ }
+ ]
+ }
+ },
+ "isPreview": {
+ "description": "Set connector as preview",
+ "type": "boolean"
+ }
+ }
+ },
+ "ConnectivityCriteria": {
+ "description": "Setting for the connector check connectivity",
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "type of connectivity",
+ "enum": [
+ "IsConnectedQuery"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "modelAsString": true,
+ "name": "ConnectivityType"
+ }
+ },
+ "value": {
+ "description": "Queries for checking connectivity",
+ "x-ms-identifiers": [],
+ "type": "array",
+ "items": {
+ "description": "checking connectivity query",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "SampleQueries": {
+ "description": "The sample queries for the connector",
+ "type": "object",
+ "properties": {
+ "description": {
+ "description": "The sample query description",
+ "type": "string"
+ },
+ "query": {
+ "description": "the sample query",
+ "type": "string"
+ }
+ }
+ },
+ "GraphQueries": {
+ "type": "object",
+ "description": "The graph query to show the current data status",
+ "properties": {
+ "metricName": {
+ "description": "the metric that the query is checking",
+ "type": "string"
+ },
+ "legend": {
+ "description": "The legend for the graph",
+ "type": "string"
+ },
+ "baseQuery": {
+ "description": "The base query for the graph",
+ "type": "string"
+ }
+ }
+ }
+ },
+ "parameters": {
+ "DataConnector": {
+ "description": "The data connector",
+ "in": "body",
+ "name": "dataConnector",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DataConnector"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "DataConnectorId": {
+ "description": "Connector ID",
+ "in": "path",
+ "name": "dataConnectorId",
+ "required": true,
+ "type": "string",
+ "x-ms-parameter-location": "method"
+ },
+ "DataConnectorConnectBody": {
+ "description": "The data connector",
+ "in": "body",
+ "name": "connectBody",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DataConnectorConnectBody"
+ },
+ "x-ms-parameter-location": "method"
+ },
+ "DataConnectorsCheckRequirementsBody": {
+ "description": "The parameters for requirements check message",
+ "in": "body",
+ "name": "DataConnectorsCheckRequirements",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/DataConnectorsCheckRequirements"
+ },
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/CreateActionOfAlertRule.json
new file mode 100644
index 000000000000..ec0e527f95ae
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/CreateActionOfAlertRule.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "action": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "triggerUri": "https://prod-31.northcentralus.logic.azure.com:443/workflows/cd3765391efd48549fd7681ded1d48d7/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=signature",
+ "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "name": "912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "type": "Microsoft.SecurityInsights/alertRules/actions",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "workflowId": "cd3765391efd48549fd7681ded1d48d7",
+ "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "name": "912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "type": "Microsoft.SecurityInsights/alertRules/actions",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "workflowId": "cd3765391efd48549fd7681ded1d48d7",
+ "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/DeleteActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/DeleteActionOfAlertRule.json
new file mode 100644
index 000000000000..b99161b07126
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/DeleteActionOfAlertRule.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetActionOfAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetActionOfAlertRuleById.json
new file mode 100644
index 000000000000..04ccf8e75e23
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetActionOfAlertRuleById.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "name": "912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "type": "Microsoft.SecurityInsights/alertRules/actions",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "workflowId": "cd3765391efd48549fd7681ded1d48d7",
+ "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetAllActionsByAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetAllActionsByAlertRule.json
new file mode 100644
index 000000000000..24188522233c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/actions/GetAllActionsByAlertRule.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "name": "912bec42-cb66-4c03-ac63-1761b6898c3e",
+ "type": "Microsoft.SecurityInsights/alertRules/actions",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "workflowId": "cd3765391efd48549fd7681ded1d48d7",
+ "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json
new file mode 100644
index 000000000000..191fac48a791
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "alertRuleTemplateId": "65360bb0-8986-4ade-a89d-af3cf44d28aa"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "type": "Microsoft.SecurityInsights/AlertRuleTemplates",
+ "kind": "Scheduled",
+ "properties": {
+ "severity": "Low",
+ "query": "let timeframe = 1d;\nAWSCloudTrail\n| where TimeGenerated >= ago(timeframe)\n| where EventName == \"CreateNetworkAclEntry\"\n or EventName == \"CreateRoute\"\n| project TimeGenerated, EventName, EventTypeName, UserIdentityAccountId, UserIdentityPrincipalid, UserAgent, UserIdentityUserName, SessionMfaAuthenticated, SourceIpAddress, AWSRegion, EventSource, AdditionalEventData, ResponseElements\n| extend AccountCustomEntity = UserIdentityUserName, IPCustomEntity = SourceIpAddress",
+ "queryFrequency": "P1D",
+ "queryPeriod": "P1D",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "displayName": "Changes to Amazon VPC settings",
+ "description": "This alert monitors changes to Amazon VPC (Virtual Private Cloud) settings such as new ACL entries and routes in route tables.\nMore information: https://medium.com/@GorillaStack/the-most-important-aws-cloudtrail-security-events-to-track-a5b9873f8255 \nand https://aws.amazon.com/vpc/",
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "tactics": [
+ "PrivilegeEscalation",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "lastUpdatedDateUTC": "2020-02-27T00:00:00Z",
+ "version": "1.0.2",
+ "createdDateUTC": "2019-02-27T00:00:00Z",
+ "status": "Available",
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "alertRulesCreatedByTemplateCount": 0
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json
new file mode 100644
index 000000000000..77c2dba7b0bd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json
@@ -0,0 +1,238 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "type": "Microsoft.SecurityInsights/AlertRuleTemplates",
+ "kind": "Scheduled",
+ "properties": {
+ "severity": "Low",
+ "query": "let timeframe = 1d;\nAWSCloudTrail\n| where TimeGenerated >= ago(timeframe)\n| where EventName == \"CreateNetworkAclEntry\"\n or EventName == \"CreateRoute\"\n| project TimeGenerated, EventName, EventTypeName, UserIdentityAccountId, UserIdentityPrincipalid, UserAgent, UserIdentityUserName, SessionMfaAuthenticated, SourceIpAddress, AWSRegion, EventSource, AdditionalEventData, ResponseElements\n| extend AccountCustomEntity = UserIdentityUserName, IPCustomEntity = SourceIpAddress",
+ "queryFrequency": "P1D",
+ "queryPeriod": "P1D",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "displayName": "Changes to Amazon VPC settings",
+ "description": "This alert monitors changes to Amazon VPC (Virtual Private Cloud) settings such as new ACL entries and routes in route tables.\nMore information: https://medium.com/@GorillaStack/the-most-important-aws-cloudtrail-security-events-to-track-a5b9873f8255 \nand https://aws.amazon.com/vpc/",
+ "tactics": [
+ "PrivilegeEscalation",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "lastUpdatedDateUTC": "2020-02-27T00:00:00Z",
+ "createdDateUTC": "2019-02-27T00:00:00Z",
+ "status": "Available",
+ "version": "1.0.1",
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "alertRulesCreatedByTemplateCount": 0
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "name": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "type": "Microsoft.SecurityInsights/AlertRuleTemplates",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Microsoft Sentinel uses Fusion, a correlation engine based on scalable machine learning algorithms, to automatically detect multistage attacks by identifying combinations of anomalous behaviors and suspicious activities that are observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nSince Fusion correlates multiple signals from various products to detect advanced multistage attacks, successful Fusion detections are presented as Fusion incidents on the Microsoft Sentinel Incidents page. This rule covers the following detections:\n- Fusion for emerging threats\n- Fusion for ransomware\n- Scenario-based Fusion detections (122 scenarios)\n\nTo enable these detections, we recommend you configure the following data connectors for best results:\n- Out-of-the-box anomaly detections\n- Azure Active Directory Identity Protection\n- Azure Defender\n- Azure Defender for IoT\n- Microsoft 365 Defender\n- Microsoft Cloud App Security \n- Microsoft Defender for Endpoint\n- Microsoft Defender for Identity\n- Microsoft Defender for Office 365\n- Palo Alto Networks\n- Scheduled analytics rules, both built-in and those created by your security analysts. Analytics rules must contain kill-chain (tactics) and entity mapping information in order to be used by Fusion.\n\nFor the full description of each detection that is supported by Fusion, go to https://aka.ms/SentinelFusion.",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "severityFilter": {
+ "enabled": true,
+ "isSupported": true,
+ "severityFilters": [
+ "Informational",
+ "Low",
+ "Medium",
+ "High"
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "severityFilter": {
+ "enabled": false,
+ "isSupported": false,
+ "severityFilters": null
+ }
+ }
+ ]
+ }
+ ],
+ "lastUpdatedDateUTC": "2021-06-09T00:00:00Z",
+ "createdDateUTC": "2019-07-25T00:00:00Z",
+ "status": "Available",
+ "severity": "High",
+ "alertRulesCreatedByTemplateCount": 0
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/AlertRuleTemplates/b3cfc7c0-092c-481c-a55b-34a3979758cb",
+ "name": "b3cfc7c0-092c-481c-a55b-34a3979758cb",
+ "type": "Microsoft.SecurityInsights/AlertRuleTemplates",
+ "kind": "MicrosoftSecurityIncidentCreation",
+ "properties": {
+ "productFilter": "Microsoft Cloud App Security",
+ "displayName": "Create incidents based on Microsoft Cloud App Security alerts",
+ "description": "Create incidents based on all alerts generated in Microsoft Cloud App Security",
+ "lastUpdatedDateUTC": "2020-02-27T00:00:00Z",
+ "createdDateUTC": "2019-07-16T00:00:00Z",
+ "status": "Available",
+ "alertRulesCreatedByTemplateCount": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRule.json
new file mode 100644
index 000000000000..322e5397a732
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRule.json
@@ -0,0 +1,845 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "myFirstFusionRule",
+ "alertRule": {
+ "kind": "Fusion",
+ "etag": "3d00c3ca-0000-0100-0000-5d42d5010000",
+ "properties": {
+ "enabled": true,
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule",
+ "name": "myFirstFusionRule",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Using Fusion technology based on machine learning, Azure Sentinel automatically detects multistage attacks by identifying combinations of anomalous behaviors and suspicious activities observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nThere are a total of 122 Fusion incident types detected by Azure Sentinel.\n\nTo detect these multistage attacks, the following data connectors must be configured:\n- Azure Active Directory Identity Protection.\n- Microsoft Cloud App Security.\n- Microsoft Defender for Endpoint.\n- Azure Defender.\n- Palo Alto Networks.\n- Scheduled Analytics Rules supported by Fusion\n\nFor a full list and description of each scenario that is supported for these multistage attacks, go to https://aka.ms/SentinelFusion.",
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": false,
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "severity": "High",
+ "enabled": true,
+ "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule",
+ "name": "myFirstFusionRule",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Using Fusion technology based on machine learning, Azure Sentinel automatically detects multistage attacks by identifying combinations of anomalous behaviors and suspicious activities observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nThere are a total of 122 Fusion incident types detected by Azure Sentinel.\n\nTo detect these multistage attacks, the following data connectors must be configured:\n- Azure Active Directory Identity Protection.\n- Microsoft Cloud App Security.\n- Microsoft Defender for Endpoint.\n- Azure Defender.\n- Palo Alto Networks.\n- Scheduled Analytics Rules supported by Fusion\n\nFor a full list and description of each scenario that is supported for these multistage attacks, go to https://aka.ms/SentinelFusion.",
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": false,
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "severity": "High",
+ "enabled": true,
+ "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json
new file mode 100644
index 000000000000..d8a25a27e877
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json
@@ -0,0 +1,851 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "myFirstFusionRule",
+ "alertRule": {
+ "kind": "Fusion",
+ "etag": "3d00c3ca-0000-0100-0000-5d42d5010000",
+ "properties": {
+ "enabled": true,
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule",
+ "name": "myFirstFusionRule",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Using Fusion technology based on machine learning, Azure Sentinel automatically detects multistage attacks by identifying combinations of anomalous behaviors and suspicious activities observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nThere are a total of 122 Fusion incident types detected by Azure Sentinel.\n\nTo detect these multistage attacks, the following data connectors must be configured:\n- Azure Active Directory Identity Protection.\n- Microsoft Cloud App Security.\n- Microsoft Defender for Endpoint.\n- Azure Defender.\n- Palo Alto Networks.\n- Scheduled Analytics Rules supported by Fusion\n\nFor a full list and description of each scenario that is supported for these multistage attacks, go to https://aka.ms/SentinelFusion.",
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": false,
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "severity": "High",
+ "enabled": true,
+ "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule",
+ "name": "myFirstFusionRule",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Using Fusion technology based on machine learning, Azure Sentinel automatically detects multistage attacks by identifying combinations of anomalous behaviors and suspicious activities observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nThere are a total of 122 Fusion incident types detected by Azure Sentinel.\n\nTo detect these multistage attacks, the following data connectors must be configured:\n- Azure Active Directory Identity Protection.\n- Microsoft Cloud App Security.\n- Microsoft Defender for Endpoint.\n- Azure Defender.\n- Palo Alto Networks.\n- Scheduled Analytics Rules supported by Fusion\n\nFor a full list and description of each scenario that is supported for these multistage attacks, go to https://aka.ms/SentinelFusion.",
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": false,
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "scenarioExclusionPatterns": [
+ {
+ "exclusionPattern": "Alert providers:Azure Active Directory Identity Protection:Infected Device;Alert providers:Azure Defender:Crypto-mining activity",
+ "dateAddedInUTC": "2021-10-01T15:26:44.9429806Z"
+ }
+ ],
+ "severity": "High",
+ "enabled": true,
+ "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json
new file mode 100644
index 000000000000..6babcf444390
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "microsoftSecurityIncidentCreationRuleExample",
+ "alertRule": {
+ "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"",
+ "kind": "MicrosoftSecurityIncidentCreation",
+ "properties": {
+ "productFilter": "Microsoft Cloud App Security",
+ "displayName": "testing displayname",
+ "enabled": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample",
+ "name": "microsoftSecurityIncidentCreationRuleExample",
+ "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "MicrosoftSecurityIncidentCreation",
+ "properties": {
+ "productFilter": "Microsoft Cloud App Security",
+ "severitiesFilter": null,
+ "displayNamesFilter": null,
+ "displayName": "testing displayname",
+ "enabled": true,
+ "description": null,
+ "alertRuleTemplateName": null,
+ "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample",
+ "name": "microsoftSecurityIncidentCreationRuleExample",
+ "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "MicrosoftSecurityIncidentCreation",
+ "properties": {
+ "productFilter": "Microsoft Cloud App Security",
+ "severitiesFilter": null,
+ "displayNamesFilter": null,
+ "displayName": "testing displayname",
+ "enabled": true,
+ "description": null,
+ "alertRuleTemplateName": null,
+ "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateNrtAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateNrtAlertRule.json
new file mode 100644
index 000000000000..2ccda0ed6bc7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateNrtAlertRule.json
@@ -0,0 +1,136 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "alertRule": {
+ "kind": "NRT",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "Rule2",
+ "description": "",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden",
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host",
+ "Account"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "NRT",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "Rule2",
+ "description": "",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden",
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "lastModifiedUtc": "2019-01-01T13:15:30Z",
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host",
+ "Account"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "NRT",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "Rule2",
+ "description": "",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden",
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "lastModifiedUtc": "2019-01-01T13:15:30Z",
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host",
+ "Account"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateScheduledAlertRule.json
new file mode 100644
index 000000000000..31c166e798b0
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/CreateScheduledAlertRule.json
@@ -0,0 +1,270 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "alertRule": {
+ "kind": "Scheduled",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My scheduled rule",
+ "description": "An example for a scheduled rule",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "Heartbeat",
+ "queryFrequency": "PT1H",
+ "queryPeriod": "P2DT1H30M",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "customDetails": {
+ "OperatingSystemName": "OSName",
+ "OperatingSystemType": "OSType"
+ },
+ "entityMappings": [
+ {
+ "entityType": "Host",
+ "fieldMappings": [
+ {
+ "identifier": "FullName",
+ "columnName": "Computer"
+ }
+ ]
+ },
+ {
+ "entityType": "IP",
+ "fieldMappings": [
+ {
+ "identifier": "Address",
+ "columnName": "ComputerIP"
+ }
+ ]
+ }
+ ],
+ "sentinelEntitiesMappings": [
+ {
+ "columnName": "Entities"
+ }
+ ],
+ "alertDetailsOverride": {
+ "alertDisplayNameFormat": "Alert from {{Computer}}",
+ "alertDescriptionFormat": "Suspicious activity was made by {{ComputerIP}}",
+ "alertDynamicProperties": [
+ {
+ "alertProperty": "ProductComponentName",
+ "value": "ProductComponentNameCustomColumn"
+ },
+ {
+ "alertProperty": "ProductName",
+ "value": "ProductNameCustomColumn"
+ },
+ {
+ "alertProperty": "AlertLink",
+ "value": "Link"
+ }
+ ]
+ },
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host"
+ ],
+ "groupByAlertDetails": [
+ "DisplayName"
+ ],
+ "groupByCustomDetails": [
+ "OperatingSystemType",
+ "OperatingSystemName"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Scheduled",
+ "etag": "\"01005144-0000-0d00-0000-6058632c0000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "My scheduled rule",
+ "description": "An example for a scheduled rule",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "Heartbeat",
+ "queryFrequency": "PT1H",
+ "queryPeriod": "P2DT1H30M",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "lastModifiedUtc": "2021-03-01T13:17:30Z",
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "customDetails": {
+ "OperatingSystemName": "OSName",
+ "OperatingSystemType": "OSType"
+ },
+ "entityMappings": [
+ {
+ "entityType": "Host",
+ "fieldMappings": [
+ {
+ "identifier": "FullName",
+ "columnName": "Computer"
+ }
+ ]
+ },
+ {
+ "entityType": "IP",
+ "fieldMappings": [
+ {
+ "identifier": "Address",
+ "columnName": "ComputerIP"
+ }
+ ]
+ }
+ ],
+ "alertDetailsOverride": {
+ "alertDisplayNameFormat": "Alert from {{Computer}}",
+ "alertDescriptionFormat": "Suspicious activity was made by {{ComputerIP}}",
+ "alertTacticsColumnName": null,
+ "alertSeverityColumnName": null
+ },
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host"
+ ],
+ "groupByAlertDetails": [
+ "DisplayName"
+ ],
+ "groupByCustomDetails": [
+ "OperatingSystemType",
+ "OperatingSystemName"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Scheduled",
+ "etag": "\"01007444-0000-0d00-0000-605863a70000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "My scheduled rule",
+ "description": "An example for a scheduled rule",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "Heartbeat",
+ "queryFrequency": "PT1H",
+ "queryPeriod": "P2DT1H30M",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "lastModifiedUtc": "2021-03-01T13:15:30Z",
+ "customDetails": {
+ "OperatingSystemName": "OSName",
+ "OperatingSystemType": "OSType"
+ },
+ "entityMappings": [
+ {
+ "entityType": "Host",
+ "fieldMappings": [
+ {
+ "identifier": "FullName",
+ "columnName": "Computer"
+ }
+ ]
+ },
+ {
+ "entityType": "IP",
+ "fieldMappings": [
+ {
+ "identifier": "Address",
+ "columnName": "ComputerIP"
+ }
+ ]
+ }
+ ],
+ "alertDetailsOverride": {
+ "alertDisplayNameFormat": "Alert from {{Computer}}",
+ "alertDescriptionFormat": "Suspicious activity was made by {{ComputerIP}}",
+ "alertTacticsColumnName": null,
+ "alertSeverityColumnName": null
+ },
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host"
+ ],
+ "groupByAlertDetails": [
+ "DisplayName"
+ ],
+ "groupByCustomDetails": [
+ "OperatingSystemType",
+ "OperatingSystemName"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/DeleteAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/DeleteAlertRule.json
new file mode 100644
index 000000000000..9a3bba2bd457
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/DeleteAlertRule.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetAllAlertRules.json
new file mode 100644
index 000000000000..ccfb3cd294b6
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetAllAlertRules.json
@@ -0,0 +1,412 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Scheduled",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "My scheduled rule",
+ "description": "An example for a scheduled rule",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "Heartbeat",
+ "queryFrequency": "PT1H",
+ "queryPeriod": "P2DT1H30M",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "lastModifiedUtc": "2021-03-01T13:17:30Z",
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "customDetails": {
+ "OperatingSystemName": "OSName",
+ "OperatingSystemType": "OSType"
+ },
+ "entityMappings": [
+ {
+ "entityType": "Host",
+ "fieldMappings": [
+ {
+ "identifier": "FullName",
+ "columnName": "Computer"
+ }
+ ]
+ },
+ {
+ "entityType": "IP",
+ "fieldMappings": [
+ {
+ "identifier": "Address",
+ "columnName": "ComputerIP"
+ }
+ ]
+ }
+ ],
+ "alertDetailsOverride": {
+ "alertDisplayNameFormat": "Alert from {{Computer}}",
+ "alertDescriptionFormat": "Suspicious activity was made by {{ComputerIP}}",
+ "alertTacticsColumnName": null,
+ "alertSeverityColumnName": null
+ },
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host"
+ ],
+ "groupByAlertDetails": [
+ "DisplayName"
+ ],
+ "groupByCustomDetails": [
+ "OperatingSystemType",
+ "OperatingSystemName"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample",
+ "name": "microsoftSecurityIncidentCreationRuleExample",
+ "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "MicrosoftSecurityIncidentCreation",
+ "properties": {
+ "productFilter": "Microsoft Cloud App Security",
+ "severitiesFilter": null,
+ "displayNamesFilter": null,
+ "displayName": "testing displayname",
+ "enabled": true,
+ "description": null,
+ "alertRuleTemplateName": null,
+ "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z"
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule",
+ "name": "myFirstFusionRule",
+ "etag": "\"25005c11-0000-0d00-0000-5d6cc0e20000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Microsoft Sentinel uses Fusion, a correlation engine based on scalable machine learning algorithms, to automatically detect multistage attacks by identifying combinations of anomalous behaviors and suspicious activities that are observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nSince Fusion correlates multiple signals from various products to detect advanced multistage attacks, successful Fusion detections are presented as Fusion incidents on the Microsoft Sentinel Incidents page. This rule covers the following detections:\n- Fusion for emerging threats\n- Fusion for ransomware\n- Scenario-based Fusion detections (122 scenarios)\n\nTo enable these detections, we recommend you configure the following data connectors for best results:\n- Out-of-the-box anomaly detections\n- Azure Active Directory Identity Protection\n- Azure Defender\n- Azure Defender for IoT\n- Microsoft 365 Defender\n- Microsoft Cloud App Security \n- Microsoft Defender for Endpoint\n- Microsoft Defender for Identity\n- Microsoft Defender for Office 365\n- Palo Alto Networks\n- Scheduled analytics rules, both built-in and those created by your security analysts. Analytics rules must contain kill-chain (tactics) and entity mapping information in order to be used by Fusion.\n\nFor the full description of each detection that is supported by Fusion, go to https://aka.ms/SentinelFusion.",
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "sourceSubTypeDisplayName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Cloud",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "sourceSubTypeDisplayName": "Microsoft Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "sourceSubTypeDisplayName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "sourceSubTypeDisplayName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "sourceSubTypeDisplayName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "sourceSubTypeDisplayName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": false,
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "severity": "High",
+ "enabled": true,
+ "lastModifiedUtc": "2021-10-22T07:12:34.9065092Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetFusionAlertRule.json
new file mode 100644
index 000000000000..272a6a6aa10b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetFusionAlertRule.json
@@ -0,0 +1,310 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "myFirstFusionRule"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule",
+ "name": "myFirstFusionRule",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Fusion",
+ "properties": {
+ "displayName": "Advanced Multi-Stage Attack Detection",
+ "description": "Microsoft Sentinel uses Fusion, a correlation engine based on scalable machine learning algorithms, to automatically detect multistage attacks by identifying combinations of anomalous behaviors and suspicious activities that are observed at various stages of the kill chain. On the basis of these discoveries, Azure Sentinel generates incidents that would otherwise be very difficult to catch. By design, these incidents are low-volume, high-fidelity, and high-severity, which is why this detection is turned ON by default.\n\nSince Fusion correlates multiple signals from various products to detect advanced multistage attacks, successful Fusion detections are presented as Fusion incidents on the Microsoft Sentinel Incidents page. This rule covers the following detections:\n- Fusion for emerging threats\n- Fusion for ransomware\n- Scenario-based Fusion detections (122 scenarios)\n\nTo enable these detections, we recommend you configure the following data connectors for best results:\n- Out-of-the-box anomaly detections\n- Azure Active Directory Identity Protection\n- Azure Defender\n- Azure Defender for IoT\n- Microsoft 365 Defender\n- Microsoft Cloud App Security \n- Microsoft Defender for Endpoint\n- Microsoft Defender for Identity\n- Microsoft Defender for Office 365\n- Palo Alto Networks\n- Scheduled analytics rules, both built-in and those created by your security analysts. Analytics rules must contain kill-chain (tactics) and entity mapping information in order to be used by Fusion.\n\nFor the full description of each detection that is supported by Fusion, go to https://aka.ms/SentinelFusion.",
+ "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8",
+ "tactics": [
+ "Collection",
+ "CommandAndControl",
+ "CredentialAccess",
+ "DefenseEvasion",
+ "Discovery",
+ "Execution",
+ "Exfiltration",
+ "Impact",
+ "InitialAccess",
+ "LateralMovement",
+ "Persistence",
+ "PrivilegeEscalation"
+ ],
+ "sourceSettings": [
+ {
+ "enabled": true,
+ "sourceName": "Anomalies",
+ "sourceSubTypes": null
+ },
+ {
+ "enabled": true,
+ "sourceName": "Alert providers",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Azure Active Directory Identity Protection",
+ "sourceSubTypeDisplayName": "Azure Active Directory Identity Protection",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Cloud",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Defender for IoT",
+ "sourceSubTypeDisplayName": "Microsoft Defender for IoT",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft 365 Defender",
+ "sourceSubTypeDisplayName": "Microsoft 365 Defender",
+ "enabled": true,
+ "severityFilter": [
+ "High",
+ "Medium",
+ "Low",
+ "Informational"
+ ],
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Cloud App Security",
+ "sourceSubTypeDisplayName": "Microsoft Cloud App Security",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Endpoint",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Endpoint",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Identity",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Identity",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Microsoft Defender for Office 365",
+ "sourceSubTypeDisplayName": "Microsoft Defender for Office 365",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ },
+ {
+ "sourceSubTypeName": "Azure Sentinel scheduled analytics rules",
+ "sourceSubTypeDisplayName": "Azure Sentinel scheduled analytics rules",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": true,
+ "filters": [
+ {
+ "severity": "High",
+ "enabled": true
+ },
+ {
+ "severity": "Medium",
+ "enabled": true
+ },
+ {
+ "severity": "Low",
+ "enabled": true
+ },
+ {
+ "severity": "Informational",
+ "enabled": true
+ }
+ ]
+ }
+ }
+ ]
+ },
+ {
+ "enabled": true,
+ "sourceName": "Raw logs from other sources",
+ "sourceSubTypes": [
+ {
+ "sourceSubTypeName": "Palo Alto Networks",
+ "sourceSubTypeDisplayName": "Palo Alto Networks",
+ "enabled": true,
+ "severityFilters": {
+ "isSupported": false,
+ "filters": null
+ }
+ }
+ ]
+ }
+ ],
+ "severity": "High",
+ "enabled": true,
+ "lastModifiedUtc": "2021-10-20T13:13:11.5340061Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json
new file mode 100644
index 000000000000..44dcf143b9c1
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "microsoftSecurityIncidentCreationRuleExample"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample",
+ "name": "microsoftSecurityIncidentCreationRuleExample",
+ "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "MicrosoftSecurityIncidentCreation",
+ "properties": {
+ "productFilter": "Microsoft Cloud App Security",
+ "severitiesFilter": null,
+ "displayNamesFilter": null,
+ "displayName": "testing displayname",
+ "enabled": true,
+ "description": null,
+ "alertRuleTemplateName": null,
+ "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetNrtAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetNrtAlertRule.json
new file mode 100644
index 000000000000..b813c9d41f27
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetNrtAlertRule.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "NRT",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "Rule2",
+ "description": "",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden",
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "lastModifiedUtc": "2019-01-01T13:15:30Z",
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host",
+ "Account"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetScheduledAlertRule.json
new file mode 100644
index 000000000000..9f5c43ed97d6
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/alertRules/GetScheduledAlertRule.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/alertRules",
+ "kind": "Scheduled",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "alertRuleTemplateName": null,
+ "displayName": "My scheduled rule",
+ "description": "An example for a scheduled rule",
+ "severity": "High",
+ "enabled": true,
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "query": "Heartbeat",
+ "queryFrequency": "PT1H",
+ "queryPeriod": "P2DT1H30M",
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "lastModifiedUtc": "2021-03-01T13:17:30Z",
+ "eventGroupingSettings": {
+ "aggregationKind": "AlertPerResult"
+ },
+ "customDetails": {
+ "OperatingSystemName": "OSName",
+ "OperatingSystemType": "OSType"
+ },
+ "entityMappings": [
+ {
+ "entityType": "Host",
+ "fieldMappings": [
+ {
+ "identifier": "FullName",
+ "columnName": "Computer"
+ }
+ ]
+ },
+ {
+ "entityType": "IP",
+ "fieldMappings": [
+ {
+ "identifier": "Address",
+ "columnName": "ComputerIP"
+ }
+ ]
+ }
+ ],
+ "alertDetailsOverride": {
+ "alertDisplayNameFormat": "Alert from {{Computer}}",
+ "alertDescriptionFormat": "Suspicious activity was made by {{ComputerIP}}",
+ "alertTacticsColumnName": null,
+ "alertSeverityColumnName": null
+ },
+ "incidentConfiguration": {
+ "createIncident": true,
+ "groupingConfiguration": {
+ "enabled": true,
+ "reopenClosedIncident": false,
+ "lookbackDuration": "PT5H",
+ "matchingMethod": "Selected",
+ "groupByEntities": [
+ "Host"
+ ],
+ "groupByAlertDetails": [
+ "DisplayName"
+ ],
+ "groupByCustomDetails": [
+ "OperatingSystemType",
+ "OperatingSystemName"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json
new file mode 100644
index 000000000000..8cea8cb3b414
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json
@@ -0,0 +1,195 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "automationRuleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "automationRule": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/automationRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/automationRules",
+ "properties": {
+ "displayName": "Suspicious user sign-in events",
+ "order": 1,
+ "triggeringLogic": {
+ "isEnabled": true,
+ "triggersOn": "Incidents",
+ "triggersWhen": "Created",
+ "conditions": [
+ {
+ "conditionType": "PropertyArray",
+ "conditionProperties": {
+ "arrayType": "IncidentLabels",
+ "arrayConditionType": "AnyItem",
+ "itemConditions": [
+ {
+ "conditionType": "Property",
+ "conditionProperties": {
+ "propertyName": "IncidentLabel",
+ "operator": "Equals",
+ "propertyValues": [
+ "myLabel"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "actions": [
+ {
+ "order": 1,
+ "actionType": "AddIncidentTask",
+ "actionConfiguration": {
+ "title": "Reset user passwords",
+ "description": "Reset passwords for compromised users."
+ }
+ }
+ ],
+ "lastModifiedTimeUtc": "2019-01-01T13:00:30Z",
+ "createdTimeUtc": "2019-01-01T13:00:00Z",
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/automationRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/automationRules",
+ "properties": {
+ "displayName": "Suspicious user sign-in events",
+ "order": 1,
+ "triggeringLogic": {
+ "isEnabled": true,
+ "triggersOn": "Incidents",
+ "triggersWhen": "Created",
+ "conditions": [
+ {
+ "conditionType": "PropertyArray",
+ "conditionProperties": {
+ "arrayType": "IncidentLabels",
+ "arrayConditionType": "AnyItem",
+ "itemConditions": [
+ {
+ "conditionType": "Property",
+ "conditionProperties": {
+ "propertyName": "IncidentLabel",
+ "operator": "Equals",
+ "propertyValues": [
+ "myLabel"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "actions": [
+ {
+ "order": 1,
+ "actionType": "AddIncidentTask",
+ "actionConfiguration": {
+ "title": "Reset user passwords",
+ "description": "Reset passwords for compromised users."
+ }
+ }
+ ],
+ "lastModifiedTimeUtc": "2019-01-01T13:00:30Z",
+ "createdTimeUtc": "2019-01-01T13:00:00Z",
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/automationRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/automationRules",
+ "properties": {
+ "displayName": "Suspicious user sign-in events",
+ "order": 1,
+ "triggeringLogic": {
+ "isEnabled": true,
+ "triggersOn": "Incidents",
+ "triggersWhen": "Created",
+ "conditions": [
+ {
+ "conditionType": "PropertyArray",
+ "conditionProperties": {
+ "arrayType": "IncidentLabels",
+ "arrayConditionType": "AnyItem",
+ "itemConditions": [
+ {
+ "conditionType": "Property",
+ "conditionProperties": {
+ "propertyName": "IncidentLabel",
+ "operator": "Equals",
+ "propertyValues": [
+ "myLabel"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "actions": [
+ {
+ "order": 1,
+ "actionType": "AddIncidentTask",
+ "actionConfiguration": {
+ "title": "Reset user passwords",
+ "description": "Reset passwords for compromised users."
+ }
+ }
+ ],
+ "lastModifiedTimeUtc": "2019-01-01T13:00:30Z",
+ "createdTimeUtc": "2019-01-01T13:00:00Z",
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Delete.json
new file mode 100644
index 000000000000..ae94531a14a9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "automationRuleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ },
+ "204": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Get.json
new file mode 100644
index 000000000000..c0a5605f17cc
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_Get.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "automationRuleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/automationRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/automationRules",
+ "properties": {
+ "displayName": "Suspicious user sign-in events",
+ "order": 1,
+ "triggeringLogic": {
+ "isEnabled": true,
+ "triggersOn": "Incidents",
+ "triggersWhen": "Created",
+ "conditions": [
+ {
+ "conditionType": "PropertyArray",
+ "conditionProperties": {
+ "arrayType": "IncidentLabels",
+ "arrayConditionType": "AnyItem",
+ "itemConditions": [
+ {
+ "conditionType": "Property",
+ "conditionProperties": {
+ "propertyName": "IncidentLabel",
+ "operator": "Equals",
+ "propertyValues": [
+ "myLabel"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "actions": [
+ {
+ "order": 1,
+ "actionType": "AddIncidentTask",
+ "actionConfiguration": {
+ "title": "Reset user passwords",
+ "description": "Reset passwords for compromised users."
+ }
+ }
+ ],
+ "lastModifiedTimeUtc": "2019-01-01T13:00:30Z",
+ "createdTimeUtc": "2019-01-01T13:00:00Z",
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_List.json
new file mode 100644
index 000000000000..e74b6b91440d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/automationRules/AutomationRules_List.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/automationRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/automationRules",
+ "properties": {
+ "displayName": "Suspicious user sign-in events",
+ "order": 1,
+ "triggeringLogic": {
+ "isEnabled": true,
+ "triggersOn": "Incidents",
+ "triggersWhen": "Created",
+ "conditions": [
+ {
+ "conditionType": "PropertyArray",
+ "conditionProperties": {
+ "arrayType": "IncidentLabels",
+ "arrayConditionType": "AnyItem",
+ "itemConditions": [
+ {
+ "conditionType": "Property",
+ "conditionProperties": {
+ "propertyName": "IncidentLabel",
+ "operator": "Equals",
+ "propertyValues": [
+ "myLabel"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "actions": [
+ {
+ "order": 1,
+ "actionType": "AddIncidentTask",
+ "actionConfiguration": {
+ "title": "Reset user passwords",
+ "description": "Reset passwords for compromised users."
+ }
+ }
+ ],
+ "lastModifiedTimeUtc": "2019-01-01T13:00:30Z",
+ "createdTimeUtc": "2019-01-01T13:00:00Z",
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetAllBillingStatistics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetAllBillingStatistics.json
new file mode 100644
index 000000000000..59fbcca7ade3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetAllBillingStatistics.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/billingStatistics/sapUsage",
+ "etag": "\"3f6451dd-1b58-4bef-bce7-72eba6b354d7\"",
+ "name": "sapSolutionUsage",
+ "type": "Microsoft.SecurityInsights/billingStatistics",
+ "kind": "SapSolutionUsage",
+ "properties": {
+ "activeSystemIdCount": 5
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetBillingStatistic.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetBillingStatistic.json
new file mode 100644
index 000000000000..0c934fc1d934
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/billingStatistics/GetBillingStatistic.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "billingStatisticName": "sapSolutionUsage"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/billingStatistics/sapUsage",
+ "etag": "\"3f6451dd-1b58-4bef-bce7-72eba6b354d7\"",
+ "name": "sapSolutionUsage",
+ "type": "Microsoft.SecurityInsights/billingStatistics",
+ "kind": "SapSolutionUsage",
+ "properties": {
+ "activeSystemIdCount": 5
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/CreateBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/CreateBookmark.json
new file mode 100644
index 000000000000..c6a5b3299723
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/CreateBookmark.json
@@ -0,0 +1,143 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "bookmark": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My bookmark",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70"
+ },
+ "updated": "2021-09-01T13:15:30Z",
+ "created": "2021-09-01T13:15:30Z",
+ "notes": "Found a suspicious activity",
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "query": "SecurityEvent | where TimeGenerated > ago(1d) and TimeGenerated < ago(2d)",
+ "queryResult": "Security Event query result",
+ "tactics": [
+ "Execution"
+ ],
+ "techniques": [
+ "T1609"
+ ],
+ "entityMappings": [
+ {
+ "entityType": "Account",
+ "fieldMappings": [
+ {
+ "identifier": "Fullname",
+ "value": "johndoe@microsoft.com"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/bookmarks",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My bookmark",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updated": "2021-09-01T13:15:30Z",
+ "created": "2021-09-01T13:15:30Z",
+ "notes": "Found a suspicious activity",
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "query": "SecurityEvent | where TimeGenerated > ago(1d) and TimeGenerated < ago(2d)",
+ "queryResult": "Security Event query result",
+ "tactics": [
+ "Execution"
+ ],
+ "techniques": [
+ "T1609"
+ ],
+ "entityMappings": [
+ {
+ "entityType": "Account",
+ "fieldMappings": [
+ {
+ "identifier": "Fullname",
+ "value": "johndoe@microsoft.com"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/bookmarks",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My bookmark",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updated": "2021-09-01T13:15:30Z",
+ "created": "2021-09-01T13:15:30Z",
+ "notes": "Found a suspicious activity",
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "query": "SecurityEvent | where TimeGenerated > ago(1d) and TimeGenerated < ago(2d)",
+ "queryResult": "Security Event query result",
+ "tactics": [
+ "Execution"
+ ],
+ "techniques": [
+ "T1609"
+ ],
+ "entityMappings": [
+ {
+ "entityType": "Account",
+ "fieldMappings": [
+ {
+ "identifier": "Fullname",
+ "value": "johndoe@microsoft.com"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/DeleteBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/DeleteBookmark.json
new file mode 100644
index 000000000000..5046ff391c24
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/DeleteBookmark.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarkById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarkById.json
new file mode 100644
index 000000000000..a7e0a73f4bb9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarkById.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/bookmarks",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My bookmark",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updated": "2021-09-01T13:15:30Z",
+ "created": "2021-09-01T13:15:30Z",
+ "notes": "Found a suspicious activity",
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "query": "SecurityEvent | where TimeGenerated > ago(1d) and TimeGenerated < ago(2d)",
+ "queryResult": "Security Event query result",
+ "incidentInfo": {
+ "incidentId": "DDA55F97-170B-40B9-B8ED-CBFD05481E7D",
+ "severity": "Low",
+ "title": "New case 1",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0018"
+ },
+ "tactics": [
+ "Execution"
+ ],
+ "techniques": [
+ "T1609"
+ ],
+ "entityMappings": [
+ {
+ "entityType": "Account",
+ "fieldMappings": [
+ {
+ "identifier": "Fullname",
+ "value": "johndoe@microsoft.com"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarks.json
new file mode 100644
index 000000000000..3f5065a3e94a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/GetBookmarks.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/bookmarks",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My bookmark",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updated": "2021-09-01T13:15:30Z",
+ "created": "2021-09-01T13:15:30Z",
+ "notes": "Found a suspicious activity",
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "query": "SecurityEvent | where TimeGenerated > ago(1d) and TimeGenerated < ago(2d)",
+ "queryResult": "Security Event query result",
+ "incidentInfo": {
+ "incidentId": "DDA55F97-170B-40B9-B8ED-CBFD05481E7D",
+ "severity": "Low",
+ "title": "New case 1",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0018"
+ },
+ "tactics": [
+ "Execution"
+ ],
+ "techniques": [
+ "T1609"
+ ],
+ "entityMappings": [
+ {
+ "entityType": "Account",
+ "fieldMappings": [
+ {
+ "identifier": "Fullname",
+ "value": "johndoe@microsoft.com"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/expand/PostExpandBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/expand/PostExpandBookmark.json
new file mode 100644
index 000000000000..c517993835ed
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/expand/PostExpandBookmark.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "parameters": {
+ "expansionId": "27f76e63-c41b-480f-bb18-12ad2e011d49",
+ "startTime": "2019-12-25T17:21:00.000Z",
+ "endTime": "2020-01-24T17:21:00.000Z"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": {
+ "entities": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/fe4ddab5-8cea-eca3-c8b8-9e92e830a387",
+ "name": "fe4ddab5-8cea-eca3-c8b8-9e92e830a387",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Account",
+ "properties": {
+ "friendlyName": "administrator",
+ "accountName": "administrator",
+ "ntDomain": "domain"
+ }
+ }
+ ]
+ },
+ "metaData": {
+ "aggregations": [
+ {
+ "entityKind": "Account",
+ "count": 1
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json
new file mode 100644
index 000000000000..a50a5d0fbe3c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "relation": {
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/bookmarks/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceType": "Microsoft.SecurityInsights/incidents"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/bookmarks/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceType": "Microsoft.SecurityInsights/incidents"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json
new file mode 100644
index 000000000000..82caae66b5a3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json
new file mode 100644
index 000000000000..ffb7c84dcfb3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/bookmarks/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceType": "Microsoft.SecurityInsights/incidents"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json
new file mode 100644
index 000000000000..4774edbe06ee
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "bookmarkId": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/bookmarks/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceName": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relatedResourceType": "Microsoft.SecurityInsights/incidents"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgent_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgent_Get.json
new file mode 100644
index 000000000000..a702a55d93a9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgent_Get.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents",
+ "properties": {
+ "configuration": {
+ "agentContainerName": "MyAgentContainer",
+ "sdkPath": "/path/to/nwrfc750P_8-70002755.zip",
+ "sncPath": "/path/to/snc",
+ "keyVaultResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.KeyVault/vaults/myVault",
+ "keyVaultAuthenticationMode": "ManagedIdentity",
+ "secretSource": "AzureKeyVault",
+ "type": "SAP"
+ },
+ "agentSystems": [
+ {
+ "systemResourceName": "3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "systemDisplayName": "MySystem"
+ }
+ ],
+ "displayName": "MyAgent",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_CreateOrUpdate.json
new file mode 100644
index 000000000000..984c36ff95af
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_CreateOrUpdate.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a",
+ "businessApplicationAgentToUpsert": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "configuration": {
+ "agentContainerName": "MyAgentContainer",
+ "sdkPath": "/path/to/nwrfc750P_8-70002755.zip",
+ "sncPath": "/path/to/snc",
+ "keyVaultResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.KeyVault/vaults/myVault",
+ "keyVaultAuthenticationMode": "ManagedIdentity",
+ "secretSource": "AzureKeyVault",
+ "type": "SAP"
+ },
+ "displayName": "MyAgent"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents",
+ "properties": {
+ "configuration": {
+ "agentContainerName": "MyAgentContainer",
+ "sdkPath": "/path/to/nwrfc750P_8-70002755.zip",
+ "sncPath": "/path/to/snc",
+ "keyVaultResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.KeyVault/vaults/myVault",
+ "keyVaultAuthenticationMode": "ManagedIdentity",
+ "secretSource": "AzureKeyVault",
+ "type": "SAP"
+ },
+ "displayName": "MyAgent",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents",
+ "properties": {
+ "configuration": {
+ "agentContainerName": "MyAgentContainer",
+ "sdkPath": "/path/to/nwrfc750P_8-70002755.zip",
+ "sncPath": "/path/to/snc",
+ "keyVaultResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.KeyVault/vaults/myVault",
+ "keyVaultAuthenticationMode": "ManagedIdentity",
+ "secretSource": "AzureKeyVault",
+ "type": "SAP"
+ },
+ "displayName": "MyAgent",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_Delete.json
new file mode 100644
index 000000000000..5f5ef468a232
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_List.json
new file mode 100644
index 000000000000..568e870a2a00
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/BusinessApplicationAgents_List.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents",
+ "properties": {
+ "configuration": {
+ "agentContainerName": "MyAgentContainer",
+ "sdkPath": "/path/to/nwrfc750P_8-70002755.zip",
+ "sncPath": "/path/to/snc",
+ "keyVaultResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.KeyVault/vaults/myVault",
+ "keyVaultAuthenticationMode": "ManagedIdentity",
+ "secretSource": "AzureKeyVault",
+ "type": "SAP"
+ },
+ "agentSystems": [
+ {
+ "systemResourceName": "3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "systemDisplayName": "MySystem"
+ }
+ ],
+ "displayName": "MyAgent",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ListActions.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ListActions.json
new file mode 100644
index 000000000000..188c835f9f7a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ListActions.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "247b377a-7137-4b3c-bf15-df1d3260ef1b",
+ "systemResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "kind": "UnlockUser",
+ "actionId": "e85000a3-de69-41a4-b347-c6b823e6ec79",
+ "status": "Pending",
+ "user": "someuser@someorg.com",
+ "lastModifiedTimeUtc": "2023-07-01T00:00:00Z"
+ },
+ {
+ "kind": "LockUser",
+ "actionId": "56b70fa0-9afd-4916-9ab9-e79de3e24add",
+ "status": "Pending",
+ "user": "someuser1@someorg.com",
+ "lastModifiedTimeUtc": "2024-02-01T00:00:00Z"
+ },
+ {
+ "kind": "LockUser",
+ "actionId": "56b70fa0-9afd-4916-9ab9-e79de3e24add",
+ "status": "Failed",
+ "user": "someuser1@someorg.com",
+ "lastModifiedTimeUtc": "2024-02-01T00:00:00Z",
+ "failureReason": "Some reason for failure"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ReportActionStatus.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ReportActionStatus.json
new file mode 100644
index 000000000000..da8a8894c042
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/ReportActionStatus.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "247b377a-7137-4b3c-bf15-df1d3260ef1b",
+ "systemResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a",
+ "ReportActionStatusPayload": {
+ "actionId": "81f5d153-4c26-4c64-829a-06df62d1ddc5",
+ "actionStatus": "Completed",
+ "failureReason": "Failed to execute the action"
+ }
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/UndoAction.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/UndoAction.json
new file mode 100644
index 000000000000..9ca993275692
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/actions/UndoAction.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "247b377a-7137-4b3c-bf15-df1d3260ef1b",
+ "systemResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a",
+ "UndoActionPayload": {
+ "actionId": "e85000a3-de69-41a4-b347-c6b823e6ec79"
+ }
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_CreateOrUpdate.json
new file mode 100644
index 000000000000..59dd4963188c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_CreateOrUpdate.json
@@ -0,0 +1,153 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "systemResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a",
+ "agentResourceName": "3123432b-0b60-4af3-8720-77f01a25d34a",
+ "systemToUpsert": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "status": "Running",
+ "configuration": {
+ "azureResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace",
+ "connector": {
+ "abapServerHost": "1.1.1.1",
+ "systemNumber": "001",
+ "systemId": "A4H",
+ "client": "001",
+ "authenticationType": "UsernamePassword",
+ "type": "Rfc"
+ },
+ "logs": [
+ {
+ "type": "AbapAuditLog",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ },
+ {
+ "type": "USR01",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ }
+ ],
+ "type": "SAP"
+ },
+ "displayName": "A4H_System"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/systems/3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "name": "3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents/systems",
+ "properties": {
+ "status": "Running",
+ "configuration": {
+ "azureResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace",
+ "connector": {
+ "abapServerHost": "1.1.1.1",
+ "systemNumber": "001",
+ "systemId": "A4H",
+ "client": "001",
+ "authenticationType": "UsernamePassword",
+ "type": "Rfc"
+ },
+ "logs": [
+ {
+ "type": "AbapAuditLog",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ },
+ {
+ "type": "USR01",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ }
+ ],
+ "type": "SAP"
+ },
+ "displayName": "A4H_System",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/systems/3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "name": "3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents/systems",
+ "properties": {
+ "status": "Running",
+ "configuration": {
+ "azureResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace",
+ "connector": {
+ "abapServerHost": "1.1.1.1",
+ "systemNumber": "001",
+ "systemId": "A4H",
+ "client": "001",
+ "authenticationType": "UsernamePassword",
+ "type": "Rfc"
+ },
+ "logs": [
+ {
+ "type": "AbapAuditLog",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ },
+ {
+ "type": "USR01",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ }
+ ],
+ "type": "SAP"
+ },
+ "displayName": "A4H_System",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Delete.json
new file mode 100644
index 000000000000..bd59ae8d74d2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Delete.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "systemResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a",
+ "agentResourceName": "3123432b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Get.json
new file mode 100644
index 000000000000..66734519ef7d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_Get.json
@@ -0,0 +1,61 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "systemResourceName": "3d69632b-0b60-4af3-8720-77f01a25d34a",
+ "agentResourceName": "3123432b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/systems/3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "name": "3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents/systems",
+ "properties": {
+ "status": "Running",
+ "configuration": {
+ "azureResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace",
+ "connector": {
+ "abapServerHost": "1.1.1.1",
+ "systemNumber": "001",
+ "systemId": "A4H",
+ "client": "001",
+ "authenticationType": "UsernamePassword",
+ "type": "Rfc"
+ },
+ "logs": [
+ {
+ "type": "AbapAuditLog",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ },
+ {
+ "type": "USR01",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ }
+ ],
+ "type": "SAP"
+ },
+ "displayName": "A4H_System",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_List.json
new file mode 100644
index 000000000000..7019165b0446
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/businessApplicationAgents/systems/Systems_List.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "agentResourceName": "3123432b-0b60-4af3-8720-77f01a25d34a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/businessApplicationAgents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/systems/3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "name": "3b6bed7b-3f1c-47fc-ab8e-2c57047ed446",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/businessApplicationAgents/systems",
+ "properties": {
+ "status": "Running",
+ "configuration": {
+ "azureResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace",
+ "connector": {
+ "abapServerHost": "1.1.1.1",
+ "systemNumber": "001",
+ "systemId": "A4H",
+ "client": "001",
+ "authenticationType": "UsernamePassword",
+ "type": "Rfc"
+ },
+ "logs": [
+ {
+ "type": "AbapAuditLog",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ },
+ {
+ "type": "USR01",
+ "ingestionType": "Incremental",
+ "status": "Enabled",
+ "scheduleInterval": 60,
+ "bulkSize": 100,
+ "filters": [
+ "filter1",
+ "filter2"
+ ]
+ }
+ ],
+ "type": "SAP"
+ },
+ "displayName": "A4H_System",
+ "lastModifiedTimeUtc": "2024-03-01T13:00:30Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackageById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackageById.json
new file mode 100644
index 000000000000..b52e4e8b6455
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackageById.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "packageId": "str.azure-sentinel-solution-str"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentPackages/str.azure-sentinel-solution-str",
+ "name": "str.azure-sentinel-solution-str",
+ "type": "Microsoft.SecurityInsights/contentpackages",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "contentKind": "Solution",
+ "version": "2.0.0",
+ "displayName": "str"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackages.json
new file mode 100644
index 000000000000..d50a8a430642
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetPackages.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "packageId": "str.azure-sentinel-solution-str"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentPackages/str.azure-sentinel-solution-str",
+ "name": "str.azure-sentinel-solution-str",
+ "type": "Microsoft.SecurityInsights/contentpackages",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "contentKind": "Solution",
+ "contentSchemaVersion": "3.0.0",
+ "version": "2.0.0",
+ "displayName": "str"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackageById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackageById.json
new file mode 100644
index 000000000000..35fa80cddf91
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackageById.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "packageId": "str.azure-sentinel-solution-str"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentProductPackages/str.azure-sentinel-solution-str",
+ "name": "str.azure-sentinel-solution-str",
+ "type": "Microsoft.SecurityInsights/contentproductpackages",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "contentKind": "Solution",
+ "installedVersion": "2.0.0",
+ "version": "2.0.0",
+ "displayName": "str",
+ "source": {
+ "kind": "Solution",
+ "name": "str",
+ "sourceId": "str.azure-sentinel-solution-str"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "dependencies": {
+ "criteria": [
+ {
+ "contentId": "strDataConnector",
+ "kind": "DataConnector",
+ "version": "2.0.0"
+ },
+ {
+ "contentId": "str-Parser",
+ "kind": "Parser",
+ "version": "2.0.0"
+ }
+ ],
+ "operator": "AND"
+ },
+ "providers": [
+ "Microsoft"
+ ],
+ "categories": {
+ "domains": [
+ "Security - Cloud Security"
+ ],
+ "verticals": null
+ },
+ "firstPublishDate": "2022-04-01",
+ "packageContent": "JSON string of the package"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackages.json
new file mode 100644
index 000000000000..d576606d144c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/GetProductPackages.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentProductPackages/str.azure-sentinel-solution-str",
+ "name": "str.azure-sentinel-solution-str",
+ "type": "Microsoft.SecurityInsights/contentproductpackages",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "contentKind": "Solution",
+ "installedVersion": "2.0.0",
+ "version": "2.0.0",
+ "displayName": "str",
+ "source": {
+ "kind": "Solution",
+ "name": "str",
+ "sourceId": "str.azure-sentinel-solution-str"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "dependencies": {
+ "criteria": [
+ {
+ "contentId": "strDataConnector",
+ "kind": "DataConnector",
+ "version": "2.0.0"
+ },
+ {
+ "contentId": "str-Parser",
+ "kind": "Parser",
+ "version": "2.0.0"
+ }
+ ],
+ "operator": "AND"
+ },
+ "providers": [
+ "Microsoft"
+ ],
+ "categories": {
+ "domains": [
+ "Security - Cloud Security"
+ ],
+ "verticals": null
+ },
+ "firstPublishDate": "2022-04-01"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/InstallPackage.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/InstallPackage.json
new file mode 100644
index 000000000000..ab3f9403df12
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/InstallPackage.json
@@ -0,0 +1,151 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "packageId": "str.azure-sentinel-solution-str",
+ "packageInstallationProperties": {
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "contentKind": "Solution",
+ "version": "2.0.0",
+ "displayName": "str"
+ },
+ "tags": {
+ "tag1": "str"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentPackages/str.azure-sentinel-solution-str",
+ "name": "str.azure-sentinel-solution-str",
+ "type": "Microsoft.SecurityInsights/contentpackages",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentKind": "Solution",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "installedVersion": "2.0.0",
+ "version": "2.0.0",
+ "displayName": "str",
+ "source": {
+ "kind": "Solution",
+ "name": "str",
+ "sourceId": "str.azure-sentinel-solution-str"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "dependencies": {
+ "criteria": [
+ {
+ "contentId": "strDataConnector",
+ "kind": "DataConnector",
+ "version": "2.0.0"
+ },
+ {
+ "contentId": "str-Parser",
+ "kind": "Parser",
+ "version": "2.0.0"
+ }
+ ],
+ "operator": "AND"
+ },
+ "providers": [
+ "Microsoft"
+ ],
+ "categories": {
+ "domains": [
+ "Security - Cloud Security"
+ ],
+ "verticals": null
+ },
+ "firstPublishDate": "2022-04-01"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentPackages/str.azure-sentinel-solution-str",
+ "name": "str.azure-sentinel-solution-str",
+ "type": "Microsoft.SecurityInsights/contentpackages",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "str.azure-sentinel-solution-str",
+ "contentProductId": "str.azure-sentinel-solution-str-sl-igl6jawr4gwmu",
+ "contentKind": "Solution",
+ "installedVersion": "2.0.0",
+ "version": "2.0.0",
+ "displayName": "str",
+ "source": {
+ "kind": "Solution",
+ "name": "str",
+ "sourceId": "str.azure-sentinel-solution-str"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "dependencies": {
+ "criteria": [
+ {
+ "contentId": "strDataConnector",
+ "kind": "DataConnector",
+ "version": "2.0.0"
+ },
+ {
+ "contentId": "str-Parser",
+ "kind": "Parser",
+ "version": "2.0.0"
+ }
+ ],
+ "operator": "AND"
+ },
+ "providers": [
+ "Microsoft"
+ ],
+ "categories": {
+ "domains": [
+ "Security - Cloud Security"
+ ],
+ "verticals": null
+ },
+ "firstPublishDate": "2022-04-01"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/UninstallPackage.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/UninstallPackage.json
new file mode 100644
index 000000000000..d4bbc6b4500d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentPackages/UninstallPackage.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "packageId": "str.azure-sentinel-solution-str"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/DeleteTemplate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/DeleteTemplate.json
new file mode 100644
index 000000000000..577040d15677
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/DeleteTemplate.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "templateId": "8365ebfe-a381-45b7-ad08-7d818070e11f"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplateById.json
new file mode 100644
index 000000000000..0e8baa35b33a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplateById.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "templateId": "8365ebfe-a381-45b7-ad08-7d818070e11f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentProductTemplates/8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "name": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "type": "Microsoft.SecurityInsights/contentproducttemplates",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "contentId",
+ "version": "1.0.0",
+ "packageVersion": "1.0.0",
+ "displayName": "My installed template",
+ "contentKind": "Workbooks",
+ "contentProductId": "packageId-wb-rimnsoeh4nt32",
+ "packageId": "packageId",
+ "packageKind": "Standalone",
+ "packageName": "package name",
+ "source": {
+ "kind": "Standalone",
+ "name": "Source name"
+ },
+ "mainTemplate": {}
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplates.json
new file mode 100644
index 000000000000..29e517f35c05
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetProductTemplates.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentProductTemplates/8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "name": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "type": "Microsoft.SecurityInsights/contentproducttemplates",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "contentId",
+ "contentProductId": "packageId-wb-rimnsoeh4nt32",
+ "version": "1.0.0",
+ "packageVersion": "1.0.0",
+ "displayName": "My installed template",
+ "contentKind": "Workbooks",
+ "packageId": "packageId",
+ "packageKind": "Standalone",
+ "packageName": "package name",
+ "source": {
+ "kind": "Standalone",
+ "name": "Source name"
+ }
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplateById.json
new file mode 100644
index 000000000000..e85bed063dfb
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplateById.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "templateId": "8365ebfe-a381-45b7-ad08-7d818070e11f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentTemplates/8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "name": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "type": "Microsoft.SecurityInsights/contenttemplates",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "contentId",
+ "contentProductId": "packageId-wb-rimnsoeh4nt32",
+ "version": "1.0.0",
+ "packageVersion": "1.0.0",
+ "displayName": "My installed template",
+ "contentKind": "Workbooks",
+ "packageId": "packageId",
+ "source": {
+ "kind": "Standalone",
+ "name": "Source name"
+ },
+ "mainTemplate": {}
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplates.json
new file mode 100644
index 000000000000..c1fbe81149d3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/GetTemplates.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentTemplates/8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "name": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "type": "Microsoft.SecurityInsights/contenttemplates",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "contentId",
+ "contentProductId": "packageId-wb-rimnsoeh4nt32",
+ "packageVersion": "1.0.0",
+ "version": "1.0.0",
+ "displayName": "My installed template",
+ "contentKind": "Workbooks",
+ "packageId": "packageId",
+ "source": {
+ "kind": "Standalone",
+ "name": "Source name"
+ }
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/InstallTemplate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/InstallTemplate.json
new file mode 100644
index 000000000000..dca3153add10
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/contentTemplates/InstallTemplate.json
@@ -0,0 +1,228 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfeab2-9ae0-4464-9919-dccaee2e48f0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "templateId": "str.azure-sentinel-solution-str",
+ "templateInstallationProperties": {
+ "properties": {
+ "contentId": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "contentProductId": "str.azure-sentinel-solution-str-ar-cbfe4fndz66bi",
+ "displayName": "API Protection workbook template",
+ "contentKind": "AnalyticsRule",
+ "version": "1.0.1",
+ "packageVersion": "1.0.0",
+ "packageId": "str.azure-sentinel-solution-str",
+ "packageName": "str",
+ "packageKind": "Solution",
+ "source": {
+ "kind": "Solution",
+ "name": "str",
+ "sourceId": "str.azure-sentinel-solution-str"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "mainTemplate": {
+ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
+ "contentVersion": "1.0.1",
+ "resources": [
+ {
+ "type": "Microsoft.SecurityInsights/AlertRuleTemplates",
+ "name": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "apiVersion": "2022-04-01-preview",
+ "kind": "Scheduled",
+ "location": "[parameters('workspace-location')]",
+ "properties": {
+ "description": "Creates an incident when a large number of Critical/High severity CrowdStrike Falcon sensor detections is triggered by a single user",
+ "displayName": "Critical or High Severity Detections by User",
+ "enabled": false,
+ "query": "...",
+ "queryFrequency": "PT1H",
+ "queryPeriod": "PT1H",
+ "severity": "High",
+ "suppressionDuration": "PT1H",
+ "suppressionEnabled": false,
+ "triggerOperator": "GreaterThan",
+ "triggerThreshold": 0,
+ "status": "Available"
+ }
+ },
+ {
+ "type": "Microsoft.OperationalInsights/workspaces/providers/metadata",
+ "apiVersion": "2022-01-01-preview",
+ "name": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat('AnalyticsRule-', last(split([resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', 8365ebfe-a381-45b7-ad08-7d818070e11f)],'/'))))]",
+ "properties": {
+ "description": "CrowdStrike Falcon Endpoint Protection Analytics Rule 1",
+ "parentId": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', 8365ebfe-a381-45b7-ad08-7d818070e11f)]",
+ "contentId": "4465ebde-b381-45f7-ad08-7d818070a11c",
+ "kind": "AnalyticsRule",
+ "version": "1.0.0",
+ "source": {
+ "kind": "Solution",
+ "name": "str",
+ "sourceId": "str.azure-sentinel-solution-str"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ }
+ }
+ }
+ ]
+ }
+ },
+ "tags": {
+ "tag1": "str"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentPackages/azuresentinel.azure-sentinel-solution-ciscoumbrella",
+ "name": "azuresentinel.azure-sentinel-solution-ciscoumbrella",
+ "type": "Microsoft.SecurityInsights/contenttemplates",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "contentProductId": "str.azure-sentinel-solution-str-ar-cbfe4fndz66bi",
+ "packageKind": "Solution",
+ "packageId": "str.azure-sentinel-solution-str",
+ "packageVersion": "1.0.0",
+ "contentKind": "AnalyticsRule",
+ "version": "1.0.1",
+ "displayName": "API Protection workbook template",
+ "source": {
+ "kind": "Solution",
+ "name": "CiscoUmbrella",
+ "sourceId": "azuresentinel.azure-sentinel-solution-ciscoumbrella"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "dependencies": {
+ "criteria": [
+ {
+ "contentId": "strDataConnector",
+ "kind": "DataConnector",
+ "version": "2.0.0"
+ },
+ {
+ "contentId": "str-Parser",
+ "kind": "Parser",
+ "version": "2.0.0"
+ }
+ ],
+ "operator": "AND"
+ },
+ "providers": [
+ "Microsoft"
+ ],
+ "categories": {
+ "domains": [
+ "Security - Cloud Security"
+ ],
+ "verticals": null
+ },
+ "firstPublishDate": "2022-04-01"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfeab2-9ae0-4464-9919-dccaee2e48f0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/contentPackages/azuresentinel.azure-sentinel-solution-ciscoumbrella",
+ "name": "azuresentinel.azure-sentinel-solution-ciscoumbrella",
+ "type": "Microsoft.SecurityInsights/contenttemplates",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "contentId": "8365ebfe-a381-45b7-ad08-7d818070e11f",
+ "contentProductId": "str.azure-sentinel-solution-str-ar-cbfe4fndz66bi",
+ "packageKind": "Solution",
+ "packageId": "str.azure-sentinel-solution-str",
+ "packageVersion": "1.0.0",
+ "contentKind": "AnalyticsRule",
+ "version": "1.0.1",
+ "displayName": "API Protection workbook template",
+ "source": {
+ "kind": "Solution",
+ "name": "CiscoUmbrella",
+ "sourceId": "azuresentinel.azure-sentinel-solution-ciscoumbrella"
+ },
+ "author": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com"
+ },
+ "support": {
+ "tier": "Microsoft",
+ "name": "Microsoft Corporation",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/"
+ },
+ "dependencies": {
+ "criteria": [
+ {
+ "contentId": "strDataConnector",
+ "kind": "DataConnector",
+ "version": "2.0.0"
+ },
+ {
+ "contentId": "str-Parser",
+ "kind": "Parser",
+ "version": "2.0.0"
+ }
+ ],
+ "operator": "AND"
+ },
+ "providers": [
+ "Microsoft"
+ ],
+ "categories": {
+ "domains": [
+ "Security - Cloud Security"
+ ],
+ "verticals": null
+ },
+ "firstPublishDate": "2022-04-01"
+ },
+ "systemData": {
+ "createdBy": "string",
+ "createdByType": "User",
+ "createdAt": "2020-04-27T21:53:29.0928001Z",
+ "lastModifiedBy": "string",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-04-27T21:53:29.0928001Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json
new file mode 100644
index 000000000000..8d02186dd0c4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json
@@ -0,0 +1,258 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorDefinitionName": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "connectorDefinitionInput": {
+ "kind": "Customizable",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "GitHubAuditLogPolling_CL"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "GitHubAuditLogPolling_CL",
+ "lastDataReceivedQuery": "GitHubAuditLogPolling_CL \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "GitHubAuditLogPolling_CL \n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": false
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": false,
+ "delete": false,
+ "action": false
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "type": "OAuthForm",
+ "parameters": {
+ "clientIdLabel": "Client ID",
+ "clientSecretLabel": "Client Secret",
+ "connectButtonLabel": "Connect",
+ "disconnectButtonLabel": "Disconnect"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectorDefinitions",
+ "kind": "Customizable",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "GitHubAuditLogPolling_CL"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "GitHubAuditLogPolling_CL \n | take 10"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "GitHubAuditLogPolling_CL",
+ "lastDataReceivedQuery": "GitHubAuditLogPolling_CL \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "GitHubAuditLogPolling_CL \n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": false
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": false,
+ "delete": false,
+ "action": false
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "type": "OAuthForm",
+ "parameters": {
+ "clientIdLabel": "Client ID",
+ "clientSecretLabel": "Client Secret",
+ "connectButtonLabel": "Connect",
+ "disconnectButtonLabel": "Disconnect"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectorDefinitions",
+ "kind": "Customizable",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "GitHubAuditLogPolling_CL"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "GitHubAuditLogPolling_CL \n | take 10"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "GitHubAuditLogPolling_CL",
+ "lastDataReceivedQuery": "GitHubAuditLogPolling_CL \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "GitHubAuditLogPolling_CL \n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": false
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": false,
+ "delete": false,
+ "action": false
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "type": "OAuthForm",
+ "parameters": {
+ "clientIdLabel": "Client ID",
+ "clientSecretLabel": "Client Secret",
+ "connectButtonLabel": "Connect",
+ "disconnectButtonLabel": "Disconnect"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json
new file mode 100644
index 000000000000..fb676f1f3c6d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorDefinitionName": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectorDefinitionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectorDefinitionById.json
new file mode 100644
index 000000000000..61311d36f912
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectorDefinitionById.json
@@ -0,0 +1,95 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorDefinitionName": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "type": "Microsoft.SecurityInsights/dataConnectorDefinitions",
+ "kind": "Customizable",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "GitHubAuditLogPolling_CL"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "GitHubAuditLogPolling_CL",
+ "lastDataReceivedQuery": "GitHubAuditLogPolling_CL \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "GitHubAuditLogPolling_CL \n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": false
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": false,
+ "delete": false,
+ "action": false
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "type": "OAuthForm",
+ "parameters": {
+ "clientIdLabel": "Client ID",
+ "clientSecretLabel": "Client Secret",
+ "connectButtonLabel": "Connect",
+ "disconnectButtonLabel": "Disconnect"
+ }
+ }
+ ]
+ }
+ ]
+ },
+ "connectionsConfig": {
+ "templateSpecName": "templateNameMock",
+ "templateSpecVersion": "1.0.0"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json
new file mode 100644
index 000000000000..6f7203b7b128
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectorDefinitions/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "type": "Microsoft.SecurityInsights/dataConnectorDefinitions",
+ "kind": "Customizable",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "GitHubAuditLogPolling_CL"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "GitHubAuditLogPolling_CL",
+ "lastDataReceivedQuery": "GitHubAuditLogPolling_CL \n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "GitHubAuditLogPolling_CL \n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": false
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": false,
+ "delete": false,
+ "action": false
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "type": "OAuthForm",
+ "parameters": {
+ "clientIdLabel": "Client ID",
+ "clientSecretLabel": "Client Secret",
+ "connectButtonLabel": "Connect",
+ "disconnectButtonLabel": "Disconnect"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json
new file mode 100644
index 000000000000..2709fe5fae80
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "AzureActiveDirectory",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json
new file mode 100644
index 000000000000..2709fe5fae80
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "AzureActiveDirectory",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json
new file mode 100644
index 000000000000..2709fe5fae80
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "AzureActiveDirectory",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json
new file mode 100644
index 000000000000..a74811097fb2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "AzureSecurityCenter",
+ "properties": {
+ "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json
new file mode 100644
index 000000000000..7abbdfc736f7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "Dynamics365",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsIoT.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsIoT.json
new file mode 100644
index 000000000000..d4c82ad98594
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsIoT.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "IOT",
+ "properties": {
+ "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json
new file mode 100644
index 000000000000..494762f3a4f5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "MicrosoftCloudAppSecurity",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json
new file mode 100644
index 000000000000..494762f3a4f5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "MicrosoftCloudAppSecurity",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json
new file mode 100644
index 000000000000..c185fa73615b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "MicrosoftPurviewInformationProtection",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json
new file mode 100644
index 000000000000..fc50b8c68b6c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "MicrosoftThreatIntelligence",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json
new file mode 100644
index 000000000000..b3c4a05a6274
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "MicrosoftThreatProtection",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json
new file mode 100644
index 000000000000..c68d0a35c8d9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "Office365Project",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json
new file mode 100644
index 000000000000..f2a7004ff563
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "OfficeATP",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json
new file mode 100644
index 000000000000..58e96d0a078a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "OfficeIRM",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json
new file mode 100644
index 000000000000..b8a7d5f9c0b5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "OfficePowerBI",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsPurviewAudit.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsPurviewAudit.json
new file mode 100644
index 000000000000..c49b3b97461f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsPurviewAudit.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "PurviewAudit",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json
new file mode 100644
index 000000000000..fb0745e35a31
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "ThreatIntelligence",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json
new file mode 100644
index 000000000000..9ba0a9eaad2c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "DataConnectorsCheckRequirements": {
+ "kind": "ThreatIntelligenceTaxii",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "authorizationState": "Valid",
+ "licenseState": "Valid"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPolling.json
new file mode 100644
index 000000000000..933e837d5210
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPolling.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "connectBody": {
+ "kind": "APIKey",
+ "apiKey": "123456789",
+ "requestConfigUserInputValues": [
+ {
+ "displayText": "Organization Name",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": "somePlaceHolderValue",
+ "requestObjectKey": "apiEndpoint"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json
new file mode 100644
index 000000000000..30f76ccf9f2c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "connectBody": {
+ "kind": "APIKey",
+ "apiKey": "123456789",
+ "dataCollectionEndpoint": "https://test.eastus.ingest.monitor.azure.com",
+ "dataCollectionRuleImmutableId": "dcr-34adsj9o7d6f9de204478b9cgb43b631",
+ "outputStream": "Custom-MyTableRawData",
+ "requestConfigUserInputValues": [
+ {
+ "displayText": "Organization Name",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": "somePlaceHolderValue",
+ "requestObjectKey": "apiEndpoint"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateAPIPolling.json
new file mode 100644
index 000000000000..0204ee74d696
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateAPIPolling.json
@@ -0,0 +1,368 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "dataConnector": {
+ "kind": "APIPolling",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueriesTableName": "GitHubAuditLogPolling_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "{{graphQueriesTableName}}\n | take 10 "
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "SentinelKindsV2",
+ "value": []
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "parameters": {
+ "enable": "true",
+ "userRequestPlaceHoldersInput": [
+ {
+ "displayText": "Organization Name",
+ "requestObjectKey": "apiEndpoint",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": ""
+ }
+ ]
+ },
+ "type": "APIKey"
+ }
+ ]
+ }
+ ]
+ },
+ "pollingConfig": {
+ "auth": {
+ "authType": "APIKey",
+ "apiKeyIdentifier": "token",
+ "apiKeyName": "Authorization"
+ },
+ "request": {
+ "apiEndpoint": "https://api.github.com/organizations/{{placeHolder1}}/audit-log",
+ "rateLimitQps": 50,
+ "queryWindowInMin": 15,
+ "httpMethod": "Get",
+ "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
+ "retryCount": 2,
+ "timeoutInSeconds": 60,
+ "headers": {
+ "Accept": "application/json",
+ "User-Agent": "Scuba"
+ },
+ "queryParameters": {
+ "phrase": "created:{_QueryWindowStartTime}..{_QueryWindowEndTime}"
+ }
+ },
+ "paging": {
+ "pagingType": "LinkHeader",
+ "pageSizeParaName": "per_page"
+ },
+ "response": {
+ "eventsJsonPaths": [
+ "$"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "APIPolling",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueriesTableName": "GitHubAuditLogPolling_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "{{graphQueriesTableName}}\n | take 10 "
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "SentinelKindsV2",
+ "value": []
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "parameters": {
+ "enable": "true",
+ "userRequestPlaceHoldersInput": [
+ {
+ "displayText": "Organization Name",
+ "requestObjectKey": "apiEndpoint",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": ""
+ }
+ ]
+ },
+ "type": "APIKey"
+ }
+ ]
+ }
+ ]
+ },
+ "pollingConfig": {
+ "auth": {
+ "authType": "APIKey",
+ "apiKeyIdentifier": "token",
+ "apiKeyName": "Authorization"
+ },
+ "request": {
+ "apiEndpoint": "https://api.github.com/organizations/{{placeHolder1}}/audit-log",
+ "rateLimitQps": 50,
+ "queryWindowInMin": 15,
+ "httpMethod": "Get",
+ "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
+ "retryCount": 2,
+ "timeoutInSeconds": 60,
+ "headers": {
+ "Accept": "application/json",
+ "User-Agent": "Scuba"
+ },
+ "queryParameters": {
+ "phrase": "created:{_QueryWindowStartTime}..{_QueryWindowEndTime}"
+ }
+ },
+ "paging": {
+ "pagingType": "LinkHeader",
+ "pageSizeParaName": "per_page"
+ },
+ "response": {
+ "eventsJsonPaths": [
+ "$"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "APIPolling",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueriesTableName": "GitHubAuditLogPolling_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "{{graphQueriesTableName}}\n | take 10 "
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "SentinelKindsV2",
+ "value": []
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "parameters": {
+ "enable": "true",
+ "userRequestPlaceHoldersInput": [
+ {
+ "displayText": "Organization Name",
+ "requestObjectKey": "apiEndpoint",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": ""
+ }
+ ]
+ },
+ "type": "APIKey"
+ }
+ ]
+ }
+ ]
+ },
+ "pollingConfig": {
+ "auth": {
+ "authType": "APIKey",
+ "apiKeyIdentifier": "token",
+ "apiKeyName": "Authorization"
+ },
+ "request": {
+ "apiEndpoint": "https://api.github.com/organizations/{{placeHolder1}}/audit-log",
+ "rateLimitQps": 50,
+ "queryWindowInMin": 15,
+ "httpMethod": "Get",
+ "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
+ "retryCount": 2,
+ "timeoutInSeconds": 60,
+ "headers": {
+ "Accept": "application/json",
+ "User-Agent": "Scuba"
+ },
+ "queryParameters": {
+ "phrase": "created:{_QueryWindowStartTime}..{_QueryWindowEndTime}"
+ }
+ },
+ "paging": {
+ "pagingType": "LinkHeader",
+ "pageSizeParaName": "per_page"
+ },
+ "response": {
+ "eventsJsonPaths": [
+ "$"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json
new file mode 100644
index 000000000000..e5bd301307a1
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c2541efb-c9a6-47fe-9501-87d1017d1512",
+ "dataConnector": {
+ "kind": "Dynamics365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "dynamics365CdsActivities": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "c2541efb-c9a6-47fe-9501-87d1017d1512",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Dynamics365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "dynamics365CdsActivities": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "c2541efb-c9a6-47fe-9501-87d1017d1512",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Dynamics365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "dynamics365CdsActivities": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGenericUI.json
new file mode 100644
index 000000000000..9b2ae1b8da89
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGenericUI.json
@@ -0,0 +1,437 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "dataConnector": {
+ "kind": "GenericUI",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "Qualys Vulnerability Management (CCP DEMO)",
+ "publisher": "Qualys",
+ "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ",
+ "graphQueriesTableName": "QualysHostDetection_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total data received",
+ "legend": "{{graphQueriesTableName}}",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "Top 10 Vulerabilities detected",
+ "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions on the workspace are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ },
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys",
+ "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).",
+ "providerDisplayName": "Keys",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "action": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "Microsoft.Web/sites permissions",
+ "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)."
+ },
+ {
+ "name": "Qualys API Key",
+ "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)."
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "",
+ "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details."
+ },
+ {
+ "title": "",
+ "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App."
+ },
+ {
+ "title": "",
+ "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes."
+ },
+ {
+ "title": "",
+ "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.",
+ "instructions": [
+ {
+ "parameters": {
+ "fillWith": [
+ "WorkspaceId"
+ ],
+ "label": "Workspace ID"
+ },
+ "type": "CopyableLabel"
+ },
+ {
+ "parameters": {
+ "fillWith": [
+ "PrimaryKey"
+ ],
+ "label": "Primary Key"
+ },
+ "type": "CopyableLabel"
+ }
+ ]
+ },
+ {
+ "title": "Option 1 - Azure Resource Manager (ARM) Template",
+ "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy."
+ },
+ {
+ "title": "Option 2 - Manual Deployment of Azure Functions",
+ "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions."
+ },
+ {
+ "title": "",
+ "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**."
+ },
+ {
+ "title": "",
+ "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "GenericUI",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "Qualys Vulnerability Management (CCP DEMO)",
+ "publisher": "Qualys",
+ "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ",
+ "graphQueriesTableName": "QualysHostDetection_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total data received",
+ "legend": "{{graphQueriesTableName}}",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "Top 10 Vulerabilities detected",
+ "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions on the workspace are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ },
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys",
+ "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).",
+ "providerDisplayName": "Keys",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "action": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "Microsoft.Web/sites permissions",
+ "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)."
+ },
+ {
+ "name": "Qualys API Key",
+ "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)."
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "",
+ "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details."
+ },
+ {
+ "title": "",
+ "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App."
+ },
+ {
+ "title": "",
+ "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes."
+ },
+ {
+ "title": "",
+ "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.",
+ "instructions": [
+ {
+ "parameters": {
+ "fillWith": [
+ "WorkspaceId"
+ ],
+ "label": "Workspace ID"
+ },
+ "type": "CopyableLabel"
+ },
+ {
+ "parameters": {
+ "fillWith": [
+ "PrimaryKey"
+ ],
+ "label": "Primary Key"
+ },
+ "type": "CopyableLabel"
+ }
+ ]
+ },
+ {
+ "title": "Option 1 - Azure Resource Manager (ARM) Template",
+ "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy."
+ },
+ {
+ "title": "Option 2 - Manual Deployment of Azure Functions",
+ "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions."
+ },
+ {
+ "title": "",
+ "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**."
+ },
+ {
+ "title": "",
+ "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "GenericUI",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "Qualys Vulnerability Management (CCP DEMO)",
+ "publisher": "Qualys",
+ "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ",
+ "graphQueriesTableName": "QualysHostDetection_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total data received",
+ "legend": "{{graphQueriesTableName}}",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "Top 10 Vulerabilities detected",
+ "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions on the workspace are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ },
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys",
+ "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).",
+ "providerDisplayName": "Keys",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "action": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "Microsoft.Web/sites permissions",
+ "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)."
+ },
+ {
+ "name": "Qualys API Key",
+ "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)."
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "",
+ "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details."
+ },
+ {
+ "title": "",
+ "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App."
+ },
+ {
+ "title": "",
+ "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes."
+ },
+ {
+ "title": "",
+ "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.",
+ "instructions": [
+ {
+ "parameters": {
+ "fillWith": [
+ "WorkspaceId"
+ ],
+ "label": "Workspace ID"
+ },
+ "type": "CopyableLabel"
+ },
+ {
+ "parameters": {
+ "fillWith": [
+ "PrimaryKey"
+ ],
+ "label": "Primary Key"
+ },
+ "type": "CopyableLabel"
+ }
+ ]
+ },
+ {
+ "title": "Option 1 - Azure Resource Manager (ARM) Template",
+ "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy."
+ },
+ {
+ "title": "Option 2 - Manual Deployment of Azure Functions",
+ "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions."
+ },
+ {
+ "title": "",
+ "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**."
+ },
+ {
+ "title": "",
+ "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json
new file mode 100644
index 000000000000..58bf4ba66e45
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "GCP_fce27b90-d6f5-4d30-991a-af509a2b50a1",
+ "dataConnector": {
+ "kind": "GCP",
+ "properties": {
+ "connectorDefinitionName": "GcpConnector",
+ "auth": {
+ "serviceAccountEmail": "sentinel-service-account@project-id.iam.gserviceaccount.com",
+ "projectNumber": "123456789012",
+ "workloadIdentityProviderId": "sentinel-identity-provider",
+ "type": "GCP"
+ },
+ "request": {
+ "projectId": "project-id",
+ "subscriptionNames": [
+ "sentinel-subscription"
+ ]
+ },
+ "dcrConfig": {
+ "dataCollectionEndpoint": "https://microsoft-sentinel-datacollectionendpoint-123m.westeurope-1.ingest.monitor.azure.com",
+ "dataCollectionRuleImmutableId": "dcr-de21b053bd5a44beb99a256c9db85023",
+ "streamName": "SENTINEL_GCP_AUDIT_LOGS"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/GCP_afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "name": "GCP_fce27b90-d6f5-4d30-991a-af509a2b50a1",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "GCP",
+ "properties": {
+ "connectorDefinitionName": "GcpConnector",
+ "auth": {
+ "serviceAccountEmail": "sentinel-service-account@project-id.iam.gserviceaccount.com",
+ "projectNumber": "123456789012",
+ "workloadIdentityProviderId": "sentinel-identity-provider",
+ "type": "GCP"
+ },
+ "request": {
+ "projectId": "project-id",
+ "subscriptionNames": [
+ "sentinel-subscription"
+ ]
+ },
+ "dcrConfig": {
+ "dataCollectionEndpoint": "https://microsoft-sentinel-datacollectionendpoint-123m.westeurope-1.ingest.monitor.azure.com",
+ "dataCollectionRuleImmutableId": "dcr-de21b053bd5a44beb99a256c9db85023",
+ "streamName": "SENTINEL_GCP_AUDIT_LOGS"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/GCP_afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "name": "GCP_fce27b90-d6f5-4d30-991a-af509a2b50a1",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "GCP",
+ "properties": {
+ "connectorDefinitionName": "GcpConnector",
+ "auth": {
+ "serviceAccountEmail": "sentinel-service-account@project-id.iam.gserviceaccount.com",
+ "projectNumber": "123456789012",
+ "workloadIdentityProviderId": "sentinel-identity-provider",
+ "type": "GCP"
+ },
+ "request": {
+ "projectId": "project-id",
+ "subscriptionNames": [
+ "sentinel-subscription"
+ ]
+ },
+ "dcrConfig": {
+ "dataCollectionEndpoint": "https://microsoft-sentinel-datacollectionendpoint-123m.westeurope-1.ingest.monitor.azure.com",
+ "dataCollectionRuleImmutableId": "dcr-de21b053bd5a44beb99a256c9db85023",
+ "streamName": "SENTINEL_GCP_AUDIT_LOGS"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json
new file mode 100644
index 000000000000..799ee1728153
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "MicrosoftPurviewInformationProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftPurviewInformationProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftPurviewInformationProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json
new file mode 100644
index 000000000000..48f6af9b0035
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "dataConnector": {
+ "kind": "MicrosoftThreatIntelligence",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "dataTypes": {
+ "microsoftEmergingThreatFeed": {
+ "state": "Enabled",
+ "lookbackPeriod": "1970-01-01T00:00:00.000Z"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0",
+ "kind": "MicrosoftThreatIntelligence",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "dataTypes": {
+ "microsoftEmergingThreatFeed": {
+ "state": "Enabled",
+ "lookbackPeriod": "01/01/1970 00:00:00"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0",
+ "kind": "MicrosoftThreatIntelligence",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "dataTypes": {
+ "microsoftEmergingThreatFeed": {
+ "state": "Enabled",
+ "lookbackPeriod": "01/01/1970 00:00:00"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json
new file mode 100644
index 000000000000..433f5bf16bc6
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "MicrosoftThreatProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "178265c4-3136-4ff6-8ed1-b5b62b4cb5f5",
+ "dataTypes": {
+ "incidents": {
+ "state": "Disabled"
+ },
+ "alerts": {
+ "state": "Enabled"
+ }
+ },
+ "filteredProviders": {
+ "alerts": [
+ "microsoftDefenderForCloudApps"
+ ]
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/595c870a-5b74-4a23-984c-9ddba29cefe3",
+ "name": "595c870a-5b74-4a23-984c-9ddba29cefe3",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftThreatProtection",
+ "etag": "2b61bd0c-62b4-4968-8f9a-71b91be61127",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "incidents": {
+ "state": "Disabled55"
+ },
+ "alerts": {
+ "state": "Enabled"
+ }
+ },
+ "filteredProviders": {
+ "alerts": [
+ "microsoftDefenderForCloudApps"
+ ]
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/595c870a-5b74-4a23-984c-9ddba29cefe3",
+ "name": "595c870a-5b74-4a23-984c-9ddba29cefe3",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftThreatProtection",
+ "etag": "2b61bd0c-62b4-4968-8f9a-71b91be61127",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "incidents": {
+ "state": "Disabled"
+ },
+ "alerts": {
+ "state": "Enabled"
+ }
+ },
+ "filteredProviders": {
+ "alerts": [
+ "microsoftDefenderForCloudApps"
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json
new file mode 100644
index 000000000000..bb814a0a5502
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "Office365Project",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365Project",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365Project",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json
new file mode 100644
index 000000000000..d7c46565c7a1
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "Office365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "sharePoint": {
+ "state": "Enabled"
+ },
+ "exchange": {
+ "state": "Enabled"
+ },
+ "teams": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "sharePoint": {
+ "state": "Enabled"
+ },
+ "exchange": {
+ "state": "Enabled"
+ },
+ "teams": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "sharePoint": {
+ "state": "Enabled"
+ },
+ "exchange": {
+ "state": "Enabled"
+ },
+ "teams": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json
new file mode 100644
index 000000000000..a47117470f71
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "OfficePowerBI",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficePowerBI",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficePowerBI",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreatePurviewAuditDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreatePurviewAuditDataConnector.json
new file mode 100644
index 000000000000..f6b757b37909
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreatePurviewAuditDataConnector.json
@@ -0,0 +1,70 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "PurviewAudit",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "sourceType": "MicrosoftFlow",
+ "connectorDefinitionName": "PowerAutomate",
+ "dcrConfig": {
+ "dataCollectionEndpoint": "https://microsoft-sentinel-datacollectionendpoint-123m.westeurope-1.ingest.monitor.azure.com",
+ "dataCollectionRuleImmutableId": "dcr-de21b053bd5a44beb99a256c9db85023",
+ "streamName": "OFFICEPOWERAUTOMATE_RESTAPI"
+ },
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "PurviewAudit",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ },
+ "sourceType": "MicrosoftFlow",
+ "connectorDefinitionName": "PowerAutomate",
+ "dcrConfig": null,
+ "tenantId": "MicrosoftFlow"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "PurviewAudit",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ },
+ "sourceType": "MicrosoftFlow",
+ "connectorDefinitionName": "PowerAutomate",
+ "dcrConfig": null,
+ "tenantId": "MicrosoftFlow"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json
new file mode 100644
index 000000000000..f15c7f5e3a0a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "kind": "ThreatIntelligence",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "tipLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "dataTypes": {
+ "indicators": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "ThreatIntelligence",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "tipLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "dataTypes": {
+ "indicators": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "ThreatIntelligence",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "tipLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "dataTypes": {
+ "indicators": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json
new file mode 100644
index 000000000000..931517c467d3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json
@@ -0,0 +1,81 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "dataConnector": {
+ "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0",
+ "kind": "ThreatIntelligenceTaxii",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "taxiiServer": "https://limo.anomali.com/api/v1/taxii2/feeds",
+ "collectionId": "135",
+ "workspaceId": "dd124572-4962-4495-9bd2-9dade12314b4",
+ "friendlyName": "testTaxii",
+ "userName": "--",
+ "password": "--",
+ "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "pollingFrequency": "OnceADay",
+ "dataTypes": {
+ "taxiiClient": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0",
+ "kind": "ThreatIntelligenceTaxii",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "taxiiServer": "https://limo.anomali.com/api/v1/taxii2/feeds",
+ "collectionId": "135",
+ "workspaceId": "28e5f051-34cb-4208-9037-693e5342a871",
+ "friendlyName": "testTaxii",
+ "userName": null,
+ "password": null,
+ "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "pollingFrequency": "OnceADay",
+ "dataTypes": {
+ "taxiiClient": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "d12423f6-a60b-4ca5-88c0-feb1a182d0f0",
+ "kind": "ThreatIntelligenceTaxii",
+ "properties": {
+ "tenantId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "taxiiServer": "https://limo.anomali.com/api/v1/taxii2/feeds",
+ "collectionId": "135",
+ "workspaceId": "28e5f051-34cb-4208-9037-693e5342a871",
+ "friendlyName": "testTaxii",
+ "userName": null,
+ "password": null,
+ "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "pollingFrequency": "OnceADay",
+ "dataTypes": {
+ "taxiiClient": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteAPIPolling.json
new file mode 100644
index 000000000000..7156676b2e54
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteAPIPolling.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGenericUI.json
new file mode 100644
index 000000000000..7156676b2e54
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGenericUI.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json
new file mode 100644
index 000000000000..747927bd7a02
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "GCP_fce27b90-d6f5-4d30-991a-af509a2b50a1"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json
new file mode 100644
index 000000000000..5dc9486c304d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json
new file mode 100644
index 000000000000..94bedc3c1c10
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json
new file mode 100644
index 000000000000..5dc9486c304d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json
new file mode 100644
index 000000000000..5dc9486c304d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json
new file mode 100644
index 000000000000..5dc9486c304d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeletePurviewAuditDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeletePurviewAuditDataConnector.json
new file mode 100644
index 000000000000..5dc9486c304d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DeletePurviewAuditDataConnector.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DisconnectAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DisconnectAPIPolling.json
new file mode 100644
index 000000000000..faaf82f9a43b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/DisconnectAPIPolling.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "disconnectBody": {}
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAPIPolling.json
new file mode 100644
index 000000000000..c1bb29ca523a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAPIPolling.json
@@ -0,0 +1,133 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "APIPolling",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "customImage": "The image connector content",
+ "graphQueriesTableName": "GitHubAuditLogPolling_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "{{graphQueriesTableName}}\n | take 10 "
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "SentinelKindsV2",
+ "value": []
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "parameters": {
+ "enable": "true",
+ "userRequestPlaceHoldersInput": [
+ {
+ "displayText": "Organization Name",
+ "requestObjectKey": "apiEndpoint",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": ""
+ }
+ ]
+ },
+ "type": "APIKey"
+ }
+ ]
+ }
+ ]
+ },
+ "pollingConfig": {
+ "auth": {
+ "authType": "APIKey",
+ "apiKeyIdentifier": "token",
+ "apiKeyName": "Authorization"
+ },
+ "request": {
+ "apiEndpoint": "https://api.github.com/organizations/{{placeHolder1}}/audit-log",
+ "rateLimitQps": 50,
+ "queryWindowInMin": 15,
+ "httpMethod": "Get",
+ "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
+ "retryCount": 2,
+ "timeoutInSeconds": 60,
+ "headers": {
+ "Accept": "application/json",
+ "User-Agent": "Scuba"
+ },
+ "queryParameters": {
+ "phrase": "created:{_QueryWindowStartTime}..{_QueryWindowEndTime}"
+ }
+ },
+ "paging": {
+ "pagingType": "LinkHeader",
+ "pageSizeParaName": "per_page"
+ },
+ "response": {
+ "eventsJsonPaths": [
+ "$"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json
new file mode 100644
index 000000000000..a697dc87b228
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "AmazonWebServicesCloudTrail",
+ "properties": {
+ "awsRoleArn": "myAwsRoleArn",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json
new file mode 100644
index 000000000000..d4ec4dd3d2e5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "afef3743-0c88-469c-84ff-ca2e87dc1e48"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "name": "afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "AmazonWebServicesS3",
+ "properties": {
+ "destinationTable": "AWSVPCFlow",
+ "roleArn": "arn:aws:iam::072643944673:role/RoleName",
+ "sqsUrls": [
+ "https://sqs.us-west-1.amazonaws.com/111111111111/sqsTestName"
+ ],
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json
new file mode 100644
index 000000000000..b76aa16bf8fd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d",
+ "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "AzureActiveDirectory",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json
new file mode 100644
index 000000000000..7de0652482b7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "07e42cb3-e658-4e90-801c-efa0f29d3d44"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/07e42cb3-e658-4e90-801c-efa0f29d3d44",
+ "name": "07e42cb3-e658-4e90-801c-efa0f29d3d44",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "AzureAdvancedThreatProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json
new file mode 100644
index 000000000000..a796d2422e52
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "AzureSecurityCenter",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDataConnectors.json
new file mode 100644
index 000000000000..71f4708b3cac
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDataConnectors.json
@@ -0,0 +1,526 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "AzureSecurityCenter",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "ThreatIntelligence",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "indicators": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652",
+ "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "ThreatIntelligenceTaxii",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "workspaceId": "8b014a77-4695-4ef4-96bb-6623afb121a2",
+ "friendlyName": "My TI Taxii Connector",
+ "taxiiServer": "https://mytaxiiserver.com/taxiing/v2/api",
+ "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e",
+ "userName": "",
+ "password": "",
+ "pollingFrequency": "OnceAMinute",
+ "dataTypes": {
+ "taxiiClient": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d",
+ "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "AzureActiveDirectory",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "sharePoint": {
+ "state": "Enabled"
+ },
+ "exchange": {
+ "state": "Enabled"
+ },
+ "teams": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/b96d014d-b5c2-4a01-9aba-a8058f629d42",
+ "name": "b96d014d-b5c2-4a01-9aba-a8058f629d42",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftCloudAppSecurity",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ },
+ "discoveryLogs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/07e42cb3-e658-4e90-801c-efa0f29d3d44",
+ "name": "07e42cb3-e658-4e90-801c-efa0f29d3d44",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "AzureAdvancedThreatProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "AmazonWebServicesCloudTrail",
+ "properties": {
+ "awsRoleArn": "myAwsRoleArn",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "name": "afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "AmazonWebServicesS3",
+ "properties": {
+ "destinationTable": "AWSVPCFlow",
+ "roleArn": "arn:aws:iam::072643944673:role/RoleName",
+ "sqsUrls": [
+ "https://sqs.us-west-1.amazonaws.com/111111111111/sqsTestName"
+ ],
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "name": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftDefenderAdvancedThreatProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficeATP",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365Project",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficePowerBI",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "c2541efb-c9a6-47fe-9501-87d1017d1512",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Dynamics365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "dynamics365CdsActivities": {
+ "state": "Enabled"
+ }
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "PurviewAudit",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ },
+ "sourceType": "MicrosoftFlow",
+ "connectorDefinitionName": "PowerAutomate",
+ "dcrConfig": null,
+ "tenantId": "MicrosoftFlow"
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "GenericUI",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "Qualys Vulnerability Management (CCP DEMO)",
+ "publisher": "Qualys",
+ "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ",
+ "customImage": "The image connector content",
+ "graphQueriesTableName": "QualysHostDetection_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total data received",
+ "legend": "{{graphQueriesTableName}}",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "Top 10 Vulerabilities detected",
+ "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions on the workspace are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ },
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys",
+ "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).",
+ "providerDisplayName": "Keys",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "action": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "Microsoft.Web/sites permissions",
+ "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)."
+ },
+ {
+ "name": "Qualys API Key",
+ "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)."
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "",
+ "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details."
+ },
+ {
+ "title": "",
+ "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App."
+ },
+ {
+ "title": "",
+ "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes."
+ },
+ {
+ "title": "",
+ "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.",
+ "instructions": [
+ {
+ "parameters": {
+ "fillWith": [
+ "WorkspaceId"
+ ],
+ "label": "Workspace ID"
+ },
+ "type": "CopyableLabel"
+ },
+ {
+ "parameters": {
+ "fillWith": [
+ "PrimaryKey"
+ ],
+ "label": "Primary Key"
+ },
+ "type": "CopyableLabel"
+ }
+ ]
+ },
+ {
+ "title": "Option 1 - Azure Resource Manager (ARM) Template",
+ "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy."
+ },
+ {
+ "title": "Option 2 - Manual Deployment of Azure Functions",
+ "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions."
+ },
+ {
+ "title": "",
+ "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**."
+ },
+ {
+ "title": "",
+ "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "APIPolling",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "GitHub Enterprise Audit Log",
+ "publisher": "GitHub",
+ "descriptionMarkdown": "The GitHub audit log connector provides the capability to ingest GitHub logs into Azure Sentinel. By connecting GitHub audit logs into Azure Sentinel, you can view this data in workbooks, use it to create custom alerts, and improve your investigation process.",
+ "graphQueriesTableName": "GitHubAuditLogPolling_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total events received",
+ "legend": "GitHub audit log events",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "All logs",
+ "query": "{{graphQueriesTableName}}\n | take 10 "
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "SentinelKindsV2",
+ "value": []
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "GitHub API personal token Key",
+ "description": "You need access to GitHub personal token, the key should have 'admin:org' scope"
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "Connect GitHub Enterprise Audit Log to Azure Sentinel",
+ "description": "Enable GitHub audit Logs. \n Follow [this](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token) to create or find your personal key",
+ "instructions": [
+ {
+ "parameters": {
+ "enable": "true",
+ "userRequestPlaceHoldersInput": [
+ {
+ "displayText": "Organization Name",
+ "requestObjectKey": "apiEndpoint",
+ "placeHolderName": "{{placeHolder1}}",
+ "placeHolderValue": ""
+ }
+ ]
+ },
+ "type": "APIKey"
+ }
+ ]
+ }
+ ]
+ },
+ "pollingConfig": {
+ "auth": {
+ "authType": "APIKey",
+ "apiKeyIdentifier": "token",
+ "apiKeyName": "Authorization"
+ },
+ "request": {
+ "apiEndpoint": "https://api.github.com/organizations/{{placeHolder1}}/audit-log",
+ "rateLimitQps": 50,
+ "queryWindowInMin": 15,
+ "httpMethod": "Get",
+ "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
+ "retryCount": 2,
+ "timeoutInSeconds": 60,
+ "headers": {
+ "Accept": "application/json",
+ "User-Agent": "Scuba"
+ },
+ "queryParameters": {
+ "phrase": "created:{_QueryWindowStartTime}..{_QueryWindowEndTime}"
+ }
+ },
+ "paging": {
+ "pagingType": "LinkHeader",
+ "pageSizeParaName": "per_page"
+ },
+ "response": {
+ "eventsJsonPaths": [
+ "$"
+ ]
+ }
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json
new file mode 100644
index 000000000000..a6e42ba8a3d7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c2541efb-c9a6-47fe-9501-87d1017d1512"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "c2541efb-c9a6-47fe-9501-87d1017d1512",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Dynamics365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "dynamics365CdsActivities": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGenericUI.json
new file mode 100644
index 000000000000..dc9efd8ae1ad
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGenericUI.json
@@ -0,0 +1,156 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "316ec55e-7138-4d63-ab18-90c8a60fd1c8"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "name": "316ec55e-7138-4d63-ab18-90c8a60fd1c8",
+ "etag": "\"1a00b074-0000-0100-0000-606ef5bd0000\"",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "GenericUI",
+ "properties": {
+ "connectorUiConfig": {
+ "title": "Qualys Vulnerability Management (CCP DEMO)",
+ "publisher": "Qualys",
+ "descriptionMarkdown": "The [Qualys Vulnerability Management (VM)](https://www.qualys.com/apps/vulnerability-management/) data connector provides the capability to ingest vulnerability host detection data into Azure Sentinel through the Qualys API. The connector provides visibility into host detection data from vulerability scans. This connector provides Azure Sentinel the capability to view dashboards, create custom alerts, and improve investigation ",
+ "customImage": "The image connector content",
+ "graphQueriesTableName": "QualysHostDetection_CL",
+ "graphQueries": [
+ {
+ "metricName": "Total data received",
+ "legend": "{{graphQueriesTableName}}",
+ "baseQuery": "{{graphQueriesTableName}}"
+ }
+ ],
+ "sampleQueries": [
+ {
+ "description": "Top 10 Vulerabilities detected",
+ "query": "{{graphQueriesTableName}}\n | mv-expand todynamic(Detections_s)\n | extend Vulnerability = tostring(Detections_s.Results)\n | summarize count() by Vulnerability\n | top 10 by count_"
+ }
+ ],
+ "dataTypes": [
+ {
+ "name": "{{graphQueriesTableName}}",
+ "lastDataReceivedQuery": "{{graphQueriesTableName}}\n | summarize Time = max(TimeGenerated)\n | where isnotempty(Time)"
+ }
+ ],
+ "connectivityCriteria": [
+ {
+ "type": "IsConnectedQuery",
+ "value": [
+ "{{graphQueriesTableName}}\n | summarize LastLogReceived = max(TimeGenerated)\n | project IsConnected = LastLogReceived > ago(30d)"
+ ]
+ }
+ ],
+ "availability": {
+ "status": 1,
+ "isPreview": true
+ },
+ "permissions": {
+ "resourceProvider": [
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces",
+ "permissionsDisplayText": "read and write permissions on the workspace are required.",
+ "providerDisplayName": "Workspace",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "write": true,
+ "read": true,
+ "delete": true
+ }
+ },
+ {
+ "provider": "Microsoft.OperationalInsights/workspaces/sharedKeys",
+ "permissionsDisplayText": "read permissions to shared keys for the workspace are required. [See the documentation to learn more about workspace keys](https://docs.microsoft.com/azure/azure-monitor/platform/agent-windows#obtain-workspace-id-and-key).",
+ "providerDisplayName": "Keys",
+ "scope": "Workspace",
+ "requiredPermissions": {
+ "action": true
+ }
+ }
+ ],
+ "customs": [
+ {
+ "name": "Microsoft.Web/sites permissions",
+ "description": "Read and write permissions to Azure Functions to create a Function App is required. [See the documentation to learn more about Azure Functions](https://docs.microsoft.com/azure/azure-functions/)."
+ },
+ {
+ "name": "Qualys API Key",
+ "description": "A Qualys VM API username and password is required. [See the documentation to learn more about Qualys VM API](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf)."
+ }
+ ]
+ },
+ "instructionSteps": [
+ {
+ "title": "",
+ "description": ">**NOTE:** This connector uses Azure Functions to connect to Qualys VM to pull its logs into Azure Sentinel. This might result in additional data ingestion costs. Check the [Azure Functions pricing page](https://azure.microsoft.com/pricing/details/functions/) for details."
+ },
+ {
+ "title": "",
+ "description": ">**(Optional Step)** Securely store workspace and API authorization key(s) or token(s) in Azure Key Vault. Azure Key Vault provides a secure mechanism to store and retrieve key values. [Follow these instructions](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) to use Azure Key Vault with an Azure Function App."
+ },
+ {
+ "title": "",
+ "description": "**STEP 1 - Configuration steps for the Qualys VM API**\n\n1. Log into the Qualys Vulnerability Management console with an administrator account, select the **Users** tab and the **Users** subtab. \n2. Click on the **New** drop-down menu and select **Users..**\n3. Create a username and password for the API account. \n4. In the **User Roles** tab, ensure the account role is set to **Manager** and access is allowed to **GUI** and **API**\n4. Log out of the administrator account and log into the console with the new API credentials for validation, then log out of the API account. \n5. Log back into the console using an administrator account and modify the API accounts User Roles, removing access to **GUI**. \n6. Save all changes."
+ },
+ {
+ "title": "",
+ "description": "**STEP 2 - Choose ONE from the following two deployment options to deploy the connector and the associated Azure Function**\n\n>**IMPORTANT:** Before deploying the Qualys VM connector, have the Workspace ID and Workspace Primary Key (can be copied from the following), as well as the Qualys VM API Authorization Key(s), readily available.",
+ "instructions": [
+ {
+ "parameters": {
+ "fillWith": [
+ "WorkspaceId"
+ ],
+ "label": "Workspace ID"
+ },
+ "type": "CopyableLabel"
+ },
+ {
+ "parameters": {
+ "fillWith": [
+ "PrimaryKey"
+ ],
+ "label": "Primary Key"
+ },
+ "type": "CopyableLabel"
+ }
+ ]
+ },
+ {
+ "title": "Option 1 - Azure Resource Manager (ARM) Template",
+ "description": "Use this method for automated deployment of the Qualys VM connector using an ARM Tempate.\n\n1. Click the **Deploy to Azure** button below. \n\n\t[](https://aka.ms/sentinelqualysvmazuredeploy)\n2. Select the preferred **Subscription**, **Resource Group** and **Location**. \n3. Enter the **Workspace ID**, **Workspace Key**, **API Username**, **API Password** , update the **URI**, and any additional URI **Filter Parameters** (each filter should be separated by an \"&\" symbol, no spaces.) \n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348) -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format. \n - The default **Time Interval** is set to pull the last five (5) minutes of data. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly (in the function.json file, post deployment) to prevent overlapping data ingestion. \n> - Note: If using Azure Key Vault secrets for any of the values above, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details. \n4. Mark the checkbox labeled **I agree to the terms and conditions stated above**. \n5. Click **Purchase** to deploy."
+ },
+ {
+ "title": "Option 2 - Manual Deployment of Azure Functions",
+ "description": "Use the following step-by-step instructions to deploy the Quayls VM connector manually with Azure Functions."
+ },
+ {
+ "title": "",
+ "description": "**1. Create a Function App**\n\n1. From the Azure Portal, navigate to [Function App](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites/kind/functionapp), and select **+ Add**.\n2. In the **Basics** tab, ensure Runtime stack is set to **Powershell Core**. \n3. In the **Hosting** tab, ensure the **Consumption (Serverless)** plan type is selected.\n4. Make other preferrable configuration changes, if needed, then click **Create**."
+ },
+ {
+ "title": "",
+ "description": "**2. Import Function App Code**\n\n1. In the newly created Function App, select **Functions** on the left pane and click **+ New Function**.\n2. Select **Timer Trigger**.\n3. Enter a unique Function **Name** and leave the default cron schedule of every 5 minutes, then click **Create**.\n5. Click on **Code + Test** on the left pane. \n6. Copy the [Function App Code](https://aka.ms/sentinelqualysvmazurefunctioncode) and paste into the Function App `run.ps1` editor.\n7. Click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**3. Configure the Function App**\n\n1. In the Function App, select the Function App Name and select **Configuration**.\n2. In the **Application settings** tab, select **+ New application setting**.\n3. Add each of the following seven (7) application settings individually, with their respective string values (case-sensitive): \n\t\tapiUsername\n\t\tapiPassword\n\t\tworkspaceID\n\t\tworkspaceKey\n\t\turi\n\t\tfilterParameters\n\t\ttimeInterval\n> - Enter the URI that corresponds to your region. The complete list of API Server URLs can be [found here](https://www.qualys.com/docs/qualys-api-vmpc-user-guide.pdf#G4.735348). The `uri` value must follow the following schema: `https:///api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after=` -- There is no need to add a time suffix to the URI, the Function App will dynamically append the Time Value to the URI in the proper format.\n> - Add any additional filter parameters, for the `filterParameters` variable, that need to be appended to the URI. Each parameter should be seperated by an \"&\" symbol and should not include any spaces.\n> - Set the `timeInterval` (in minutes) to the value of `5` to correspond to the Timer Trigger of every `5` minutes. If the time interval needs to be modified, it is recommended to change the Function App Timer Trigger accordingly to prevent overlapping data ingestion.\n> - Note: If using Azure Key Vault, use the`@Microsoft.KeyVault(SecretUri={Security Identifier})`schema in place of the string values. Refer to [Key Vault references documentation](https://docs.microsoft.com/azure/app-service/app-service-key-vault-references) for further details.\n4. Once all application settings have been entered, click **Save**."
+ },
+ {
+ "title": "",
+ "description": "**4. Configure the host.json**.\n\nDue to the potentially large amount of Qualys host detection data being ingested, it can cause the execution time to surpass the default Function App timeout of five (5) minutes. Increase the default timeout duration to the maximum of ten (10) minutes, under the Consumption Plan, to allow more time for the Function App to execute.\n\n1. In the Function App, select the Function App Name and select the **App Service Editor** blade.\n2. Click **Go** to open the editor, then select the **host.json** file under the **wwwroot** directory.\n3. Add the line `\"functionTimeout\": \"00:10:00\",` above the `managedDependancy` line \n4. Ensure **SAVED** appears on the top right corner of the editor, then exit the editor.\n\n> NOTE: If a longer timeout duration is required, consider upgrading to an [App Service Plan](https://docs.microsoft.com/azure/azure-functions/functions-scale#timeout)"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json
new file mode 100644
index 000000000000..2bfd83cff76c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "GCP_fce27b90-d6f5-4d30-991a-af509a2b50a1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/GCP_afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "name": "GCP_fce27b90-d6f5-4d30-991a-af509a2b50a1",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "GCP",
+ "properties": {
+ "connectorDefinitionName": "GcpConnector",
+ "auth": {
+ "serviceAccountEmail": "sentinel-service-account@project-id.iam.gserviceaccount.com",
+ "projectNumber": "123456789012",
+ "workloadIdentityProviderId": "sentinel-identity-provider",
+ "type": "GCP"
+ },
+ "request": {
+ "projectId": "project-id",
+ "subscriptionNames": [
+ "sentinel-subscription"
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetIoTById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetIoTById.json
new file mode 100644
index 000000000000..e7e7631c301b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetIoTById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "d2e5dc7a-f3a2-429d-954b-939fa8c2932e"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/d2e5dc7a-f3a2-429d-954b-939fa8c2932e",
+ "name": "d2e5dc7a-f3a2-429d-954b-939fa8c2932e",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "IOT",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json
new file mode 100644
index 000000000000..170f30edbb60
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "b96d014d-b5c2-4a01-9aba-a8058f629d42"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/b96d014d-b5c2-4a01-9aba-a8058f629d42",
+ "name": "b96d014d-b5c2-4a01-9aba-a8058f629d42",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftCloudAppSecurity",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ },
+ "discoveryLogs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json
new file mode 100644
index 000000000000..5c35550e7ac2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "name": "06b3ccb8-1384-4bcc-aec7-852f6d57161b",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftDefenderAdvancedThreatProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json
new file mode 100644
index 000000000000..26f0b8d25c2c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "3d3e955e-33eb-401d-89a7-251c81ddd660"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficeIRM",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json
new file mode 100644
index 000000000000..26a65981dcfb
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftPurviewInformationProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json
new file mode 100644
index 000000000000..be80fde4b08b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftThreatIntelligence",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "microsoftEmergingThreatFeed": {
+ "state": "Enabled",
+ "lookbackPeriod": "01/01/1970 00:00:00"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json
new file mode 100644
index 000000000000..648635c193e3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "MicrosoftThreatProtection",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "incidents": {
+ "state": "Enabled"
+ },
+ "alerts": {
+ "state": "Enabled"
+ }
+ },
+ "filteredProviders": {
+ "alerts": [
+ "microsoftDefenderForCloudApps"
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json
new file mode 100644
index 000000000000..dd539123449b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "3d3e955e-33eb-401d-89a7-251c81ddd660"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "name": "3d3e955e-33eb-401d-89a7-251c81ddd660",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficeATP",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "alerts": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json
new file mode 100644
index 000000000000..46d507078056
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365Project",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json
new file mode 100644
index 000000000000..e997705b6036
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "Office365",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "sharePoint": {
+ "state": "Enabled"
+ },
+ "exchange": {
+ "state": "Enabled"
+ },
+ "teams": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json
new file mode 100644
index 000000000000..8fc79f5fa85a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "OfficePowerBI",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetPurviewAuditDataConnectorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetPurviewAuditDataConnectorById.json
new file mode 100644
index 000000000000..43ee3e951e86
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetPurviewAuditDataConnectorById.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "PurviewAudit",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "dataTypes": {
+ "logs": {
+ "state": "Enabled"
+ }
+ },
+ "sourceType": "MicrosoftFlow",
+ "connectorDefinitionName": "PowerAutomate",
+ "dcrConfig": null,
+ "tenantId": "MicrosoftFlow"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetRestApiPollerById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetRestApiPollerById.json
new file mode 100644
index 000000000000..ea8af9fd37ec
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetRestApiPollerById.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "RestApiPoller_fce27b90-d6f5-4d30-991a-af509a2b50a1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/RestApiPoller_afef3743-0c88-469c-84ff-ca2e87dc1e48",
+ "name": "RestApiPoller_fce27b90-d6f5-4d30-991a-af509a2b50a1",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "RestApiPoller",
+ "properties": {
+ "connectorDefinitionName": "RestApiPollerDefinition",
+ "auth": {
+ "type": "APIKey",
+ "apiKey": "6bec40cf957de430a6f1f2baa056b99a4fac9ea0",
+ "apiKeyName": "X-Cisco-Meraki-API-Key"
+ },
+ "dcrConfig": {
+ "streamName": "Meraki",
+ "dataCollectionEndpoint": "data collection Endpoint",
+ "dataCollectionRuleImmutableId": "data collection rule immutableId"
+ },
+ "request": {
+ "apiEndpoint": "https://api.meraki.com/api/v1/organizations/573083052582915028/networks",
+ "rateLimitQPS": 10,
+ "queryWindowInMin": 6,
+ "httpMethod": "GET",
+ "queryTimeFormat": "UnixTimestamp",
+ "startTimeAttributeName": "t0",
+ "endTimeAttributeName": "t1",
+ "retryCount": 3,
+ "timeoutInSeconds": 60,
+ "headers": {
+ "Accept": "application/json",
+ "User-Agent": "Scuba"
+ },
+ "queryParameters": {
+ "perPage": 1000
+ }
+ },
+ "paging": {
+ "pagingType": "LinkHeader"
+ },
+ "response": {
+ "eventsJsonPaths": [
+ "$"
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json
new file mode 100644
index 000000000000..6af93b35f312
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "name": "c345bf40-8509-4ed2-b947-50cb773aaf04",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "ThreatIntelligence",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "tipLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "dataTypes": {
+ "indicators": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json
new file mode 100644
index 000000000000..eff55c156fb8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "dataConnectorId": "c39bb458-02a7-4b3f-b0c8-71a1d2692652"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652",
+ "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652",
+ "type": "Microsoft.SecurityInsights/dataConnectors",
+ "kind": "ThreatIntelligenceTaxii",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8",
+ "workspaceId": "8b014a77-4695-4ef4-96bb-6623afb121a2",
+ "friendlyName": "My TI Taxii Connector",
+ "taxiiServer": "https://mytaxiiserver.com/taxiing/v2/api",
+ "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e",
+ "userName": "",
+ "password": "",
+ "taxiiLookbackPeriod": "2020-01-01T13:00:30.123Z",
+ "pollingFrequency": "OnceADay",
+ "dataTypes": {
+ "taxiiClient": {
+ "state": "Enabled"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json
new file mode 100644
index 000000000000..a4cb1111214f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "enrichmentType": "main",
+ "ipAddressBody": {
+ "ipAddress": "1.2.3.4"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "asn": "12345",
+ "carrier": "Microsoft",
+ "city": "Redmond",
+ "cityCf": 90,
+ "continent": "north america",
+ "country": "united states",
+ "countryCf": 99,
+ "ipAddr": "1.2.3.4",
+ "ipRoutingType": "fixed",
+ "latitude": "40.2436",
+ "longitude": "-100.8891",
+ "organization": "Microsoft",
+ "organizationType": "tech",
+ "region": "western usa",
+ "state": "washington",
+ "stateCf": null,
+ "stateCode": "wa"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json
new file mode 100644
index 000000000000..137c2dc10c64
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json
@@ -0,0 +1,91 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "enrichmentType": "main",
+ "domainBody": {
+ "domain": "microsoft.com"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "domain": "microsoft.com",
+ "server": null,
+ "created": "2021-09-01T16:15:01.187045Z",
+ "updated": "2021-09-01T16:15:01.187045Z",
+ "expires": null,
+ "parsedWhois": {
+ "registrar": {
+ "name": "MarkMonitor, Inc",
+ "abuseContactPhone": "12083895770",
+ "abuseContactEmail": "abuse@microsoft.com",
+ "url": "http://www.markmonitor.com",
+ "whoisServer": "whois.markmonitor.com"
+ },
+ "contacts": {
+ "admin": {
+ "name": "Administrator",
+ "org": "Microsoft",
+ "street": [
+ "One Microsoft Way"
+ ],
+ "city": null,
+ "state": "WA",
+ "postal": "98052",
+ "country": "United States",
+ "phone": "1-800-555-1234",
+ "fax": null,
+ "email": "mail@microsoft.com"
+ },
+ "registrant": null,
+ "billing": {
+ "name": "Administrator",
+ "org": "Microsoft",
+ "street": [
+ "One Microsoft Way"
+ ],
+ "city": null,
+ "state": "WA",
+ "postal": "98052",
+ "country": "United States",
+ "phone": "1-800-555-1234",
+ "fax": null,
+ "email": "mail@microsoft.com"
+ },
+ "tech": {
+ "name": "Administrator",
+ "org": "Microsoft",
+ "street": [
+ "One Microsoft Way"
+ ],
+ "city": null,
+ "state": "WA",
+ "postal": "98052",
+ "country": "United States",
+ "phone": "1-800-555-1234",
+ "fax": null,
+ "email": "mail@microsoft.com"
+ }
+ },
+ "nameServers": [
+ "ns1-205.azure-dns.com",
+ "ns2-205.azure-dns.net",
+ "ns3-205.azure-dns.org",
+ "ns4-205.azure-dns.info"
+ ],
+ "statuses": [
+ "clientUpdateProhibited",
+ "clientTransferProhibited",
+ "clientDeleteProhibited",
+ "serverUpdateProhibited",
+ "serverTransferProhibited",
+ "serverDeleteProhibited"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAccountEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAccountEntityById.json
new file mode 100644
index 000000000000..5aefa5b6fbcd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAccountEntityById.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Account",
+ "properties": {
+ "friendlyName": "administrator",
+ "accountName": "administrator",
+ "ntDomain": "domain",
+ "upnSuffix": "contoso",
+ "sid": "S-1-5-18",
+ "aadTenantId": "70fbdad0-7441-4564-b2b5-2b8862d0fee0",
+ "aadUserId": "f7033626-2572-46b1-bba0-06646f4f95b3",
+ "puid": "ee3cb2d8-14ba-45ef-8009-d6f1cacfa04d",
+ "isDomainJoined": true,
+ "objectGuid": "11227b78-3c6e-436e-a2a2-02fc7662eca0",
+ "dnsDomain": "contoso.com"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAzureResourceEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAzureResourceEntityById.json
new file mode 100644
index 000000000000..5fd0204b5cb2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetAzureResourceEntityById.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "AzureResource",
+ "properties": {
+ "friendlyName": "vm1",
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachines/vm1",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetCloudApplicationEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetCloudApplicationEntityById.json
new file mode 100644
index 000000000000..0e6c5ebc8311
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetCloudApplicationEntityById.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "CloudApplication",
+ "properties": {
+ "friendlyName": "AppName",
+ "appId": 1,
+ "appName": "AppName",
+ "instanceName": "InstanceName"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetDnsEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetDnsEntityById.json
new file mode 100644
index 000000000000..7947fa8ad807
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetDnsEntityById.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "f4e74920-f2c0-4412-a45f-66d94fdf01f8"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/f4e74920-f2c0-4412-a45f-66d94fdf01f8",
+ "name": "f4e74920-f2c0-4412-a45f-66d94fdf01f8",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "DnsResolution",
+ "properties": {
+ "friendlyName": "domain",
+ "domainName": "domain",
+ "ipAddressEntityIds": [
+ "475d3120-33e0-4841-9f1c-a8f15a801d19"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetEntities.json
new file mode 100644
index 000000000000..f3a48bcd54eb
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetEntities.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Account",
+ "properties": {
+ "friendlyName": "administrator",
+ "accountName": "administrator",
+ "ntDomain": "domain",
+ "upnSuffix": "contoso",
+ "sid": "S-1-5-18",
+ "aadTenantId": "70fbdad0-7441-4564-b2b5-2b8862d0fee0",
+ "aadUserId": "f7033626-2572-46b1-bba0-06646f4f95b3",
+ "puid": "ee3cb2d8-14ba-45ef-8009-d6f1cacfa04d",
+ "isDomainJoined": true,
+ "objectGuid": "11227b78-3c6e-436e-a2a2-02fc7662eca0"
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/fed9fe89-dce8-40f2-bf44-70f23fe93b3c",
+ "name": "fed9fe89-dce8-40f2-bf44-70f23fe93b3c",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Host",
+ "properties": {
+ "friendlyName": "vm1",
+ "dnsDomain": "contoso",
+ "ntDomain": "domain",
+ "hostName": "vm1",
+ "netBiosName": "contoso",
+ "azureID": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachines/vm1",
+ "omsAgentID": "70fbdad0-7441-4564-b2b5-2b8862d0fee0",
+ "osFamily": "Windows",
+ "osVersion": "1.0",
+ "isDomainJoined": true
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f",
+ "name": "af378b21-b4aa-4fe7-bc70-13f8621a322f",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "File",
+ "properties": {
+ "friendlyName": "cmd.exe",
+ "directory": "C:\\Windows\\System32",
+ "fileName": "cmd.exe"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileEntityById.json
new file mode 100644
index 000000000000..da807e03a043
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileEntityById.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "af378b21-b4aa-4fe7-bc70-13f8621a322f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f",
+ "name": "af378b21-b4aa-4fe7-bc70-13f8621a322f",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "File",
+ "properties": {
+ "friendlyName": "cmd.exe",
+ "directory": "C:\\Windows\\System32",
+ "fileName": "cmd.exe"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileHashEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileHashEntityById.json
new file mode 100644
index 000000000000..3bdaff79c709
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetFileHashEntityById.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "ea359fa6-c1e5-f878-e105-6344f3e399a1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/ea359fa6-c1e5-f878-e105-6344f3e399a1",
+ "name": "ea359fa6-c1e5-f878-e105-6344f3e399a1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "FileHash",
+ "properties": {
+ "friendlyName": "E923636F1093C414AAB39F846E9D7A372BEEFA7B628B28179197E539C56AA0F0(SHA256)",
+ "hashValue": "E923636F1093C414AAB39F846E9D7A372BEEFA7B628B28179197E539C56AA0F0",
+ "algorithm": "SHA256"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetHostEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetHostEntityById.json
new file mode 100644
index 000000000000..06aaebaa6f42
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetHostEntityById.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Host",
+ "properties": {
+ "friendlyName": "vm1",
+ "dnsDomain": "contoso",
+ "ntDomain": "domain",
+ "hostName": "vm1",
+ "netBiosName": "contoso",
+ "azureID": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachines/vm1",
+ "omsAgentID": "70fbdad0-7441-4564-b2b5-2b8862d0fee0",
+ "osFamily": "Windows",
+ "osVersion": "1.0",
+ "isDomainJoined": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIoTDeviceEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIoTDeviceEntityById.json
new file mode 100644
index 000000000000..7270b45e66d4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIoTDeviceEntityById.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "IoTDevice",
+ "properties": {
+ "friendlyName": "device1",
+ "deviceId": "device1",
+ "deviceName": "device1",
+ "iotHubEntityId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/8b2d9401-f953-e89d-2583-be9b4975870c",
+ "nicEntityIds": [
+ "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/6ee379bd-ace8-44cf-ab10-ee669a1b71e2"
+ ],
+ "deviceType": "Industrial",
+ "firmwareVersion": "20.11",
+ "importance": "Normal",
+ "isAuthorized": true,
+ "isProgramming": false,
+ "isScanner": false,
+ "model": "demo-model",
+ "protocols": [
+ "CIP",
+ "EtherNet/IP"
+ ],
+ "operatingSystem": "Windows",
+ "purdueLayer": "ProcessControl",
+ "sensor": "demo-sensor",
+ "site": "demo-site",
+ "vendor": "demo-vendor",
+ "zone": "zone"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIpEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIpEntityById.json
new file mode 100644
index 000000000000..3d944e15b97d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetIpEntityById.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Ip",
+ "properties": {
+ "friendlyName": "10.3.2.8",
+ "address": "10.3.2.8"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailClusterEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailClusterEntityById.json
new file mode 100644
index 000000000000..c46d8ff3878a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailClusterEntityById.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "MailCluster",
+ "properties": {
+ "friendlyName": "ClusterSourceIdentifier",
+ "networkMessageIds": [
+ "ccfce855-e02f-491b-a1cc-5bafb371ad0c"
+ ],
+ "countByDeliveryStatus": {
+ "deliveryStatus": 5
+ },
+ "countByThreatType": {
+ "threatType": 6
+ },
+ "countByProtectionStatus": {
+ "protectionStatus": 65
+ },
+ "threats": [
+ "thrreat1",
+ "thread2"
+ ],
+ "query": "kqlFilter",
+ "queryTime": "2021-09-01T01:42:01.6026755Z",
+ "source": "ClusterSourceIdentifier",
+ "clusterSourceIdentifier": "cluster source identifier",
+ "clusterSourceType": "Similarity",
+ "clusterGroup": "cluster group"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailMessageEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailMessageEntityById.json
new file mode 100644
index 000000000000..b35be2956f21
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailMessageEntityById.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "MailMessage",
+ "properties": {
+ "friendlyName": "cmd.exe",
+ "fileEntityIds": [
+ "ccfce855-e02f-491b-a1cc-5bafb371ad0c"
+ ],
+ "recipient": "recipient",
+ "urls": [
+ "http://moqbrarcwmnk.banxhdcojlg.biz"
+ ],
+ "threats": [
+ "thrreat1",
+ "thread2"
+ ],
+ "p1Sender": "email@fake.com",
+ "p1SenderDisplayName": "p1 sender display name",
+ "p1SenderDomain": "p1 sender domain",
+ "senderIP": "1.23.34.43",
+ "p2Sender": "the sender",
+ "deliveryAction": "Blocked",
+ "p2SenderDisplayName": "p2 sender display name",
+ "p2SenderDomain": "p2 Sender Domain",
+ "internetMessageId": "message id",
+ "subject": "subject",
+ "language": "language",
+ "threatDetectionMethods": [
+ "thrreat1",
+ "thread2"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailboxEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailboxEntityById.json
new file mode 100644
index 000000000000..8ca3a06b85d9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMailboxEntityById.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Mailbox",
+ "properties": {
+ "friendlyName": "emailAddress1",
+ "displayName": "display name",
+ "mailboxPrimaryAddress": "emailAddress1",
+ "upn": "upn1",
+ "externalDirectoryObjectId": "18cc8fdc-e169-4451-983a-bd027db286eb"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMalwareEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMalwareEntityById.json
new file mode 100644
index 000000000000..8ae727e1499c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetMalwareEntityById.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "af378b21-b4aa-4fe7-bc70-13f8621a322f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/af378b21-b4aa-4fe7-bc70-13f8621a322f",
+ "name": "af378b21-b4aa-4fe7-bc70-13f8621a322f",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Malware",
+ "properties": {
+ "malwareName": "Win32/Toga!rfn",
+ "category": "Trojan",
+ "friendlyName": "Win32/Toga!rfn"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetProcessEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetProcessEntityById.json
new file mode 100644
index 000000000000..6753e3ecf8c6
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetProcessEntityById.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "7264685c-038c-42c6-948c-38e14ef1fb98"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/7264685c-038c-42c6-948c-38e14ef1fb98",
+ "name": "7264685c-038c-42c6-948c-38e14ef1fb98",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Process",
+ "properties": {
+ "friendlyName": "cmd.exe",
+ "processId": "0x2aa48",
+ "commandLine": "\"cmd\"",
+ "imageFileEntityId": "bba7b47b-c1c1-4021-b568-5b07b9292f5e"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetQueries.json
new file mode 100644
index 000000000000..663836935ce5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetQueries.json
@@ -0,0 +1,456 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "kind": "Insight"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1/queries/6db7f5d1-f41e-46c2-b935-230b36a569e6",
+ "name": "6db7f5d1-f41e-46c2-b935-230b36a569e6",
+ "type": "Microsoft.SecurityInsights/entities/queries",
+ "kind": "Insight",
+ "properties": {
+ "displayName": "Actions on account",
+ "description": "Summary of actions taken on the specified account, grouped by action: password resets and changes, account lockouts (policy or admin), account creation and deletion, account enabled and disabled\n",
+ "baseQuery": "let GetAccountActions = (v_Account_Name:string, v_Account_NTDomain:string, v_Account_UPNSuffix:string, v_Account_AADUserId:string, v_Account_SID:string){\nAuditLogs\n| where OperationName in~ ('Delete user', 'Change user password', 'Reset user password', 'Change password (self-service)', 'Reset password (by admin)', 'Reset password (self-service)', 'Update user')\n| extend UserPrincipalName = tostring(TargetResources[0].userPrincipalName)\n| extend Account_Name = tostring(split(UserPrincipalName, '@')[0])\n| extend Account_UPNSuffix = tostring(split(UserPrincipalName, '@')[1])\n| extend Action = tostring(parse_json(tostring(parse_json(tostring(TargetResources[0].modifiedProperties))[0])))\n| extend ModifiedProperty = parse_json(Action).displayName\n| extend ModifiedValue = parse_json(Action).newValue\n| extend Account_AADUserId = tostring(TargetResources[0].id)\n| extend DisableUser = iif(ModifiedProperty =~ 'AccountEnabled' and ModifiedValue =~ '[false]', 'True', 'False')\n| union isfuzzy=true (\nSecurityEvent\n| where EventID in (4720, 4722, 4723, 4724, 4725, 4726, 4740)\n| extend OperationName = tostring(EventID)\n| where AccountType =~ \"user\" or isempty(AccountType)\n| extend Account_Name = TargetUserName, Account_NTDomain = TargetDomainName, Account_SID = TargetSid\n)\n| where (Account_Name =~ v_Account_Name and (Account_UPNSuffix =~ v_Account_UPNSuffix or Account_NTDomain =~ v_Account_NTDomain)) or Account_AADUserId =~ v_Account_AADUserId or Account_SID =~ v_Account_SID\n};\nGetAccountActions('CTFFUser4', '', 'seccxp.ninja', '', '')\n",
+ "tableQuery": {
+ "columnsDefinitions": [
+ {
+ "header": "Action",
+ "outputType": "String",
+ "supportDeepLink": false
+ },
+ {
+ "header": "Most Recent",
+ "outputType": "Date",
+ "supportDeepLink": false
+ },
+ {
+ "header": "Count",
+ "outputType": "Number",
+ "supportDeepLink": true
+ }
+ ],
+ "queriesDefinitions": [
+ {
+ "filter": "where OperationName in~ ('Change user password', 'Reset user password', 'Change password (self-service)', 'Reset password (by admin)', 'Reset password (self-service)', '4724', '4723')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName in~ ('Blocked from self-service password reset', '4740')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName == '4725' or (OperationName =~ 'Update user' and DisableUser =~ 'True')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName in~ ('Add user', '4720')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName in~ ('Delete user', '4726')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName in~ ('4725', 'Blocked from self-service password reset', '4740') or (OperationName =~ 'Update user' and DisableUser =~ 'True')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName in~ ('4722', '4767') or (OperationName =~ 'Update user' and DisableUser =~ 'False')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where OperationName in~ ('Update user','4738')",
+ "summarize": "summarize MostRecent = max(TimeGenerated), Count = count() by OperationName",
+ "project": "project Title = OperationName, MostRecent, Count",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Count",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ }
+ ]
+ },
+ "chartQuery": {
+ "title": "Actions by type",
+ "dataSets": [
+ {
+ "query": "summarize Count = count() by bin(TimeGenerated, 1h), OperationName",
+ "xColumnName": "TimeGenerated",
+ "yColumnName": "Count",
+ "legendColumnName": "OperationName"
+ }
+ ],
+ "type": "BarChart"
+ },
+ "additionalQuery": {
+ "text": "See all account activity",
+ "query": "project TimeGenerated, UserPrincipalName, Account_Name, OperationName, Activity, DisableUser, TargetSid, AADUserId, InitiatedBy, AADTenantId, AccountType, Computer, SubjectAccount, SubjectUserSid, EventData"
+ },
+ "defaultTimeRange": {
+ "beforeRange": "12h",
+ "afterRange": "12h"
+ },
+ "referenceTimeRange": null,
+ "dataTypes": [
+ {
+ "dataType": "AuditLogs"
+ },
+ {
+ "dataType": "SecurityEvent"
+ }
+ ],
+ "inputEntityType": "Account",
+ "requiredInputFieldsSets": [
+ [
+ "Account_Name",
+ "Account_NTDomain"
+ ],
+ [
+ "Account_Name",
+ "Account_UPNSuffix"
+ ],
+ [
+ "Account_AADUserId"
+ ],
+ [
+ "Account_SID"
+ ]
+ ],
+ "entitiesFilter": {}
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1/queries/0a5d7b14-b485-450a-a0ac-4100c860ac32",
+ "name": "0a5d7b14-b485-450a-a0ac-4100c860ac32",
+ "type": "Microsoft.SecurityInsights/entities/queries",
+ "kind": "Insight",
+ "properties": {
+ "displayName": "Anomalously high office operation count",
+ "description": "Highlight office operations of the user with anomalously high count compared to those observed in the preceding 14 days.",
+ "baseQuery": "let AScoreThresh = 3; \nlet maxAnomalies = 3;\nlet BeforeRange = 12d; \nlet EndTime = todatetime('{{EndTimeUTC}}'); \nlet StartTime = todatetime('{{StartTimeUTC}}');\nlet numDays = tolong((EndTime-StartTime)/1d); \nlet userData = (v_Account_Name:string, v_Account_UPNSuffix:string) { \n OfficeActivity \n | extend splitUserId=split(UserId, '@')\n | extend Account_Name = tostring(splitUserId[0]), Account_UPNSuffix = tostring(splitUserId[1])\n | where Account_Name =~ v_Account_Name and Account_UPNSuffix =~ v_Account_UPNSuffix }; \nuserData('CTFFUser4', 'seccxp.ninja')\n",
+ "tableQuery": {
+ "columnsDefinitions": [
+ {
+ "header": "Operation",
+ "outputType": "String",
+ "supportDeepLink": true
+ },
+ {
+ "header": "Expected Count",
+ "outputType": "Number",
+ "supportDeepLink": false
+ },
+ {
+ "header": "Actual Count",
+ "outputType": "Number",
+ "supportDeepLink": false
+ }
+ ],
+ "queriesDefinitions": [
+ {
+ "filter": "make-series count() default=0 on TimeGenerated from (StartTime - BeforeRange) to EndTime step 1d by Operation \n| extend (anomalies,anomalyScore, expectedCount)=series_decompose_anomalies(count_,AScoreThresh,7,'linefit',numDays, 'ctukey') \n| extend count1=count_, TimeGenerated1=TimeGenerated, anomalyScore1=anomalyScore\n| mv-apply count1 to typeof(long), TimeGenerated1 to typeof(datetime), anomalyScore1 to typeof(double), anomalies to typeof(long) on (summarize totAnomalies=sumif(abs(anomalies), TimeGenerated1 < StartTime), baseStd=stdevif(count1, TimeGenerated1 < StartTime), baseAvg=avgif(count1, TimeGenerated1 < StartTime), maxCountPost=maxif(count1,TimeGenerated1 >= StartTime), maxAnomalyScorePost=maxif(anomalyScore1, TimeGenerated1 >= StartTime)) \n| extend count1=count_ \n| mv-apply count1 to typeof(long), anomalyScore to typeof(double), expectedCount to typeof(double) on ( summarize (dummy, postExpectedCount, postActualCount)=arg_min(abs(anomalyScore-maxAnomalyScorePost), expectedCount, count1) ) \n| where totAnomalies < maxAnomalies \n| extend postAnomalyScore=iff(baseStd == 0 and maxCountPost > tolong(count_[0]),1000.0,maxAnomalyScorePost), postExpectedCount=iff(postExpectedCount < 0,0.0,postExpectedCount) \n| where maxAnomalyScorePost > AScoreThresh \n| order by maxAnomalyScorePost desc\n",
+ "summarize": "take 1",
+ "project": "project Operation, expectedCount=round(postExpectedCount,2), actualCount=postActualCount, anomalyScore=round(postAnomalyScore,2)",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "Operation",
+ "Query": "{{BaseQuery}} \n| where TimeGenerated between (StartTime .. EndTime) \n| where Operation == ''\n"
+ }
+ ]
+ }
+ ]
+ },
+ "chartQuery": {
+ "title": "Anomalous operation timeline",
+ "dataSets": [
+ {
+ "query": "make-series count() default=0 on TimeGenerated from (StartTime - BeforeRange) to EndTime step 1d by Operation \n| extend (anomalies,anomalyScore, expectedCount)=series_decompose_anomalies(count_,AScoreThresh,7,'linefit',numDays, 'ctukey') \n| extend count1=count_, TimeGenerated1=TimeGenerated, anomalyScore1=anomalyScore\n| mv-apply count1 to typeof(long), TimeGenerated1 to typeof(datetime), anomalyScore1 to typeof(double), anomalies to typeof(long) on (summarize totAnomalies=sumif(abs(anomalies), TimeGenerated1 < StartTime), baseStd=stdevif(count1, TimeGenerated1 < StartTime), baseAvg=avgif(count1, TimeGenerated1 < StartTime), maxCountPost=maxif(count1,TimeGenerated1 >= StartTime), maxAnomalyScorePost=maxif(anomalyScore1, TimeGenerated1 >= StartTime)) \n| extend count1=count_ \n| mv-apply count1 to typeof(long), anomalyScore to typeof(double), expectedCount to typeof(double) on ( summarize (dummy, postExpectedCount, postActualCount)=arg_min(abs(anomalyScore-maxAnomalyScorePost), expectedCount, count1) ) \n| where totAnomalies < maxAnomalies \n| extend postAnomalyScore=iff(baseStd == 0 and maxCountPost > tolong(count_[0]),1000.0,maxAnomalyScorePost), postExpectedCount=iff(postExpectedCount < 0,0.0,round(postExpectedCount,2)) \n| where maxAnomalyScorePost > AScoreThresh \n| order by maxAnomalyScorePost desc \n| take 1 \n| project Operation, TimeGenerated, count_\n| mvexpand TimeGenerated, count_ | project todatetime(TimeGenerated), toint(count_), Operation\n",
+ "xColumnName": "TimeGenerated",
+ "yColumnName": "count_",
+ "legendColumnName": "Operation"
+ }
+ ],
+ "type": "LineChart"
+ },
+ "additionalQuery": {
+ "text": "Query all anomalous operations",
+ "query": "make-series count() default=0 on TimeGenerated from (StartTime - BeforeRange) to EndTime step 1d by Operation \n| extend (anomalies,anomalyScore, expectedCount)=series_decompose_anomalies(count_,AScoreThresh,7,'linefit',numDays, 'ctukey') \n| extend count1=count_, TimeGenerated1=TimeGenerated, anomalyScore1=anomalyScore\n| mv-apply count1 to typeof(long), TimeGenerated1 to typeof(datetime), anomalyScore1 to typeof(double), anomalies to typeof(long) on (summarize totAnomalies=sumif(abs(anomalies), TimeGenerated1 < StartTime), baseStd=stdevif(count1, TimeGenerated1 < StartTime), baseAvg=avgif(count1, TimeGenerated1 < StartTime), maxCountPost=maxif(count1,TimeGenerated1 >= StartTime), maxAnomalyScorePost = maxif(anomalyScore1, TimeGenerated1 >= StartTime)) \n| extend count1=count_\n| mv-apply count1 to typeof(long), anomalyScore to typeof(double), expectedCount to typeof(double) on ( summarize (dummy, postExpectedCount, postActualCount)=arg_min(abs(anomalyScore - maxAnomalyScorePost), expectedCount, count1) ) \n| where totAnomalies < maxAnomalies\n| extend postAnomalyScore=iff(baseStd == 0 and maxCountPost > tolong(count_[0]),1000.0,maxAnomalyScorePost), postExpectedCount=iff(postExpectedCount < 0,0.0,postExpectedCount) \n| where maxAnomalyScorePost > AScoreThresh | order by maxAnomalyScorePost desc \n| project Operation, expectedCount=round(postExpectedCount,2), actualCount=postActualCount, anomalyScore=round(postAnomalyScore,2)\n"
+ },
+ "defaultTimeRange": {
+ "beforeRange": "1d",
+ "afterRange": "0d"
+ },
+ "referenceTimeRange": {
+ "beforeRange": "12d"
+ },
+ "dataTypes": [
+ {
+ "dataType": "OfficeActivity"
+ }
+ ],
+ "inputEntityType": "Account",
+ "requiredInputFieldsSets": [
+ [
+ "Account_Name",
+ "Account_UPNSuffix"
+ ]
+ ],
+ "entitiesFilter": {}
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1/queries/e6cf68e6-1eca-4fbb-9fad-6280f2a9476e",
+ "name": "e6cf68e6-1eca-4fbb-9fad-6280f2a9476e",
+ "type": "Microsoft.SecurityInsights/entities/queries",
+ "kind": "Insight",
+ "properties": {
+ "displayName": "Resource access",
+ "description": "Provides the count and distinct resource accesses by a given user account\n",
+ "baseQuery": "let Operations = dynamic([\"FileDownloaded\", \"FileUploaded\"]);\nlet UserOperationToSharePoint = (v_Account_Name:string, v_Account_UPNSuffix:string) {\nOfficeActivity\n// Select sharepoint activity that is relevant\n| where RecordType in~ ('SharePointFileOperation')\n| where Operation in~ (Operations)\n| extend Account_Name = tostring(split(UserId, '@')[0])\n| extend Account_UPNSuffix = tostring(split(UserId, '@')[1])\n| where Account_Name =~ v_Account_Name and Account_UPNSuffix =~ v_Account_UPNSuffix\n| project TimeGenerated, Account_Name, Account_UPNSuffix, UserId, OfficeId, RecordType, Operation, OrganizationId, UserType, UserKey, OfficeWorkload, OfficeObjectId, ClientIP, ItemType, UserAgent, Site_Url, SourceRelativeUrl, SourceFileName, SourceFileExtension , Start_Time , ElevationTime , TenantId, SourceSystem , Type\n};\nUserOperationToSharePoint ('CTFFUser4','seccxp.ninja')\n",
+ "tableQuery": {
+ "columnsDefinitions": [
+ {
+ "header": "Resource Type",
+ "outputType": "String",
+ "supportDeepLink": false
+ },
+ {
+ "header": "Distinct Resources",
+ "outputType": "Number",
+ "supportDeepLink": true
+ },
+ {
+ "header": "Total Resources",
+ "outputType": "Number",
+ "supportDeepLink": true
+ },
+ {
+ "header": "IPAddress(es)",
+ "outputType": "String",
+ "supportDeepLink": false
+ }
+ ],
+ "queriesDefinitions": [
+ {
+ "filter": "where Operation =~ 'FileUploaded'",
+ "summarize": "summarize DistinctResources = dcount(SourceFileName), TotalResources = count(SourceFileName), IPAddresses = make_set(ClientIP) by Operation",
+ "project": "project Title = Operation, DistinctResources, TotalResources, IPAddresses = case(array_length(IPAddresses) == 1, tostring(IPAddresses[0]), array_length(IPAddresses) > 1, 'Many', 'None')",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "DistinctResources",
+ "Query": "{{BaseQuery}} | "
+ },
+ {
+ "projectedName": "TotalResources",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ },
+ {
+ "filter": "where Operation =~ 'FileDownloaded'",
+ "summarize": "summarize DistinctResources = dcount(SourceFileName), TotalResources = count(SourceFileName), IPAddresses = make_set(ClientIP) by Operation",
+ "project": "project Title = Operation, DistinctResources, TotalResources, IPAddresses = case(array_length(IPAddresses) == 1, tostring(IPAddresses[0]), array_length(IPAddresses) > 1, 'Many', 'None')",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "DistinctResources",
+ "Query": "{{BaseQuery}} | "
+ },
+ {
+ "projectedName": "TotalResources",
+ "Query": "{{BaseQuery}} | "
+ }
+ ]
+ }
+ ]
+ },
+ "chartQuery": {
+ "title": "Resource access over time",
+ "dataSets": [
+ {
+ "query": "summarize DistinctResources = dcountif(Operation, Operation =~ 'FileUploaded'), TotalResources = countif(Operation =~ 'FileUploaded') by bin(TimeGenerated, 1h) | extend Legend = 'File Uploads'",
+ "xColumnName": "TimeGenerated",
+ "yColumnName": "TotalResources",
+ "legendColumnName": "Legend"
+ },
+ {
+ "query": "summarize DistinctResources = dcountif(Operation, Operation =~ 'FileDownloaded'), TotalResources = countif(Operation =~ 'FileDownloaded') by bin(TimeGenerated, 1h) | extend Legend = 'File Downloads'",
+ "xColumnName": "TimeGenerated",
+ "yColumnName": "TotalResources",
+ "legendColumnName": "Legend"
+ }
+ ],
+ "type": "LineChart"
+ },
+ "additionalQuery": {
+ "text": "See all resource activity",
+ "query": "where Operation in~ (Operations)"
+ },
+ "defaultTimeRange": {
+ "beforeRange": "12h",
+ "afterRange": "12h"
+ },
+ "referenceTimeRange": null,
+ "dataTypes": [
+ {
+ "dataType": "OfficeActivity"
+ }
+ ],
+ "inputEntityType": "Account",
+ "requiredInputFieldsSets": [
+ [
+ "Account_Name",
+ "Account_UPNSuffix"
+ ],
+ [
+ "Account_AADUserId"
+ ]
+ ],
+ "entitiesFilter": {}
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1/queries/cae8d0aa-aa45-4d53-8d88-17dd64ffd4e4",
+ "name": "cae8d0aa-aa45-4d53-8d88-17dd64ffd4e4",
+ "type": "Microsoft.SecurityInsights/entities/queries",
+ "kind": "Insight",
+ "properties": {
+ "displayName": "Anomalously high Azure sign-in result count",
+ "description": "Highlight Azure sign-in results by the user principal with anomalously high count compared to those observed in the preceding 14 days.",
+ "baseQuery": "let AScoreThresh=3; \nlet maxAnomalies=3; \nlet BeforeRange = 12d; \nlet EndTime=todatetime('{{EndTimeUTC}}');\nlet StartTime = todatetime('{{StartTimeUTC}}'); \nlet numDays = tolong((EndTime-StartTime)/1d); \nlet userData = (v_Account_Name:string, v_Account_UPNSuffix:string, v_Account_AADUserId:string) { \n SigninLogs \n | where TimeGenerated between ((StartTime-BeforeRange) .. EndTime)\n | extend splitUserId=split(UserPrincipalName, '@')\n | extend Account_Name = tostring(splitUserId[0]), Account_UPNSuffix = tostring(splitUserId[1])\n | where (Account_Name =~ v_Account_Name and Account_UPNSuffix =~ v_Account_UPNSuffix) or UserId =~ v_Account_AADUserId };\nuserData('CTFFUser4', 'seccxp.ninja', '')\n",
+ "tableQuery": {
+ "columnsDefinitions": [
+ {
+ "header": "Result Description",
+ "outputType": "String",
+ "supportDeepLink": true
+ },
+ {
+ "header": "Expected Count",
+ "outputType": "Number",
+ "supportDeepLink": false
+ },
+ {
+ "header": "Actual Count",
+ "outputType": "Number",
+ "supportDeepLink": false
+ }
+ ],
+ "queriesDefinitions": [
+ {
+ "filter": "make-series count() default=0 on TimeGenerated from (StartTime - BeforeRange) to EndTime step 1d by ResultDescription \n| extend (anomalies,anomalyScore, expectedCount)=series_decompose_anomalies(count_,AScoreThresh,7,'linefit',numDays, 'ctukey') \n| extend count1=count_, TimeGenerated1=TimeGenerated, anomalyScore1=anomalyScore\n| mv-apply count1 to typeof(long), TimeGenerated1 to typeof(datetime), anomalyScore1 to typeof(double), anomalies to typeof(long) on (summarize totAnomalies=sumif(abs(anomalies), TimeGenerated1 < StartTime), baseStd=stdevif(count1, TimeGenerated1 < StartTime), baseAvg=avgif(count1, TimeGenerated1 < StartTime), maxCountPost=maxif(count1,TimeGenerated1 >= StartTime), maxAnomalyScorePost = maxif(anomalyScore1, TimeGenerated1 >= StartTime)) \n| extend count1=count_ \n| mv-apply count1 to typeof(long), anomalyScore to typeof(double), expectedCount to typeof(double) on ( summarize (dummy, postExpectedCount, postActualCount)=arg_min(abs(anomalyScore - maxAnomalyScorePost), expectedCount, count1) ) \n| where totAnomalies < maxAnomalies \n| extend postAnomalyScore=iff(baseStd == 0 and maxCountPost > tolong(count_[0]),1000.0,maxAnomalyScorePost), postExpectedCount=iff(postExpectedCount < 0,0.0,postExpectedCount) \n| where maxAnomalyScorePost > AScoreThresh \n| order by maxAnomalyScorePost desc\n",
+ "summarize": "take 1",
+ "project": "project ResultDescription, expectedCount=round(postExpectedCount,2), actualCount=postActualCount, anomalyScore=round(postAnomalyScore,2)",
+ "linkColumnsDefinitions": [
+ {
+ "projectedName": "ResultDescription",
+ "Query": "{{BaseQuery}} \n| where TimeGenerated between (StartTime .. EndTime) \n| where ResultDescription == ''\n"
+ }
+ ]
+ }
+ ]
+ },
+ "chartQuery": {
+ "title": "Anomalous sign-in result timeline",
+ "dataSets": [
+ {
+ "query": "make-series count() default=0 on TimeGenerated from (StartTime - BeforeRange) to EndTime step 1d by ResultDescription \n| extend (anomalies,anomalyScore, expectedCount)=series_decompose_anomalies(count_,AScoreThresh,7,'linefit',numDays, 'ctukey') \n| extend count1=count_, TimeGenerated1=TimeGenerated, anomalyScore1=anomalyScore\n| mv-apply count1 to typeof(long), TimeGenerated1 to typeof(datetime), anomalyScore1 to typeof(double), anomalies to typeof(long) on (summarize totAnomalies=sumif(abs(anomalies), TimeGenerated1 < StartTime), baseStd=stdevif(count1, TimeGenerated1 < StartTime), baseAvg=avgif(count1, TimeGenerated1 < StartTime), maxCountPost=maxif(count1,TimeGenerated1 >= StartTime), maxAnomalyScorePost = maxif(anomalyScore1, TimeGenerated1 >= StartTime)) \n| extend count1=count_ \n| mv-apply count1 to typeof(long), anomalyScore to typeof(double), expectedCount to typeof(double) on ( summarize (dummy, postExpectedCount, postActualCount)=arg_min(abs(anomalyScore - maxAnomalyScorePost), expectedCount, count1) ) \n| where totAnomalies < maxAnomalies \n| extend postAnomalyScore=iff(baseStd == 0 and maxCountPost > tolong(count_[0]),1000.0,maxAnomalyScorePost), postExpectedCount=iff(postExpectedCount < 0,0.0,round(postExpectedCount,2)) \n| where maxAnomalyScorePost > AScoreThresh \n| order by maxAnomalyScorePost desc \n| take 1 \n| project ResultDescription, TimeGenerated, count_ \n| mvexpand TimeGenerated, count_ \n| project todatetime(TimeGenerated), toint(count_), ResultDescription \n",
+ "xColumnName": "TimeGenerated",
+ "yColumnName": "count_",
+ "legendColumnName": "ResultDescription"
+ }
+ ],
+ "type": "LineChart"
+ },
+ "additionalQuery": {
+ "text": "Query all anomalous sign-in results",
+ "query": "make-series count() default=0 on TimeGenerated from (StartTime - BeforeRange) to EndTime step 1d by ResultDescription \n| extend (anomalies,anomalyScore, expectedCount)=series_decompose_anomalies(count_,AScoreThresh,7,'linefit',numDays, 'ctukey') \n| extend count1=count_, TimeGenerated1=TimeGenerated, anomalyScore1=anomalyScore\n| mv-apply count1 to typeof(long), TimeGenerated1 to typeof(datetime), anomalyScore1 to typeof(double), anomalies to typeof(long) on (summarize totAnomalies=sumif(abs(anomalies), TimeGenerated1 < StartTime), baseStd=stdevif(count1, TimeGenerated1 < StartTime), baseAvg=avgif(count1, TimeGenerated1 < StartTime), maxCountPost=maxif(count1,TimeGenerated1 >= StartTime), maxAnomalyScorePost = maxif(anomalyScore1, TimeGenerated1 >= StartTime)) \n| extend count1=count_\n| mv-apply count1 to typeof(long), anomalyScore to typeof(double), expectedCount to typeof(double) on ( summarize (dummy, postExpectedCount, postActualCount)=arg_min(abs(anomalyScore - maxAnomalyScorePost), expectedCount, count1) ) \n| where totAnomalies < maxAnomalies\n| extend postAnomalyScore=iff(baseStd == 0 and maxCountPost > tolong(count_[0]),1000.0,maxAnomalyScorePost), postExpectedCount=iff(postExpectedCount < 0,0.0,postExpectedCount) \n| where maxAnomalyScorePost > AScoreThresh \n| order by maxAnomalyScorePost desc \n| project ResultDescription, expectedCount=round(postExpectedCount,2), actualCount=postActualCount, anomalyScore=round(postAnomalyScore,2)\n"
+ },
+ "defaultTimeRange": {
+ "beforeRange": "1d",
+ "afterRange": "0d"
+ },
+ "referenceTimeRange": {
+ "beforeRange": "12d"
+ },
+ "dataTypes": [
+ {
+ "dataType": "SigninLogs"
+ }
+ ],
+ "inputEntityType": "Account",
+ "requiredInputFieldsSets": [
+ [
+ "Account_Name",
+ "Account_UPNSuffix"
+ ],
+ [
+ "Account_AADUserId"
+ ]
+ ],
+ "entitiesFilter": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryKeyEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryKeyEntityById.json
new file mode 100644
index 000000000000..32c4e718e641
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryKeyEntityById.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "RegistryKey",
+ "properties": {
+ "friendlyName": "SOFTWARE",
+ "hive": "HKEY_LOCAL_MACHINE",
+ "key": "SOFTWARE"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryValueEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryValueEntityById.json
new file mode 100644
index 000000000000..c57580d0facf
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetRegistryValueEntityById.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "dc44bd11-b348-4d76-ad29-37bf7aa41356"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/dc44bd11-b348-4d76-ad29-37bf7aa41356",
+ "name": "dc44bd11-b348-4d76-ad29-37bf7aa41356",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "RegistryValue",
+ "properties": {
+ "friendlyName": "Data",
+ "valueName": "Name",
+ "valueData": "Data",
+ "valueType": "String",
+ "keyEntityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityAlertEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityAlertEntityById.json
new file mode 100644
index 000000000000..5237e01937fa
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityAlertEntityById.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "4aa486e0-6f85-41af-99ea-7acdce7be6c8"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/4aa486e0-6f85-41af-99ea-7acdce7be6c8",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "SecurityAlert",
+ "properties": {
+ "systemAlertId": "4aa486e0-6f85-41af-99ea-7acdce7be6c8",
+ "intent": "Unknown",
+ "alertDisplayName": "Suspicious account detected",
+ "description": "",
+ "confidenceLevel": "Unknown",
+ "severity": "Medium",
+ "vendorName": "Microsoft",
+ "productName": "Azure Sentinel",
+ "productComponentName": "Scheduled Alerts",
+ "alertType": "c8c99641-985d-4e4e-8e91-fb3466cd0e5b_46c7b6c0-ff43-44dd-8b4d-ceffff7aa7df",
+ "providerAlertId": "c2bafff9-fb31-41d0-a177-ecbff7a02ffe",
+ "processingEndTime": "2019-07-06T13:56:53.5392366Z",
+ "status": "New",
+ "endTimeUtc": "2021-09-01T13:21:45.926185Z",
+ "startTimeUtc": "2021-09-01T08:21:45.926185Z",
+ "timeGenerated": "2021-09-01T13:56:53.5392366Z",
+ "tactics": [
+ "Persistence",
+ "LateralMovement"
+ ],
+ "additionalData": {
+ "Query": "Heartbeat \n| extend AccountCustomEntity = \"administrator\"",
+ "Query Period": "05:00:00",
+ "Trigger Operator": "GreaterThan",
+ "Trigger Threshold": "200",
+ "Search Query Results Overall Count": "203",
+ "Total Account Entities": "1"
+ },
+ "friendlyName": "Suspicious account detected",
+ "alertLink": "https://portal.azure.com/#blade/Microsoft_Azure_Security/AlertBlade/alertId/2518119885989999999_4aa486e0-6f85-41af-99ea-7acdce7be6c8/subscriptionId/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/myRg/myWorkspace/referencedFrom/alertDeepLink/location/centralus"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityGroupEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityGroupEntityById.json
new file mode 100644
index 000000000000..977a575c0296
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSecurityGroupEntityById.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "SecurityGroup",
+ "properties": {
+ "friendlyName": "Name",
+ "distinguishedName": "Name",
+ "sid": "Sid",
+ "objectGuid": "fb1b8e04-d944-4986-b39a-1ce9adedcd98"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSubmissionMailEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSubmissionMailEntityById.json
new file mode 100644
index 000000000000..2a39b0653b4c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetSubmissionMailEntityById.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "SubmissionMail",
+ "properties": {
+ "friendlyName": "recipient",
+ "submissionId": "5bb3d8fe-54bc-499c-bc21-86fe8df2a184",
+ "submitter": "submitter",
+ "recipient": "recipient",
+ "sender": "sender",
+ "senderIp": "1.4.35.34",
+ "subject": "subject",
+ "reportType": "report type"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetUrlEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetUrlEntityById.json
new file mode 100644
index 000000000000..2b66279e8c81
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/GetUrlEntityById.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Url",
+ "properties": {
+ "friendlyName": "https://bing.com",
+ "url": "https://bing.com"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/expand/PostExpandEntity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/expand/PostExpandEntity.json
new file mode 100644
index 000000000000..aa03186cddc2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/expand/PostExpandEntity.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "parameters": {
+ "expansionId": "a77992f3-25e9-4d01-99a4-5ff606cc410a",
+ "startTime": "2019-04-25T00:00:00.000Z",
+ "endTime": "2019-05-26T00:00:00.000Z"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": {
+ "entities": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/entities",
+ "kind": "Ip",
+ "properties": {
+ "address": "13.89.108.248",
+ "friendlyName": "13.89.108.248"
+ }
+ }
+ ],
+ "edges": [
+ {
+ "targetEntityId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/c1d60d86-5988-11eb-ae93-0242ac130002",
+ "additionalData": {
+ "EpochTimestamp": "1608289949",
+ "FirstSeen": "2021-09-01T11:12:29.597Z",
+ "Source": "Heartbeat"
+ }
+ }
+ ]
+ },
+ "metaData": {
+ "aggregations": [
+ {
+ "entityKind": "Account",
+ "count": 1
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/insights/PostGetInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/insights/PostGetInsights.json
new file mode 100644
index 000000000000..d33e0c11e18c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/insights/PostGetInsights.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "parameters": {
+ "addDefaultExtendedTimeRange": false,
+ "startTime": "2021-09-01T00:00:00.000Z",
+ "endTime": "2021-10-01T00:00:00.000Z",
+ "insightQueryIds": [
+ "cae8d0aa-aa45-4d53-8d88-17dd64ffd4e4"
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "tableQueryResults": {
+ "columns": [
+ {
+ "name": "Title",
+ "type": "string"
+ },
+ {
+ "name": "NameCount",
+ "type": "long"
+ },
+ {
+ "name": "SIDCount",
+ "type": "long"
+ },
+ {
+ "name": "InternalOrder",
+ "type": "long"
+ },
+ {
+ "name": "Index",
+ "type": "long"
+ }
+ ],
+ "rows": [
+ [
+ "MyTitle",
+ "15",
+ "SID",
+ "1",
+ "1"
+ ]
+ ]
+ },
+ "chartQueryResults": [
+ {
+ "columns": [
+ {
+ "name": "TimeGenerated",
+ "type": "datetime"
+ },
+ {
+ "name": "Count",
+ "type": "long"
+ },
+ {
+ "name": "Legend",
+ "type": "string"
+ }
+ ],
+ "rows": [
+ [
+ "2021-09-01T00:00:00.000Z",
+ "55",
+ "SomeLegend"
+ ]
+ ]
+ }
+ ],
+ "queryTimeInterval": {
+ "startTime": "2021-09-01T23:35:20Z",
+ "endTime": "2021-09-01T23:35:20Z"
+ },
+ "queryId": "e29ee1ef-7445-455e-85f1-269f2d536d61"
+ }
+ ],
+ "metaData": {
+ "totalCount": 7,
+ "errors": [
+ {
+ "kind": "Insight",
+ "queryId": "4a70a63d-25c4-6312-b73e-4f302a90c06a",
+ "errorMessage": "Internal server error"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetAllEntityRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetAllEntityRelations.json
new file mode 100644
index 000000000000..aad3f86f9557
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetAllEntityRelations.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/entities/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/incidents"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetEntityRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetEntityRelationByName.json
new file mode 100644
index 000000000000..29a323d7193c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/relations/GetEntityRelationByName.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/entities/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/incidents"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/timeline/PostTimelineEntity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/timeline/PostTimelineEntity.json
new file mode 100644
index 000000000000..a090f8955f8f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entities/timeline/PostTimelineEntity.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityId": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "parameters": {
+ "numberOfBucket": 4,
+ "startTime": "2021-09-01T00:00:00.000Z",
+ "endTime": "2021-10-01T00:00:00.000Z"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "kind": "SecurityAlert",
+ "description": "The alert description",
+ "azureResourceId": "4467341f-fb73-4f99-a9b3-29473532cf5a_bf7c3a2f-b743-6410-3ff0-ec64b5995d50",
+ "productName": "Azure Sentinel",
+ "displayName": "Alert display name",
+ "severity": "Medium",
+ "endTimeUtc": "2021-09-01T23:31:28.02Z",
+ "startTimeUtc": "2021-09-01T23:32:28.01Z",
+ "timeGenerated": "2021-09-01T23:37:25.8136594Z",
+ "alertType": "4467341f-fb73-4f99-a9b3-29473532cf5a_c93bf33e-055e-4972-9e7d-f84fe3fb61ae",
+ "Intent": "Discovery"
+ },
+ {
+ "kind": "Activity",
+ "queryId": "e0459780-ac9d-4b72-8bd4-fecf6b46a0a1",
+ "bucketStartTimeUTC": "2021-09-01T21:31:28.02Z",
+ "bucketEndTimeUTC": "2021-09-01T23:31:28.02Z",
+ "firstActivityTimeUTC": "2021-09-01T21:35:28.02Z",
+ "lastActivityTimeUTC": "2021-09-01T21:35:28.02Z",
+ "content": "he user has deleted the account 3 time(s)",
+ "title": "The user has deleted an account"
+ },
+ {
+ "kind": "Anomaly",
+ "azureResourceId": "4467341f-fb73-4f99-a9b3-29473532cf5a_d56430ef-f421-2c9c-0b7d-d082285843c6",
+ "description": "Anomalous private to public port scanning activity with high destination port count along with low port ratio. The ratios are normalized by multiplying them by 10,000 to get them to a more usable value between 0.0 and 1.0.",
+ "productName": "Azure Sentinel",
+ "displayName": "(Preview) Anomalous scanning activity",
+ "endTimeUtc": "2021-09-01T23:31:28.02Z",
+ "startTimeUtc": "2021-09-01T23:32:28.01Z",
+ "timeGenerated": "2021-09-01T23:37:25.8136594Z",
+ "vendor": "Microsoft",
+ "intent": "Discovery",
+ "techniques": [
+ "T1046"
+ ],
+ "reasons": [
+ "High destination port count",
+ "Low port ratio"
+ ]
+ }
+ ],
+ "metaData": {
+ "totalCount": 6,
+ "aggregations": [
+ {
+ "count": 4,
+ "kind": "Activity"
+ },
+ {
+ "count": 2,
+ "kind": "SecurityAlert"
+ },
+ {
+ "count": 1,
+ "kind": "Anomaly"
+ }
+ ],
+ "errors": [
+ {
+ "kind": "Activity",
+ "queryId": "11067f9f-d6a7-4488-887f-0ba564268879",
+ "errorMessage": "syntax error"
+ },
+ {
+ "kind": "SecurityAlert",
+ "errorMessage": "internal server error"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/CreateEntityQueryActivity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/CreateEntityQueryActivity.json
new file mode 100644
index 000000000000..d51a91b99d62
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/CreateEntityQueryActivity.json
@@ -0,0 +1,133 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "entityQuery": {
+ "kind": "Activity",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "enabled": true,
+ "templateName": null
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "type": "Microsoft.SecurityInsights/entityQueries",
+ "kind": "Activity",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "enabled": true,
+ "templateName": null,
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "type": "Microsoft.SecurityInsights/entityQueries",
+ "kind": "Activity",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "enabled": true,
+ "templateName": null,
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/DeleteEntityQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/DeleteEntityQuery.json
new file mode 100644
index 000000000000..4f183b9c5129
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/DeleteEntityQuery.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetActivityEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetActivityEntityQueryById.json
new file mode 100644
index 000000000000..b5dbbf4fd361
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetActivityEntityQueryById.json
@@ -0,0 +1,54 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "type": "Microsoft.SecurityInsights/entityQueries",
+ "etag": null,
+ "kind": "Activity",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "enabled": true,
+ "templateName": null,
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetEntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetEntityQueries.json
new file mode 100644
index 000000000000..5365aff2bfd8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetEntityQueries.json
@@ -0,0 +1,59 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "kind": "Expansion",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/37ca3555-c135-4a73-a65e-9c1d00323f5d",
+ "name": "37ca3555-c135-4a73-a65e-9c1d00323f5d",
+ "type": "Microsoft.SecurityInsights/entityQueries",
+ "etag": null,
+ "kind": "Expansion",
+ "properties": {
+ "queryTemplate": "let AccountActivity_byIP = (v_IP_Address:string){\r\n AzureActivity\r\n | where Caller != '' and CallerIpAddress == v_IP_Address\r\n | summarize Account_Aux_StartTime = min(TimeGenerated), Account_Aux_EndTime = max(TimeGenerated), Count = count() by Caller, TenantId\r\n | top 10 by Count asc nulls last \r\n | extend UPN = iff(Caller contains '@', Caller, ''), Account_AadUserId = iff(Caller !contains '@', Caller,'')\r\n | extend Account_Name = split(UPN,'@')[0] , Account_UPNSuffix = split(UPN,'@')[1]\r\n | project Account_Name, Account_UPNSuffix, Account_AadUserId, Account_AadTenantId=TenantId, Account_Aux_StartTime , Account_Aux_EndTime};\r\n AccountActivity_byIP('')",
+ "inputFields": [
+ "address"
+ ],
+ "outputEntityTypes": [
+ "Account"
+ ],
+ "dataSources": [
+ "AzureActivity"
+ ],
+ "inputEntityType": "IP",
+ "displayName": "Least active accounts on Azure from this IP"
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/97a1d515-abf2-4231-9a35-985f9de0bb91",
+ "name": "97a1d515-abf2-4231-9a35-985f9de0bb91",
+ "type": "Microsoft.SecurityInsights/entityQueries",
+ "etag": null,
+ "kind": "Expansion",
+ "properties": {
+ "queryTemplate": "let AccountActivity_byIP = (v_IP_Address:string){\r\n AzureActivity\r\n | where Caller != '' and CallerIpAddress == v_IP_Address\r\n | summarize Account_Aux_StartTime = min(TimeGenerated), Account_Aux_EndTime = max(TimeGenerated), Count = count() by Caller, TenantId\r\n | top 10 by Count desc nulls last \r\n | extend UPN = iff(Caller contains '@', Caller, ''), Account_AadUserId = iff(Caller !contains '@', Caller,'')\r\n | extend Account_Name = split(UPN,'@')[0] , Account_UPNSuffix = split(UPN,'@')[1]\r\n | project Account_Name, Account_UPNSuffix, Account_AadUserId, Account_AadTenantId=TenantId, Account_Aux_StartTime , Account_Aux_EndTime};\r\n AccountActivity_byIP('')",
+ "inputFields": [
+ "address"
+ ],
+ "outputEntityTypes": [
+ "Account"
+ ],
+ "dataSources": [
+ "AzureActivity"
+ ],
+ "inputEntityType": "IP",
+ "displayName": "Most active accounts on Azure from this IP"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json
new file mode 100644
index 000000000000..39969bd0232e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityQueryId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueries/07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "type": "Microsoft.SecurityInsights/entityQueries",
+ "etag": null,
+ "kind": "Expansion",
+ "properties": {
+ "queryTemplate": "let GetParentProcessesOnHost = (v_Host_HostName:string){\r\n SecurityEvent \r\n | where EventID == 4688 \r\n | where isnotempty(ParentProcessName)\r\n | where NewProcessName !contains ':\\\\Windows\\\\System32\\\\conhost.exe' and ParentProcessName !contains ':\\\\Windows\\\\System32\\\\conhost.exe'\r\n and NewProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\csc.exe' and ParentProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\csc.exe'\r\n and NewProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\cvtres.exe' and ParentProcessName !contains ':\\\\Windows\\\\Microsoft.NET\\\\Framework64\\\\v2.0.50727\\\\cvtres.exe'\r\n and NewProcessName!contains ':\\\\Program Files\\\\Microsoft Monitoring Agent\\\\Agent\\\\MonitoringHost.exe' and ParentProcessName !contains ':\\\\Program Files\\\\Microsoft Monitoring Agent\\\\Agent\\\\MonitoringHost.exe'\r\n and ParentProcessName !contains ':\\\\Windows\\\\CCM\\\\CcmExec.exe'\r\n | where(ParentProcessName !contains ':\\\\Windows\\\\System32\\\\svchost.exe' and (NewProcessName !contains ':\\\\Windows\\\\System32\\\\wbem\\\\WmiPrvSE.exe' or NewProcessName !contains ':\\\\Windows\\\\SysWOW64\\\\wbem\\\\WmiPrvSE.exe'))\r\n | where(ParentProcessName !contains ':\\\\Windows\\\\System32\\\\services.exe' and NewProcessName !contains ':\\\\Windows\\\\servicing\\\\TrustedInstaller.exe')\r\n | where toupper(Computer) contains v_Host_HostName or toupper(WorkstationName) contains v_Host_HostName\r\n | summarize min(TimeGenerated), max(TimeGenerated) by Account, Computer, ParentProcessName, NewProcessName, CommandLine, ProcessId\r\n | project min_TimeGenerated, max_TimeGenerated, Account, Computer, ParentProcessName, NewProcessName, CommandLine, ProcessId\r\n | project-rename Process_Host_UnstructuredName=Computer, Process_Account_UnstructuredName=Account, Process_CommandLine=CommandLine, Process_ProcessId=ProcessId, Process_ImageFile_FullPath=NewProcessName, Process_ParentProcess_ImageFile_FullPath=ParentProcessName\r\n | top 10 by min_TimeGenerated asc};\r\n GetParentProcessesOnHost(toupper(''))",
+ "inputFields": [
+ "hostName"
+ ],
+ "outputEntityTypes": [
+ "Process"
+ ],
+ "dataSources": [
+ "SecurityEvent"
+ ],
+ "inputEntityType": "Host",
+ "displayName": "Parent processes running on host"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json
new file mode 100644
index 000000000000..87d0169619d7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json
@@ -0,0 +1,57 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityQueryTemplateId": "07da3cc8-c8ad-4710-a44e-334cdcb7882b"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueryTemplates/07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "name": "07da3cc8-c8ad-4710-a44e-334cdcb7882b",
+ "type": "Microsoft.SecurityInsights/entityQueryTemplate",
+ "kind": "Activity",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "dataTypes": [
+ {
+ "dataType": "AuditLogs"
+ },
+ {
+ "dataType": "SecurityEvent"
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json
new file mode 100644
index 000000000000..f43a9e73c8b2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json
@@ -0,0 +1,105 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "kind": "Activity",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueryTemplates/37ca3555-c135-4a73-a65e-9c1d00323f5d",
+ "name": "37ca3555-c135-4a73-a65e-9c1d00323f5d",
+ "type": "Microsoft.SecurityInsights/entityQueryTemplates",
+ "kind": "Activity",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "dataTypes": [
+ {
+ "dataType": "AuditLogs"
+ },
+ {
+ "dataType": "SecurityEvent"
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entityQueryTemplates/97a1d515-abf2-4231-9a35-985f9de0bb91",
+ "name": "97a1d515-abf2-4231-9a35-985f9de0bb91",
+ "type": "Microsoft.SecurityInsights/entityQueryTemplates",
+ "kind": "Activity",
+ "properties": {
+ "title": "An account was deleted on this host",
+ "content": "On '{{Computer}}' the account '{{TargetAccount}}' was deleted by '{{AddedBy}}'",
+ "description": "Account deleted on host",
+ "queryDefinitions": {
+ "query": "let GetAccountActions = (v_Host_Name:string, v_Host_NTDomain:string, v_Host_DnsDomain:string, v_Host_AzureID:string, v_Host_OMSAgentID:string){\nSecurityEvent\n| where EventID in (4725, 4726, 4767, 4720, 4722, 4723, 4724)\n// parsing for Host to handle variety of conventions coming from data\n| extend Host_HostName = case(\nComputer has '@', tostring(split(Computer, '@')[0]),\nComputer has '\\\\', tostring(split(Computer, '\\\\')[1]),\nComputer has '.', tostring(split(Computer, '.')[0]),\nComputer\n)\n| extend Host_NTDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', tostring(split(Computer, '.')[-2]), \nComputer\n)\n| extend Host_DnsDomain = case(\nComputer has '\\\\', tostring(split(Computer, '\\\\')[0]), \nComputer has '.', strcat_array(array_slice(split(Computer,'.'),-2,-1),'.'), \nComputer\n)\n| where (Host_HostName =~ v_Host_Name and Host_NTDomain =~ v_Host_NTDomain) \nor (Host_HostName =~ v_Host_Name and Host_DnsDomain =~ v_Host_DnsDomain) \nor v_Host_AzureID =~ _ResourceId \nor v_Host_OMSAgentID == SourceComputerId\n| project TimeGenerated, EventID, Activity, Computer, TargetAccount, TargetUserName, TargetDomainName, TargetSid, SubjectUserName, SubjectUserSid, _ResourceId, SourceComputerId\n| extend AddedBy = SubjectUserName\n// Future support for Activities\n| extend timestamp = TimeGenerated, HostCustomEntity = Computer, AccountCustomEntity = TargetAccount\n};\nGetAccountActions('{{Host_HostName}}', '{{Host_NTDomain}}', '{{Host_DnsDomain}}', '{{Host_AzureID}}', '{{Host_OMSAgentID}}')\n \n| where EventID == 4726 "
+ },
+ "inputEntityType": "Host",
+ "requiredInputFieldsSets": [
+ [
+ "Host_HostName",
+ "Host_NTDomain"
+ ],
+ [
+ "Host_HostName",
+ "Host_DnsDomain"
+ ],
+ [
+ "Host_AzureID"
+ ],
+ [
+ "Host_OMSAgentID"
+ ]
+ ],
+ "entitiesFilter": {
+ "Host_OsFamily": [
+ "Windows"
+ ]
+ },
+ "dataTypes": [
+ {
+ "dataType": "AuditLogs"
+ },
+ {
+ "dataType": "SecurityEvent"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/CreateFileImport.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/CreateFileImport.json
new file mode 100644
index 000000000000..8886824c84a0
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/CreateFileImport.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "fileImportId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "fileImport": {
+ "properties": {
+ "source": "mySource",
+ "importFile": {
+ "fileName": "myFile.json",
+ "fileSize": 4653,
+ "fileFormat": "JSON"
+ },
+ "contentType": "StixIndicator",
+ "ingestionMode": "IngestAnyValidRecords"
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/FileImports/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/FileImports",
+ "properties": {
+ "importFile": {
+ "fileName": "myFile.json",
+ "fileSize": 4653,
+ "fileFormat": "JSON",
+ "fileContentUri": "https://sentinelimportswus2.blob.core.windows.net/78c2e51a-3cd3-4ca0-a2d4-e7effb9a05fe/43967a5e-47a7-474e-afb8-2081e9b99ca1/fileName.json?skoid=&sktid=&skt=2022-03-25T21%3A12%3A51Z&ske=2022-03-25T22%3A12%3A51Z&sks=b&skv=2020-10-02&sv=2020-08-04&st=2022-03-25T21%3A12%3A51Z&se=2022-03-25T22%3A12%3A51Z&sr=b&sp=c&sig=",
+ "deleteStatus": "NotDeleted"
+ },
+ "state": "WaitingForUpload",
+ "contentType": "StixIndicator",
+ "ingestionMode": "IngestAnyValidRecords",
+ "totalRecordCount": null,
+ "validRecordCount": null,
+ "ingestedRecordCount": null,
+ "createdTimeUTC": "2022-04-04T20:05:59.847136Z",
+ "filesValidUntilTimeUTC": "2022-04-05T20:05:59.8471361Z",
+ "importValidUntilTimeUTC": "2022-05-04T20:05:59.8471366Z",
+ "source": "mySource"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/FileImports/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/FileImports",
+ "properties": {
+ "importFile": {
+ "fileName": "myFile.json",
+ "fileSize": 4653,
+ "fileFormat": "JSON",
+ "fileContentUri": "https://sentinelimportswus2.blob.core.windows.net/78c2e51a-3cd3-4ca0-a2d4-e7effb9a05fe/43967a5e-47a7-474e-afb8-2081e9b99ca1/fileName.json?skoid=&sktid=&skt=2022-03-25T21%3A12%3A51Z&ske=2022-03-25T22%3A12%3A51Z&sks=b&skv=2020-10-02&sv=2020-08-04&st=2022-03-25T21%3A12%3A51Z&se=2022-03-25T22%3A12%3A51Z&sr=b&sp=c&sig=",
+ "deleteStatus": "NotDeleted"
+ },
+ "state": "WaitingForUpload",
+ "contentType": "StixIndicator",
+ "ingestionMode": "IngestAnyValidRecords",
+ "totalRecordCount": null,
+ "validRecordCount": null,
+ "ingestedRecordCount": null,
+ "createdTimeUTC": "2022-04-04T20:05:59.847136Z",
+ "filesValidUntilTimeUTC": "2022-04-05T20:05:59.8471361Z",
+ "importValidUntilTimeUTC": "2022-05-04T20:05:59.8471366Z",
+ "source": "mySource"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/DeleteFileImport.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/DeleteFileImport.json
new file mode 100644
index 000000000000..80a907b0a8dc
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/DeleteFileImport.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "fileImportId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://management.azure.com/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/FileImports/73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/FileImports/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/FileImports",
+ "properties": {
+ "importFile": {
+ "fileName": "myFile.json",
+ "fileSize": 5146,
+ "fileFormat": "JSON",
+ "fileContentUri": null,
+ "deleteStatus": "NotDeleted"
+ },
+ "state": "Ingested",
+ "contentType": "StixIndicator",
+ "ingestionMode": "IngestAnyValidRecords",
+ "totalRecordCount": 5,
+ "validRecordCount": 5,
+ "ingestedRecordCount": 5,
+ "createdTimeUTC": "2022-03-25T21:02:38.8350631Z",
+ "filesValidUntilTimeUTC": "2022-03-26T21:02:38.8350632Z",
+ "importValidUntilTimeUTC": "2022-04-24T21:02:38.8350636Z",
+ "source": "mySource"
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImportById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImportById.json
new file mode 100644
index 000000000000..a7eb5344622f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImportById.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "fileImportId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/FileImports/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/FileImports",
+ "properties": {
+ "importFile": {
+ "fileName": "myFile.json",
+ "fileSize": 5146,
+ "fileFormat": "JSON",
+ "fileContentUri": "https://sentinelimportswus2.blob.core.windows.net/78c2e51a-3cd3-4ca0-a2d4-e7effb9a05fe/43967a5e-47a7-474e-afb8-2081e9b99ca1/myFile.json?skoid=&sktid=&skt=2022-03-25T21%3A12%3A51Z&ske=2022-03-25T22%3A12%3A51Z&sks=b&skv=2020-10-02&sv=2020-08-04&st=2022-03-25T21%3A12%3A51Z&se=2022-03-25T22%3A12%3A51Z&sr=b&sp=c&sig=",
+ "deleteStatus": "NotDeleted"
+ },
+ "state": "Ingested",
+ "contentType": "StixIndicator",
+ "ingestionMode": "IngestAnyValidRecords",
+ "totalRecordCount": 5,
+ "validRecordCount": 5,
+ "ingestedRecordCount": 5,
+ "createdTimeUTC": "2022-03-25T21:02:38.8350631Z",
+ "filesValidUntilTimeUTC": "2022-03-26T21:02:38.8350632Z",
+ "importValidUntilTimeUTC": "2022-04-24T21:02:38.8350636Z",
+ "source": "mySource"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImports.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImports.json
new file mode 100644
index 000000000000..585adade78bd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/fileImports/GetFileImports.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "$orderby": "properties/createdTimeUtc desc",
+ "$top": 1
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/FileImports/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "type": "Microsoft.SecurityInsights/FileImports",
+ "properties": {
+ "importFile": {
+ "fileName": "fileName.json",
+ "fileSize": 5146,
+ "fileFormat": "JSON",
+ "fileContentUri": null,
+ "deleteStatus": "NotDeleted"
+ },
+ "state": "Ingested",
+ "contentType": "StixIndicator",
+ "ingestionMode": "IngestAnyValidRecords",
+ "totalRecordCount": 5,
+ "validRecordCount": 5,
+ "ingestedRecordCount": 5,
+ "createdTimeUTC": "2022-03-25T21:02:38.8350631Z",
+ "filesValidUntilTimeUTC": "2022-03-26T21:02:38.8350632Z",
+ "importValidUntilTimeUTC": "2022-04-24T21:02:38.8350636Z",
+ "source": "mySource"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHunt.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHunt.json
new file mode 100644
index 000000000000..24f15b1623b7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHunt.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "hunt": {
+ "properties": {
+ "displayName": "Log4J new hunt",
+ "description": "Log4J Hunt Description",
+ "status": "New",
+ "hypothesisStatus": "Unknown",
+ "attackTactics": [
+ "Reconnaissance"
+ ],
+ "attackTechniques": [
+ "T1595"
+ ],
+ "labels": [
+ "Label1",
+ "Label2"
+ ],
+ "owner": {
+ "objectId": "873b5263-5d34-4149-b356-ad341b01e123"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "name": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "etag": "\"de00c408-0000-0c00-0000-62741e350000\"",
+ "type": "Microsoft.SecurityInsights/hunts",
+ "properties": {
+ "displayName": "Log4J new hunt",
+ "description": "Log4J Hunt Description",
+ "status": "New",
+ "hypothesisStatus": "Unknown",
+ "attackTactics": [
+ "Reconnaissance"
+ ],
+ "attackTechniques": [
+ "T1595"
+ ],
+ "huntStartTimeUtc": "2022-03-11T09:47:15.438Z",
+ "huntEndTimeUtc": "2022-03-12T09:47:15.438Z",
+ "labels": [
+ "Label1",
+ "Label2"
+ ],
+ "owner": {
+ "objectId": "873b5263-5d34-4149-b356-ad341b01e123",
+ "email": "testemail@microsoft.com",
+ "assignedTo": null,
+ "userPrincipalName": "John Doe",
+ "ownerType": "User"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "name": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "etag": "\"de00c408-0000-0c00-0000-62741e350000\"",
+ "type": "Microsoft.SecurityInsights/hunts",
+ "properties": {
+ "displayName": "Log4J new hunt",
+ "description": "Log4J Hunt Description",
+ "status": "New",
+ "hypothesisStatus": "Unknown",
+ "attackTactics": [
+ "Reconnaissance"
+ ],
+ "attackTechniques": [
+ "T1595"
+ ],
+ "huntSequenceNumber": 0,
+ "huntStartTimeUtc": "2022-03-11T09:47:15.438Z",
+ "huntEndTimeUtc": "2022-03-12T09:47:15.438Z",
+ "labels": [
+ "Label1",
+ "Label2"
+ ],
+ "owner": {
+ "objectId": "873b5263-5d34-4149-b356-ad341b01e123",
+ "email": "testemail@microsoft.com",
+ "assignedTo": null,
+ "userPrincipalName": "John Doe",
+ "ownerType": "User"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntComment.json
new file mode 100644
index 000000000000..19bc47b12c50
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntComment.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "huntCommentId": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "huntComment": {
+ "properties": {
+ "message": "This is a test comment."
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/comments/2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "etag": "\"3102f74d-0000-0c00-0000-629e6e050000\"",
+ "type": "Microsoft.SecurityInsights/hunts/comments",
+ "systemData": {
+ "createdAt": "2021-08-15T16:42:38.8709453Z",
+ "createdBy": "testuser@microsoft.com",
+ "createdByType": "User",
+ "lastModifiedAt": "2021-08-19T16:42:38.8709453Z",
+ "lastModifiedBy": "testuser@microsoft.com",
+ "lastModifiedByType": "User"
+ },
+ "properties": {
+ "message": "This is a test comment."
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/comments/2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "etag": "\"3102f74d-0000-0c00-0000-629e6e050000\"",
+ "type": "Microsoft.SecurityInsights/hunts/comments",
+ "systemData": {
+ "createdAt": "2021-08-15T16:42:38.8709453Z",
+ "createdBy": "testuser@microsoft.com",
+ "createdByType": "User",
+ "lastModifiedAt": "2021-08-19T16:42:38.8709453Z",
+ "lastModifiedBy": "testuser@microsoft.com",
+ "lastModifiedByType": "User"
+ },
+ "properties": {
+ "message": "This is a test comment."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntRelation.json
new file mode 100644
index 000000000000..8a9080cf7633
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/CreateHuntRelation.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "huntRelationId": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "huntRelation": {
+ "properties": {
+ "relatedResourceId": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/Bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "labels": [
+ "Test Label"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/relations/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "etag": "\"26012da2-0000-0c00-0000-627ad2760000\"",
+ "type": "Microsoft.SecurityInsights/hunts/relations",
+ "properties": {
+ "relatedResourceId": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/Bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/Bookmarks",
+ "labels": [
+ "Test Label"
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/relations/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "etag": "\"26012da2-0000-0c00-0000-627ad2760000\"",
+ "type": "Microsoft.SecurityInsights/hunts/relations",
+ "properties": {
+ "relatedResourceId": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/Bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/Bookmarks",
+ "labels": [
+ "Test Label"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHunt.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHunt.json
new file mode 100644
index 000000000000..ae82f418d425
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHunt.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntComment.json
new file mode 100644
index 000000000000..4e36f0a6b4f8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntComment.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "huntCommentId": "2216d0e1-91e3-4902-89fd-d2df8c123456"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntRelation.json
new file mode 100644
index 000000000000..58c6828c190e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/DeleteHuntRelation.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "huntRelationId": "2216d0e1-91e3-4902-89fd-d2df8c535096"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntById.json
new file mode 100644
index 000000000000..9b935b823ea0
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntById.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "name": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "etag": "\"de00c408-0000-0c00-0000-62741e350000\"",
+ "type": "Microsoft.SecurityInsights/hunts",
+ "properties": {
+ "displayName": "Log4J new hunt ",
+ "description": "Log4J Hunt Description",
+ "status": "New",
+ "hypothesisStatus": "Unknown",
+ "attackTactics": [
+ "Reconnaissance"
+ ],
+ "attackTechniques": [
+ "T1595"
+ ],
+ "labels": [
+ "Label1",
+ "Label2"
+ ],
+ "owner": {
+ "objectId": "873b5263-5d34-4149-b356-ad341b01e123",
+ "email": "testemail@microsoft.com",
+ "assignedTo": null,
+ "userPrincipalName": "John Doe",
+ "ownerType": "User"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntCommentById.json
new file mode 100644
index 000000000000..fea49ec674ff
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntCommentById.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "huntCommentId": "2216d0e1-91e3-4902-89fd-d2df8c535096"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/comments/2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "etag": "\"3102f74d-0000-0c00-0000-629e6e050000\"",
+ "type": "Microsoft.SecurityInsights/hunts/comments",
+ "systemData": {
+ "createdAt": "2021-08-15T16:42:38.8709453Z",
+ "createdBy": "testuser@microsoft.com",
+ "createdByType": "User",
+ "lastModifiedAt": "2021-08-19T16:42:38.8709453Z",
+ "lastModifiedBy": "testuser@microsoft.com",
+ "lastModifiedByType": "User"
+ },
+ "properties": {
+ "message": "This is a comment."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntComments.json
new file mode 100644
index 000000000000..3aa28d5e92fd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntComments.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/comments/2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c123456",
+ "etag": "\"3102f74d-0000-0c00-0000-629e6e050000\"",
+ "type": "Microsoft.SecurityInsights/hunts/comments",
+ "properties": {
+ "message": "This is a test comment."
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelationById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelationById.json
new file mode 100644
index 000000000000..1bca169f7261
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelationById.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f",
+ "huntRelationId": "2216d0e1-91e3-4902-89fd-d2df8c535096"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/relations/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "etag": "\"26012da2-0000-0c00-0000-627ad2760000\"",
+ "type": "Microsoft.SecurityInsights/hunts/relations",
+ "properties": {
+ "relatedResourceId": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/Bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/Bookmarks",
+ "labels": [
+ "label1"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelations.json
new file mode 100644
index 000000000000..2a7363236ea8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHuntRelations.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "huntId": "163e7b2a-a2ec-4041-aaba-d878a38f265f"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/hunts/163e7b2a-a2ec-4041-aaba-d878a38f265f/relations/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "name": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "etag": "\"26012da2-0000-0c00-0000-627ad2760000\"",
+ "type": "Microsoft.SecurityInsights/hunts/relations",
+ "properties": {
+ "relatedResourceId": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirint/providers/Microsoft.SecurityInsights/Bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/Bookmarks",
+ "labels": [
+ "label1"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHunts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHunts.json
new file mode 100644
index 000000000000..445dd80066b3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/hunts/GetHunts.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/hunts/b372ee75-2cad-4b71-8917-d5d5df9315b5",
+ "name": "b372ee75-2cad-4b71-8917-d5d5df9315b5",
+ "etag": "\"de00c408-0000-0c00-0000-62741e350000\"",
+ "type": "Microsoft.SecurityInsights/hunts",
+ "properties": {
+ "displayName": "Log4J new hunt",
+ "description": "Log4J Hunt Description",
+ "status": "New",
+ "hypothesisStatus": "Unknown",
+ "attackTactics": [
+ "Reconnaissance"
+ ],
+ "attackTechniques": [
+ "T1595"
+ ],
+ "labels": [
+ "Label1",
+ "Label2"
+ ],
+ "owner": {
+ "objectId": "873b5263-5d34-4149-b356-ad341b01e123",
+ "email": "testemail@microsoft.com",
+ "assignedTo": null,
+ "userPrincipalName": "John Doe",
+ "ownerType": "User"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json
new file mode 100644
index 000000000000..0e22590b087f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "69a30280-6a4c-4aa7-9af0-5d63f335d600"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRG/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Entities/baa8a239-6fde-4ab7-a093-d09f7b75c58c",
+ "name": "baa8a239-6fde-4ab7-a093-d09f7b75c58c",
+ "type": "Microsoft.SecurityInsights/Entities",
+ "kind": "SecurityAlert",
+ "properties": {
+ "systemAlertId": "baa8a239-6fde-4ab7-a093-d09f7b75c58c",
+ "tactics": [],
+ "alertDisplayName": "myAlert",
+ "confidenceLevel": "Unknown",
+ "severity": "Low",
+ "vendorName": "Microsoft",
+ "productName": "Azure Security Center",
+ "alertType": "myAlert",
+ "processingEndTime": "2020-07-20T18:21:53.615Z",
+ "status": "New",
+ "endTimeUtc": "2020-07-20T18:21:53.615Z",
+ "startTimeUtc": "2020-07-20T18:21:53.615Z",
+ "timeGenerated": "2020-07-20T18:21:53.615Z",
+ "resourceIdentifiers": [
+ {
+ "type": "LogAnalytics",
+ "workspaceId": "c8c99641-985d-4e4e-8e91-fb3466cd0e5b",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroup": "myRG"
+ }
+ ],
+ "additionalData": {
+ "alertMessageEnqueueTime": "2020-07-20T18:21:57.304Z"
+ },
+ "friendlyName": "myAlert"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json
new file mode 100644
index 000000000000..7bd6aa0fb7ee
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "69a30280-6a4c-4aa7-9af0-5d63f335d600"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "name": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "type": "Microsoft.SecurityInsights/Entities",
+ "kind": "Bookmark",
+ "properties": {
+ "displayName": "SecurityEvent - 868f40f4698d",
+ "created": "2020-06-17T15:34:01.426+00:00",
+ "updated": "2020-06-17T15:34:01.426+00:00",
+ "createdBy": {
+ "objectId": "b03ca914-5eb6-45e5-9417-fe0797c372fd",
+ "email": "user@contoso.com",
+ "name": "user"
+ },
+ "updatedBy": {
+ "objectId": "b03ca914-5eb6-45e5-9417-fe0797c372fd",
+ "email": "user@contoso.com",
+ "name": "user"
+ },
+ "eventTime": "2020-06-17T15:34:01.426+00:00",
+ "labels": [],
+ "query": "SecurityEvent\r\n| take 1\n",
+ "queryResult": "{\"TimeGenerated\":\"2020-05-24T01:24:25.67Z\",\"Account\":\"\\\\ADMINISTRATOR\",\"AccountType\":\"User\",\"Computer\":\"SecurityEvents\",\"EventSourceName\":\"Microsoft-Windows-Security-Auditing\",\"Channel\":\"Security\",\"Task\":12544,\"Level\":\"16\",\"EventID\":4625,\"Activity\":\"4625 - An account failed to log on.\",\"AuthenticationPackageName\":\"NTLM\",\"FailureReason\":\"%%2313\",\"IpAddress\":\"176.113.115.73\",\"IpPort\":\"0\",\"LmPackageName\":\"-\",\"LogonProcessName\":\"NtLmSsp \",\"LogonType\":3,\"LogonTypeName\":\"3 - Network\",\"Process\":\"-\",\"ProcessId\":\"0x0\",\"__entityMapping\":{\"\\\\ADMINISTRATOR\":\"Account\",\"SecurityEvents\":\"Host\"}}",
+ "additionalData": {
+ "eTag": "\"3b00acab-0000-0d00-0000-5f15e4ed0000\"",
+ "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812"
+ },
+ "friendlyName": "SecurityEvent - 868f40f4698d"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json
new file mode 100644
index 000000000000..370cc644604f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "incidentComment": {
+ "properties": {
+ "message": "Some message"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/comments",
+ "properties": {
+ "message": "Some message",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T13:15:30Z",
+ "author": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/comments",
+ "properties": {
+ "message": "Some message",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T13:15:30Z",
+ "author": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json
new file mode 100644
index 000000000000..7840e983a49a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json
new file mode 100644
index 000000000000..aca611f53c59
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json
@@ -0,0 +1,31 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/comments",
+ "properties": {
+ "message": "Some message",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T11:10:30Z",
+ "author": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json
new file mode 100644
index 000000000000..42b2f0a13252
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/comments",
+ "properties": {
+ "message": "Some message",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T11:10:30Z",
+ "author": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json
new file mode 100644
index 000000000000..61d2bbc3c570
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json
@@ -0,0 +1,34 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "69a30280-6a4c-4aa7-9af0-5d63f335d600"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "entities": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Entities/e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "name": "e1d3d618-e11f-478b-98e3-bb381539a8e1",
+ "type": "Microsoft.SecurityInsights/Entities",
+ "kind": "Account",
+ "properties": {
+ "accountName": "administrator",
+ "ntDomain": "domain",
+ "friendlyName": "administrator"
+ }
+ }
+ ],
+ "metaData": [
+ {
+ "entityKind": "Account",
+ "count": 1
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json
new file mode 100644
index 000000000000..4b5decdba660
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json
@@ -0,0 +1,73 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incidentTaskId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "incidentTask": {
+ "properties": {
+ "title": "Task title",
+ "description": "Task description",
+ "status": "New"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/tasks/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/tasks",
+ "properties": {
+ "title": "Task title",
+ "description": "Task description",
+ "status": "New",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T11:10:30Z",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/tasks/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/tasks",
+ "properties": {
+ "title": "Task title",
+ "description": "Task description",
+ "status": "New",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T11:10:30Z",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json
new file mode 100644
index 000000000000..623a6b9bb5dd
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incidentTaskId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json
new file mode 100644
index 000000000000..7fd6c8588581
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incidentTaskId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/tasks/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/tasks",
+ "properties": {
+ "title": "Task title",
+ "description": "Task description",
+ "status": "New",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T11:10:30Z",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json
new file mode 100644
index 000000000000..7596441210f4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/tasks/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "type": "Microsoft.SecurityInsights/incidents/tasks",
+ "properties": {
+ "title": "Task title",
+ "description": "Task description",
+ "status": "New",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "lastModifiedTimeUtc": "2019-01-03T11:10:30Z",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ },
+ "lastModifiedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "name": "john doe",
+ "userPrincipalName": "john@contoso.com"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json
new file mode 100644
index 000000000000..32a8f9ab7a36
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "69a30280-6a4c-4aa7-9af0-5d63f335d600",
+ "teamProperties": {
+ "teamName": "Team name",
+ "teamDescription": "Team description",
+ "groupIds": null,
+ "memberIds": null
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "teamId": "99978838-9bda-4ad4-8f93-4cf7ebc50ca5",
+ "primaryChannelUrl": "https://teams.microsoft.com/l/team/19:80bf3b25485b4067b7d2dc4eec9e1578%40thread.tacv2/conversations?groupId=99978838-9bda-4ad4-8f93-4cf7ebc50ca5&tenantId=5b5a146c-eba8-46af-96f8-e31b50d15a3f",
+ "teamCreationTimeUtc": "2021-03-15T17:08:21.995Z",
+ "name": "Team name",
+ "description": "Team description"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_CreateOrUpdate.json
new file mode 100644
index 000000000000..2b5095a02739
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_CreateOrUpdate.json
@@ -0,0 +1,136 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "incident": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "title": "My incident",
+ "description": "This is a demo incident",
+ "severity": "High",
+ "status": "Closed",
+ "classification": "FalsePositive",
+ "classificationReason": "InaccurateData",
+ "classificationComment": "Not a malicious activity",
+ "owner": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": null,
+ "assignedTo": null,
+ "userPrincipalName": null,
+ "ownerType": null
+ },
+ "firstActivityTimeUtc": "2019-01-01T13:00:30Z",
+ "lastActivityTimeUtc": "2019-01-01T13:05:30Z"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"",
+ "type": "Microsoft.SecurityInsights/incidents",
+ "properties": {
+ "title": "My incident",
+ "description": "This is a demo incident",
+ "severity": "High",
+ "status": "Closed",
+ "classification": "FalsePositive",
+ "classificationReason": "InaccurateData",
+ "classificationComment": "Not a malicious activity",
+ "owner": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "assignedTo": "john doe",
+ "userPrincipalName": "john@contoso.com",
+ "ownerType": "User"
+ },
+ "labels": [],
+ "firstActivityTimeUtc": "2019-01-01T13:00:30Z",
+ "lastActivityTimeUtc": "2019-01-01T13:05:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "incidentNumber": 3177,
+ "additionalData": {
+ "alertsCount": 0,
+ "bookmarksCount": 0,
+ "commentsCount": 3,
+ "alertProductNames": [],
+ "tactics": [
+ "InitialAccess",
+ "Persistence"
+ ],
+ "techniques": [
+ "T1091",
+ "T1133",
+ "T1053"
+ ],
+ "providerIncidentUrl": "https://security.microsoft.com/incidents/3177?tid=5b5a146c-eba8-46af-96f8-e31b50d15a3f"
+ },
+ "relatedAnalyticRuleIds": [
+ "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7"
+ ],
+ "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "providerName": "Azure Sentinel",
+ "providerIncidentId": "3177"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"",
+ "type": "Microsoft.SecurityInsights/incidents",
+ "properties": {
+ "title": "My incident",
+ "description": "This is a demo incident",
+ "severity": "High",
+ "status": "Closed",
+ "classification": "FalsePositive",
+ "classificationReason": "InaccurateData",
+ "classificationComment": "Not a malicious activity",
+ "owner": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "assignedTo": "john doe",
+ "userPrincipalName": "john@contoso.com",
+ "ownerType": "User"
+ },
+ "labels": [],
+ "firstActivityTimeUtc": "2019-01-01T13:00:30Z",
+ "lastActivityTimeUtc": "2019-01-01T13:05:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "incidentNumber": 3177,
+ "additionalData": {
+ "alertsCount": 0,
+ "bookmarksCount": 0,
+ "commentsCount": 3,
+ "alertProductNames": [],
+ "tactics": [
+ "InitialAccess",
+ "Persistence"
+ ],
+ "techniques": [
+ "T1091",
+ "T1133",
+ "T1053"
+ ],
+ "providerIncidentUrl": "https://security.microsoft.com/incidents/3177?tid=5b5a146c-eba8-46af-96f8-e31b50d15a3f"
+ },
+ "relatedAnalyticRuleIds": [
+ "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7"
+ ],
+ "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "providerName": "Azure Sentinel",
+ "providerIncidentId": "3177"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Delete.json
new file mode 100644
index 000000000000..a46a232d537d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Delete.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Get.json
new file mode 100644
index 000000000000..a917c7e3c0b0
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_Get.json
@@ -0,0 +1,63 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/incidents",
+ "properties": {
+ "title": "My incident",
+ "description": "This is a demo incident",
+ "severity": "High",
+ "status": "Closed",
+ "classification": "FalsePositive",
+ "classificationReason": "InaccurateData",
+ "classificationComment": "Not a malicious activity",
+ "owner": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "assignedTo": "john doe",
+ "userPrincipalName": "john@contoso.com",
+ "ownerType": "User"
+ },
+ "labels": [],
+ "firstActivityTimeUtc": "2019-01-01T13:00:30Z",
+ "lastActivityTimeUtc": "2019-01-01T13:05:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "incidentNumber": 3177,
+ "additionalData": {
+ "alertsCount": 0,
+ "bookmarksCount": 0,
+ "commentsCount": 3,
+ "alertProductNames": [],
+ "tactics": [
+ "InitialAccess",
+ "Persistence"
+ ],
+ "techniques": [
+ "T1091",
+ "T1133",
+ "T1053"
+ ],
+ "providerIncidentUrl": "https://security.microsoft.com/incidents/3177?tid=5b5a146c-eba8-46af-96f8-e31b50d15a3f"
+ },
+ "relatedAnalyticRuleIds": [
+ "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7"
+ ],
+ "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "providerName": "Azure Sentinel",
+ "providerIncidentId": "3177"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_List.json
new file mode 100644
index 000000000000..4d71dac3fca7
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/Incidents_List.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "$orderby": "properties/createdTimeUtc desc",
+ "$top": 1
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/incidents",
+ "properties": {
+ "title": "My incident",
+ "description": "This is a demo incident",
+ "severity": "High",
+ "status": "Closed",
+ "classification": "FalsePositive",
+ "classificationReason": "InaccurateData",
+ "classificationComment": "Not a malicious activity",
+ "owner": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john.doe@contoso.com",
+ "assignedTo": "john doe",
+ "userPrincipalName": "john@contoso.com",
+ "ownerType": "User"
+ },
+ "labels": [],
+ "firstActivityTimeUtc": "2019-01-01T13:00:30Z",
+ "lastActivityTimeUtc": "2019-01-01T13:05:30Z",
+ "lastModifiedTimeUtc": "2019-01-01T13:15:30Z",
+ "createdTimeUtc": "2019-01-01T13:15:30Z",
+ "incidentNumber": 3177,
+ "additionalData": {
+ "alertsCount": 0,
+ "bookmarksCount": 0,
+ "commentsCount": 3,
+ "alertProductNames": [],
+ "tactics": [
+ "InitialAccess",
+ "Persistence"
+ ],
+ "techniques": [
+ "T1091",
+ "T1133",
+ "T1053"
+ ],
+ "providerIncidentUrl": "https://security.microsoft.com/incidents/3177?tid=5b5a146c-eba8-46af-96f8-e31b50d15a3f"
+ },
+ "relatedAnalyticRuleIds": [
+ "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7"
+ ],
+ "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5",
+ "providerName": "Azure Sentinel",
+ "providerIncidentId": "3177"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/CreateIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/CreateIncidentRelation.json
new file mode 100644
index 000000000000..1529ac0fc9c4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/CreateIncidentRelation.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "relation": {
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/incidents/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/bookmarks"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/incidents/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/bookmarks"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/DeleteIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/DeleteIncidentRelation.json
new file mode 100644
index 000000000000..ce88cb5f4f64
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/DeleteIncidentRelation.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetAllIncidentRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetAllIncidentRelations.json
new file mode 100644
index 000000000000..2aa36ddf7c7a
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetAllIncidentRelations.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/incidents/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/bookmarks"
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/9673a17d-8bc7-4ca6-88ee-38a4f3efc032",
+ "name": "9673a17d-8bc7-4ca6-88ee-38a4f3efc032",
+ "type": "Microsoft.SecurityInsights/incidents/relations",
+ "etag": "6f714025-dd7c-46aa-b5d0-b9857488d060",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/1dd267cd-8a1f-4f6f-b92c-da43ac8819af",
+ "relatedResourceName": "1dd267cd-8a1f-4f6f-b92c-da43ac8819af",
+ "relatedResourceType": "Microsoft.SecurityInsights/entities",
+ "relatedResourceKind": "SecurityAlert"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetIncidentRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetIncidentRelationByName.json
new file mode 100644
index 000000000000..1141ceb49480
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/incidents/relations/GetIncidentRelationByName.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014",
+ "type": "Microsoft.SecurityInsights/incidents/relations",
+ "etag": "190057d0-0000-0d00-0000-5c6f5adb0000",
+ "properties": {
+ "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096",
+ "relatedResourceType": "Microsoft.SecurityInsights/bookmarks"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Entities_RunPlaybook.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Entities_RunPlaybook.json
new file mode 100644
index 000000000000..b6f08f06d8d8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Entities_RunPlaybook.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "entityIdentifier": "72e01a22-5cd2-4139-a149-9f2736ff2ar2",
+ "manualTriggerRequestBody": {
+ "logicAppsResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/my-playbook-name",
+ "tenantId": "qwere6b2-9ac0-4464-9919-dccaee2e4ddd",
+ "incidentArmId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5"
+ }
+ },
+ "responses": {
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json
new file mode 100644
index 000000000000..5dd17c7cddda
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "incidentIdentifier": "73e01a99-5cd7-4139-a149-9f2736ff2ar4",
+ "manualTriggerRequestBody": {
+ "logicAppsResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/my-playbook-name",
+ "tenantId": "qwere6b2-9ac0-4464-9919-dccaee2e4ddd"
+ }
+ },
+ "responses": {
+ "204": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/DeleteMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/DeleteMetadata.json
new file mode 100644
index 000000000000..e617152ca00f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/DeleteMetadata.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "metadataName": "metadataName"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadata.json
new file mode 100644
index 000000000000..2f05acc79aa1
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadata.json
@@ -0,0 +1,64 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName1",
+ "name": "metadataName1",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName2",
+ "name": "metadataName2",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "f5160682-0e10-4e23-8fcf-df3df49c5522",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName2",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.Insights/workbooks/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName3",
+ "name": "metadataName3",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "f593501d-ec01-4057-8146-a1de35c461ef",
+ "version": "1.0.0.0",
+ "kind": "Workbook",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.Insights/workbooks/workbookName",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadataOData.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadataOData.json
new file mode 100644
index 000000000000..dab726670351
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetAllMetadataOData.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ODataFilter": "properties/kind eq 'AnalyticsRule'",
+ "ODataOrderBy": "properties/parentId desc",
+ "ODataSkip": "2",
+ "ODataTop": "2"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName1",
+ "name": "metadataName1",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName1",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName2",
+ "name": "metadataName2",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "f5160682-0e10-4e23-8fcf-df3df49c5522",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName2",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetMetadata.json
new file mode 100644
index 000000000000..ef36656ccb30
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/GetMetadata.json
@@ -0,0 +1,104 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "2e1dc338-d04d-4443-b721-037eff4fdcac",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "metadataName": "metadataName"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName",
+ "name": "metadataName",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ },
+ "author": {
+ "name": "User Name",
+ "email": "email@microsoft.com"
+ },
+ "support": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/",
+ "tier": "Partner"
+ },
+ "dependencies": {
+ "operator": "AND",
+ "criteria": [
+ {
+ "operator": "OR",
+ "criteria": [
+ {
+ "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593",
+ "kind": "DataConnector",
+ "version": "2.0"
+ }
+ ]
+ },
+ {
+ "kind": "Playbook",
+ "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab",
+ "version": "1.0"
+ },
+ {
+ "kind": "Parser",
+ "contentId": "21ba424a-9438-4444-953a-7059539a7a1b"
+ }
+ ]
+ },
+ "categories": {
+ "domains": [
+ "Application",
+ "Security – Insider Threat"
+ ],
+ "verticals": [
+ "Healthcare"
+ ]
+ },
+ "providers": [
+ "Amazon",
+ "Microsoft"
+ ],
+ "firstPublishDate": "2021-05-18",
+ "lastPublishDate": "2021-05-18",
+ "previewImages": [
+ "firstImage.png",
+ "secondImage.jpeg"
+ ],
+ "previewImagesDark": [
+ "firstImageDark.png",
+ "secondImageDark.jpeg"
+ ],
+ "contentSchemaVersion": "2.0",
+ "customVersion": "1.0",
+ "threatAnalysisTactics": [
+ "reconnaissance",
+ "commandandcontrol"
+ ],
+ "threatAnalysisTechniques": [
+ "T1548",
+ "T1548.001"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PatchMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PatchMetadata.json
new file mode 100644
index 000000000000..1dcd19f999ce
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PatchMetadata.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "metadataName": "metadataName",
+ "metadataPatch": {
+ "properties": {
+ "author": {
+ "name": "User Name",
+ "email": "email@microsoft.com"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName",
+ "name": "metadataName",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName",
+ "author": {
+ "name": "User Name",
+ "email": "email@microsoft.com"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadata.json
new file mode 100644
index 000000000000..f7c6f7f9209b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadata.json
@@ -0,0 +1,286 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "metadataName": "metadataName",
+ "metadata": {
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ },
+ "author": {
+ "name": "User Name",
+ "email": "email@microsoft.com"
+ },
+ "support": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/",
+ "tier": "Partner"
+ },
+ "dependencies": {
+ "operator": "AND",
+ "criteria": [
+ {
+ "operator": "OR",
+ "criteria": [
+ {
+ "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756",
+ "kind": "DataConnector",
+ "name": "Microsoft Defender for Endpoint"
+ },
+ {
+ "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593",
+ "kind": "DataConnector",
+ "version": "2.0"
+ }
+ ]
+ },
+ {
+ "kind": "Playbook",
+ "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab",
+ "version": "1.0"
+ },
+ {
+ "kind": "Parser",
+ "contentId": "21ba424a-9438-4444-953a-7059539a7a1b"
+ }
+ ]
+ },
+ "categories": {
+ "domains": [
+ "Application",
+ "Security – Insider Threat"
+ ],
+ "verticals": [
+ "Healthcare"
+ ]
+ },
+ "providers": [
+ "Amazon",
+ "Microsoft"
+ ],
+ "firstPublishDate": "2021-05-18",
+ "lastPublishDate": "2021-05-18",
+ "previewImages": [
+ "firstImage.png",
+ "secondImage.jpeg"
+ ],
+ "previewImagesDark": [
+ "firstImageDark.png",
+ "secondImageDark.jpeg"
+ ],
+ "contentSchemaVersion": "2.0",
+ "customVersion": "1.0",
+ "threatAnalysisTactics": [
+ "reconnaissance",
+ "commandandcontrol"
+ ],
+ "threatAnalysisTechniques": [
+ "T1548",
+ "T1548.001"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName",
+ "name": "metadataName",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ },
+ "author": {
+ "name": "User Name",
+ "email": "email@microsoft.com"
+ },
+ "support": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/",
+ "tier": "Partner"
+ },
+ "dependencies": {
+ "operator": "AND",
+ "criteria": [
+ {
+ "operator": "OR",
+ "criteria": [
+ {
+ "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593",
+ "kind": "DataConnector",
+ "version": "2.0"
+ }
+ ]
+ },
+ {
+ "kind": "Playbook",
+ "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab",
+ "version": "1.0"
+ },
+ {
+ "kind": "Parser",
+ "contentId": "21ba424a-9438-4444-953a-7059539a7a1b"
+ }
+ ]
+ },
+ "categories": {
+ "domains": [
+ "Application",
+ "Security – Insider Threat"
+ ],
+ "verticals": [
+ "Healthcare"
+ ]
+ },
+ "providers": [
+ "Amazon",
+ "Microsoft"
+ ],
+ "firstPublishDate": "2021-05-18",
+ "lastPublishDate": "2021-05-18",
+ "previewImages": [
+ "firstImage.png",
+ "secondImage.jpeg"
+ ],
+ "previewImagesDark": [
+ "firstImageDark.png",
+ "secondImageDark.jpeg"
+ ],
+ "contentSchemaVersion": "2.0",
+ "customVersion": "1.0",
+ "threatAnalysisTactics": [
+ "reconnaissance",
+ "commandandcontrol"
+ ],
+ "threatAnalysisTechniques": [
+ "T1548",
+ "T1548.001"
+ ]
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName",
+ "name": "metadataName",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "version": "1.0.0.0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName",
+ "source": {
+ "kind": "Solution",
+ "name": "Contoso Solution 1.0",
+ "sourceId": "b688a130-76f4-4a07-bf57-762222a3cadf"
+ },
+ "author": {
+ "name": "User Name",
+ "email": "email@microsoft.com"
+ },
+ "support": {
+ "name": "Microsoft",
+ "email": "support@microsoft.com",
+ "link": "https://support.microsoft.com/",
+ "tier": "Partner"
+ },
+ "dependencies": {
+ "operator": "AND",
+ "criteria": [
+ {
+ "operator": "OR",
+ "criteria": [
+ {
+ "contentId": "045d06d0-ee72-4794-aba4-cf5646e4c756",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "dbfcb2cc-d782-40ef-8d94-fe7af58a6f2d",
+ "kind": "DataConnector"
+ },
+ {
+ "contentId": "de4dca9b-eb37-47d6-a56f-b8b06b261593",
+ "kind": "DataConnector",
+ "version": "2.0"
+ }
+ ]
+ },
+ {
+ "kind": "Playbook",
+ "contentId": "31ee11cc-9989-4de8-b176-5e0ef5c4dbab",
+ "version": "1.0"
+ },
+ {
+ "kind": "Parser",
+ "contentId": "21ba424a-9438-4444-953a-7059539a7a1b"
+ }
+ ]
+ },
+ "categories": {
+ "domains": [
+ "Application",
+ "Security – Insider Threat"
+ ],
+ "verticals": [
+ "Healthcare"
+ ]
+ },
+ "providers": [
+ "Amazon",
+ "Microsoft"
+ ],
+ "firstPublishDate": "2021-05-18",
+ "lastPublishDate": "2021-05-18",
+ "previewImages": [
+ "firstImage.png",
+ "secondImage.jpeg"
+ ],
+ "previewImagesDark": [
+ "firstImageDark.png",
+ "secondImageDark.jpeg"
+ ],
+ "contentSchemaVersion": "2.0",
+ "customVersion": "1.0",
+ "threatAnalysisTactics": [
+ "reconnaissance",
+ "commandandcontrol"
+ ],
+ "threatAnalysisTechniques": [
+ "T1548",
+ "T1548.001"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadataMinimal.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadataMinimal.json
new file mode 100644
index 000000000000..ea6cb4df52f8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/metadata/PutMetadataMinimal.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "metadataName": "metadataName",
+ "metadata": {
+ "properties": {
+ "contentId": "c00ee137-7475-47c8-9cce-ec6f0f1bedd0",
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName"
+ }
+ }
+ },
+ "responses": {
+ "201": {
+ "body": {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName",
+ "name": "metadataName",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "id": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/metadata/metadataName",
+ "name": "metadataName",
+ "type": "Microsoft.SecurityInsights/metadata",
+ "properties": {
+ "kind": "AnalyticsRule",
+ "parentId": "/subscriptions/2e1dc338-d04d-4443-b721-037eff4fdcac/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/ruleName"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/DeleteOfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/DeleteOfficeConsents.json
new file mode 100644
index 000000000000..385638b936d8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/DeleteOfficeConsents.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "consentId": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsents.json
new file mode 100644
index 000000000000..f75931ab3d46
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsents.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/officeConsents/04e5fd05-ff86-4b97-b8d2-1c20933cb46c",
+ "name": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c",
+ "type": "Microsoft.SecurityInsights/officeConsents",
+ "properties": {
+ "tenantId": "5460b3d2-1e7b-4757-ad54-c858c7e3f252",
+ "consentId": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsentsById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsentsById.json
new file mode 100644
index 000000000000..6a982e4155d4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/officeConsents/GetOfficeConsentsById.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "consentId": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/officeConsents/04e5fd05-ff86-4b97-b8d2-1c20933cb46c",
+ "name": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c",
+ "type": "Microsoft.SecurityInsights/officeConsents",
+ "properties": {
+ "tenantId": "5460b3d2-1e7b-4757-ad54-c858c7e3f252",
+ "consentId": "04e5fd05-ff86-4b97-b8d2-1c20933cb46c"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json
new file mode 100644
index 000000000000..6e98dd674fff
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json
@@ -0,0 +1,36 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "sentinelOnboardingStateName": "default",
+ "sentinelOnboardingStateParameter": {
+ "properties": {
+ "customerManagedKey": false
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/onboardingStates",
+ "properties": {
+ "customerManagedKey": false
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/onboardingStates",
+ "properties": {
+ "customerManagedKey": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json
new file mode 100644
index 000000000000..e92fa8a247e5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "sentinelOnboardingStateName": "default"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json
new file mode 100644
index 000000000000..031b9e116c48
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/onboardingStates",
+ "properties": {
+ "customerManagedKey": false
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json
new file mode 100644
index 000000000000..edf2971f6e95
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "sentinelOnboardingStateName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/onboardingStates/default",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/onboardingStates",
+ "properties": {
+ "customerManagedKey": false
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/operations/ListOperations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/operations/ListOperations.json
new file mode 100644
index 000000000000..005c6bbe5d1e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/operations/ListOperations.json
@@ -0,0 +1,563 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.SecurityInsights/operations/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Operations",
+ "operation": "Get Operations",
+ "description": "Gets operations"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/automationRules/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "AutomationRules",
+ "operation": "Get Automation Rules",
+ "description": "Gets an automation rule"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/automationRules/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "AutomationRules",
+ "operation": "Update Automation Rules",
+ "description": "Updates an automation rule"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/automationRules/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "AutomationRules",
+ "operation": "Delete Automation Rules",
+ "description": "Deletes an automation rule"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Bookmarks/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmarks",
+ "operation": "Get Bookmarks",
+ "description": "Gets bookmarks"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Bookmarks/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmarks",
+ "operation": "Update Bookmarks",
+ "description": "Updates bookmarks"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Bookmarks/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmarks",
+ "operation": "Delete Bookmarks",
+ "description": "Deletes bookmarks"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Bookmarks/expand/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmarks",
+ "operation": "Expand on entity",
+ "description": "Gets related entities of an entity by a specific expansion"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/bookmarks/relations/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmark Relations",
+ "operation": "Get Bookmark Relations",
+ "description": "Gets a bookmark relation"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/bookmarks/relations/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmark Relations",
+ "operation": "Update Bookmark Relations",
+ "description": "Updates a bookmark relation"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/bookmarks/relations/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Bookmark Relations",
+ "operation": "Delete Bookmark Relations",
+ "description": "Deletes a bookmark relation"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/alertRules/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Alert Rules",
+ "operation": "Get Alert Rules",
+ "description": "Gets the alert rules"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/alertRules/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Alert Rules",
+ "operation": "Update Alert Rules",
+ "description": "Updates alert rules"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/alertRules/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Alert Rules",
+ "operation": "Delete Alert Rules",
+ "description": "Deletes alert rules"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/alertRules/actions/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Alert Rules Actions",
+ "operation": "Get Alert Rule Response Actions",
+ "description": "Gets the response actions of an alert rule"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/alertRules/actions/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Alert Rules Actions",
+ "operation": "Update Alert Rule Response Actions",
+ "description": "Updates the response actions of an alert rule"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/alertRules/actions/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Alert Rules Actions",
+ "operation": "Delete Alert Rule Response Actions",
+ "description": "Deletes the response actions of an alert rule"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/dataConnectors/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "DataConnectors",
+ "operation": "Get Data Connectors",
+ "description": "Gets the data connectors"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/dataConnectors/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "DataConnectors",
+ "operation": "Update Data Connectors",
+ "description": "Updates a data connector"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/dataConnectors/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "DataConnectors",
+ "operation": "Delete a Data Connector",
+ "description": "Deletes a data connector"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/dataConnectorsCheckRequirements/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "DataConnectorsCheckRequirements",
+ "operation": "Check user authorization and license",
+ "description": "Check user authorization and license"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incidents",
+ "operation": "Get Incidents",
+ "description": "Gets an incident"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incidents",
+ "operation": "Update Incidents",
+ "description": "Updates an incident"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incidents",
+ "operation": "Delete Incidents",
+ "description": "Deletes an incident"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/comments/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incident Comments",
+ "operation": "Get Incident Comments",
+ "description": "Gets the incident comments"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/comments/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incident Comments",
+ "operation": "Create Incident Comments",
+ "description": "Creates a comment on the incident"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/comments/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incident Comments",
+ "operation": "Delete Incident Comment",
+ "description": "Deletes a comment on the incident"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/relations/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incident Relations",
+ "operation": "Get Incident Relations",
+ "description": "Gets a relation between the incident and related resources"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/relations/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incident Relations",
+ "operation": "Update Incident Relations",
+ "description": "Updates a relation between the incident and related resources"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/incidents/relations/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Incident Relations",
+ "operation": "Delete Incident Relations",
+ "description": "Deletes a relation between the incident and related resources"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Get Threat Intelligence",
+ "description": "Gets Threat Intelligence"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Update Threat Intelligence",
+ "description": "Updates Threat Intelligence"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Delete Threat Intelligence",
+ "description": "Deletes Threat Intelligence"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/query/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Query Threat Intelligence",
+ "description": "Query Threat Intelligence"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/metrics/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Collect Threat Intelligence Metrics",
+ "description": "Collect Threat Intelligence Metrics"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/bulkDelete/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Bulk Delete Threat Intelligence",
+ "description": "Bulk Delete Threat Intelligence"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/bulkTag/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Bulk Tags Threat Intelligence",
+ "description": "Bulk Tags Threat Intelligence"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Update Threat Intelligence Indicators",
+ "description": "Updates Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Delete Threat Intelligence Indicators",
+ "description": "Deletes Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/query/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Query Threat Intelligence Indicators",
+ "description": "Query Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/metrics/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Get Threat Intelligence Indicator Metrics",
+ "description": "Get Threat Intelligence Indicator Metrics"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/bulkDelete/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Bulk Delete Threat Intelligence Indicators",
+ "description": "Bulk Delete Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/bulkTag/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Bulk Tags Threat Intelligence Indicators",
+ "description": "Bulk Tags Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Get Threat Intelligence Indicators",
+ "description": "Gets Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/metrics/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Collect Threat Intelligence Metrics",
+ "description": "Collect Threat Intelligence Metrics"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/createIndicator/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Create Threat Intelligence Indicator",
+ "description": "Create Threat Intelligence Indicator"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/appendTags/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Append tags to Threat Intelligence Indicator",
+ "description": "Append tags to Threat Intelligence Indicator"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/indicators/replaceTags/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Replace Tags of Threat Intelligence Indicator",
+ "description": "Replace Tags of Threat Intelligence Indicator"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/threatintelligence/queryIndicators/action",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "ThreatIntelligence",
+ "operation": "Query Threat Intelligence Indicators",
+ "description": "Query Threat Intelligence Indicators"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Watchlists/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Watchlists",
+ "operation": "Get Watchlists",
+ "description": "Gets Watchlists"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Watchlists/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Watchlists",
+ "operation": "Create Watchlists",
+ "description": "Create Watchlists"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/Watchlists/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Watchlists",
+ "operation": "Delete Watchlists",
+ "description": "Deletes Watchlists"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/onboardingStates/read",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Onboarding States",
+ "operation": "Get Onboarding States",
+ "description": "Gets an onboarding state"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/onboardingStates/write",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Onboarding States",
+ "operation": "Update Onboarding States",
+ "description": "Updates an onboarding state"
+ },
+ "origin": "user"
+ },
+ {
+ "name": "Microsoft.SecurityInsights/onboardingStates/delete",
+ "display": {
+ "provider": "Microsoft Security Insights",
+ "resource": "Onboarding States",
+ "operation": "Delete Onboarding States",
+ "description": "Deletes an onboarding state"
+ },
+ "origin": "user"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendation.json
new file mode 100644
index 000000000000..05ff2d9bbbf3
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendation.json
@@ -0,0 +1,42 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "recommendationId": "6d4b54eb-8684-4aa3-a156-3aa37b8014bc"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Recommendations/ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "name": "ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "type": "Microsoft.SecurityInsights/Recommendations",
+ "properties": {
+ "recommendationTypeId": "Swagger_Example",
+ "state": "CompletedBySystem",
+ "title": "someText",
+ "description": "someText",
+ "creationTimeUtc": "2022-02-19T03:09:03.4888396+00:00",
+ "lastEvaluatedTimeUtc": "2022-02-19T03:09:03.4888396+00:00",
+ "lastModifiedTimeUtc": "2022-02-19T03:57:31.7964447+00:00",
+ "suggestions": [
+ {
+ "suggestionTypeId": "ThreatIntelligence_Example_Suggestion_Example",
+ "title": "someText",
+ "description": "someText",
+ "action": "someText",
+ "additionalProperties": {
+ "someKey": "someValue"
+ }
+ }
+ ],
+ "resourceId": "someId",
+ "additionalProperties": {
+ "someKey": "someValue"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendations.json
new file mode 100644
index 000000000000..e66e13f05dc4
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/GetRecommendations.json
@@ -0,0 +1,45 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Recommendations/ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "name": "ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "type": "Microsoft.SecurityInsights/Recommendations",
+ "properties": {
+ "recommendationTypeId": "ThreatIntelligence_Example",
+ "state": "CompletedBySystem",
+ "title": "someText",
+ "description": "someText",
+ "creationTimeUtc": "2022-02-19T03:09:03.4888396+00:00",
+ "lastEvaluatedTimeUtc": "2022-02-19T03:09:03.4888396+00:00",
+ "lastModifiedTimeUtc": "2022-02-19T03:57:31.7964447+00:00",
+ "suggestions": [
+ {
+ "suggestionTypeId": "ThreatIntelligence_Example_Suggestion_Example",
+ "title": "someText",
+ "description": "someText",
+ "action": "someText",
+ "additionalProperties": {
+ "someKey": "someValue"
+ }
+ }
+ ],
+ "resourceId": "someId",
+ "additionalProperties": {
+ "someKey": "someValue"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/PatchRecommendation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/PatchRecommendation.json
new file mode 100644
index 000000000000..d4613a5de0df
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/PatchRecommendation.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "recommendationId": "6d4b54eb-8684-4aa3-a156-3aa37b8014bc",
+ "recommendationPatch": {
+ "properties": {
+ "state": "Active"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Recommendations/ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "name": "ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "type": "Microsoft.SecurityInsights/Recommendations",
+ "properties": {
+ "recommendationTypeId": "ThreatIntelligence_Example",
+ "state": "CompletedByUser",
+ "title": "someText",
+ "description": "someText",
+ "creationTimeUtc": "2022-02-19T03:09:03.4888396+00:00",
+ "lastEvaluatedTimeUtc": "2022-02-19T03:09:03.4888396+00:00",
+ "lastModifiedTimeUtc": "2022-02-19T03:57:31.7964447+00:00",
+ "suggestions": [
+ {
+ "suggestionTypeId": "ThreatIntelligence_Example_Suggestion_Example",
+ "title": "someText",
+ "description": "someText",
+ "action": "someText",
+ "additionalProperties": {
+ "someKey": "someValue"
+ }
+ }
+ ],
+ "resourceId": "someId",
+ "additionalProperties": {
+ "someKey": "someValue"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/ReevaluateRecommendation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/ReevaluateRecommendation.json
new file mode 100644
index 000000000000..9cf9dc63325e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/recommendations/ReevaluateRecommendation.json
@@ -0,0 +1,21 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "recommendationId": "6d4b54eb-8684-4aa3-a156-3aa37b8014bc"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Recommendations/ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "name": "ceea048e-923e-4eeb-8fcb-6cb0c06b101f",
+ "type": "Microsoft.SecurityInsights/Recommendations",
+ "properties": {
+ "lastEvaluatedTimeUtc": "2023-10-10T03:09:03.4888396+00:00"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/repositories/GetRepositories.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/repositories/GetRepositories.json
new file mode 100644
index 000000000000..24a5b6fa6c7f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/repositories/GetRepositories.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "repoType": "Github",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "repositoryAccess": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "repositoryAccess": {
+ "kind": "OAuth",
+ "code": "939fd7c6caf754f4f41f",
+ "state": "state",
+ "clientId": "54b3c2c0-1f48-4a1c-af9f-6399c3240b73"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "url": "https://api.github.com/repos/user/reponame",
+ "fullName": "reponame",
+ "installationId": 42424242,
+ "branches": [
+ "master",
+ "develop"
+ ]
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json
new file mode 100644
index 000000000000..80340d54e80f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json
@@ -0,0 +1,245 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "settingsResourceName": "f209187f-1d17-4431-94af-c141bf5f23db",
+ "securityMLAnalyticsSetting": {
+ "kind": "Anomaly",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "properties": {
+ "displayName": "Login from unusual region",
+ "description": "When account logs from a source region that has rarely been logged in from during the last 14 days, an anomaly is triggered.",
+ "enabled": true,
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "tactics": [
+ "Exfiltration",
+ "CommandAndControl"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "anomalyVersion": "1.0.5",
+ "customizableObservations": {
+ "multiSelectObservations": null,
+ "singleSelectObservations": [
+ {
+ "supportedValues": [
+ "Palo Alto Networks",
+ "Fortinet",
+ "Check Point"
+ ],
+ "value": [
+ "Palo Alto Networks"
+ ],
+ "supportedValuesKql": null,
+ "valuesKql": null,
+ "name": "Device vendor",
+ "description": "Select device vendor of network connection logs from CommonSecurityLog",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "prioritizeExcludeObservations": null,
+ "thresholdObservations": [
+ {
+ "minimum": "1",
+ "maximum": "100",
+ "value": "25",
+ "name": "Daily data transfer threshold in MB",
+ "description": "Suppress anomalies when daily data transfered (in MB) per hour is less than the chosen value",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ },
+ {
+ "minimum": "2",
+ "maximum": "10",
+ "value": "3",
+ "name": "Number of standard deviations",
+ "description": "Triggers anomalies when number of standard deviations is greater than the chosen value",
+ "sequenceNumber": 2,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "singleValueObservations": null
+ },
+ "frequency": "PT1H",
+ "settingsStatus": "Production",
+ "isDefaultSettings": true,
+ "anomalySettingsVersion": 0,
+ "settingsDefinitionId": "f209187f-1d17-4431-94af-c141bf5f23db"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/securityMLAnalyticsSettings/f209187f-1d17-4431-94af-c141bf5f23db",
+ "name": "f209187f-1d17-4431-94af-c141bf5f23db",
+ "etag": "\"01005144-0000-0d00-0000-6058632c0000\"",
+ "kind": "Anomaly",
+ "type": "Microsoft.SecurityInsights/securityMLAnalyticsSettings",
+ "properties": {
+ "displayName": "Login from unusual region",
+ "description": "When account logs from a source region that has rarely been logged in from during the last 14 days, an anomaly is triggered.",
+ "enabled": true,
+ "lastModifiedUtc": "2021-10-20T13:17:11.5340061Z",
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "tactics": [
+ "Exfiltration",
+ "CommandAndControl"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "anomalyVersion": "1.0.5",
+ "customizableObservations": {
+ "multiSelectObservations": null,
+ "singleSelectObservations": [
+ {
+ "supportedValues": [
+ "Palo Alto Networks",
+ "Fortinet",
+ "Check Point"
+ ],
+ "value": [
+ "Palo Alto Networks"
+ ],
+ "supportedValuesKql": null,
+ "valuesKql": null,
+ "name": "Device vendor",
+ "description": "Select device vendor of network connection logs from CommonSecurityLog",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "prioritizeExcludeObservations": null,
+ "thresholdObservations": [
+ {
+ "minimum": "1",
+ "maximum": "100",
+ "value": "25",
+ "name": "Daily data transfer threshold in MB",
+ "description": "Suppress anomalies when daily data transfered (in MB) per hour is less than the chosen value",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ },
+ {
+ "minimum": "2",
+ "maximum": "10",
+ "value": "3",
+ "name": "Number of standard deviations",
+ "description": "Triggers anomalies when number of standard deviations is greater than the chosen value",
+ "sequenceNumber": 2,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "singleValueObservations": null
+ },
+ "frequency": "PT1H",
+ "settingsStatus": "Production",
+ "isDefaultSettings": true,
+ "anomalySettingsVersion": 0,
+ "settingsDefinitionId": "f209187f-1d17-4431-94af-c141bf5f23db"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/securityMLAnalyticsSettings/f209187f-1d17-4431-94af-c141bf5f23db",
+ "name": "f209187f-1d17-4431-94af-c141bf5f23db",
+ "etag": "\"01007444-0000-0d00-0000-605863a70000\"",
+ "kind": "Anomaly",
+ "type": "Microsoft.SecurityInsights/securityMLAnalyticsSettings",
+ "properties": {
+ "displayName": "Login from unusual region",
+ "description": "When account logs from a source region that has rarely been logged in from during the last 14 days, an anomaly is triggered.",
+ "enabled": true,
+ "lastModifiedUtc": "2021-10-20T13:17:11.5340061Z",
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "tactics": [
+ "Exfiltration",
+ "CommandAndControl"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "anomalyVersion": "1.0.5",
+ "customizableObservations": {
+ "multiSelectObservations": null,
+ "singleSelectObservations": [
+ {
+ "supportedValues": [
+ "Palo Alto Networks",
+ "Fortinet",
+ "Check Point"
+ ],
+ "value": [
+ "Palo Alto Networks"
+ ],
+ "supportedValuesKql": null,
+ "valuesKql": null,
+ "name": "Device vendor",
+ "description": "Select device vendor of network connection logs from CommonSecurityLog",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "prioritizeExcludeObservations": null,
+ "thresholdObservations": [
+ {
+ "minimum": "1",
+ "maximum": "100",
+ "value": "25",
+ "name": "Daily data transfer threshold in MB",
+ "description": "Suppress anomalies when daily data transfered (in MB) per hour is less than the chosen value",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ },
+ {
+ "minimum": "2",
+ "maximum": "10",
+ "value": "3",
+ "name": "Number of standard deviations",
+ "description": "Triggers anomalies when number of standard deviations is greater than the chosen value",
+ "sequenceNumber": 2,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "singleValueObservations": null
+ },
+ "frequency": "PT1H",
+ "settingsStatus": "Production",
+ "isDefaultSettings": true,
+ "anomalySettingsVersion": 0,
+ "settingsDefinitionId": "f209187f-1d17-4431-94af-c141bf5f23db"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json
new file mode 100644
index 000000000000..5b9e3af7c139
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "settingsResourceName": "f209187f-1d17-4431-94af-c141bf5f23db"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json
new file mode 100644
index 000000000000..8b05f45ce256
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json
@@ -0,0 +1,94 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/securityMLAnalyticsSettings/f209187f-1d17-4431-94af-c141bf5f23db",
+ "name": "f209187f-1d17-4431-94af-c141bf5f23db",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/securityMLAnalyticsSettings",
+ "kind": "Anomaly",
+ "properties": {
+ "displayName": "Login from unusual region",
+ "description": "When account logs from a source region that has rarely been logged in from during the last 14 days, an anomaly is triggered.",
+ "enabled": true,
+ "lastModifiedUtc": "2021-10-20T13:13:11.5340061Z",
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "tactics": [
+ "Exfiltration",
+ "CommandAndControl"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "anomalyVersion": "1.0.5",
+ "customizableObservations": {
+ "multiSelectObservations": null,
+ "singleSelectObservations": [
+ {
+ "supportedValues": [
+ "Palo Alto Networks",
+ "Fortinet",
+ "Check Point"
+ ],
+ "value": [
+ "Palo Alto Networks"
+ ],
+ "supportedValuesKql": null,
+ "valuesKql": null,
+ "name": "Device vendor",
+ "description": "Select device vendor of network connection logs from CommonSecurityLog",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "prioritizeExcludeObservations": null,
+ "thresholdObservations": [
+ {
+ "minimum": "1",
+ "maximum": "100",
+ "value": "25",
+ "name": "Daily data transfer threshold in MB",
+ "description": "Suppress anomalies when daily data transfered (in MB) per hour is less than the chosen value",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ },
+ {
+ "minimum": "2",
+ "maximum": "10",
+ "value": "3",
+ "name": "Number of standard deviations",
+ "description": "Triggers anomalies when number of standard deviations is greater than the chosen value",
+ "sequenceNumber": 2,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "singleValueObservations": null
+ },
+ "frequency": "PT1H",
+ "settingsStatus": "Production",
+ "isDefaultSettings": true,
+ "anomalySettingsVersion": 0,
+ "settingsDefinitionId": "f209187f-1d17-4431-94af-c141bf5f23db"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json
new file mode 100644
index 000000000000..3ada5d9d97de
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json
@@ -0,0 +1,91 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "settingsResourceName": "myFirstAnomalySettings"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/securityMLAnalyticsSettings/f209187f-1d17-4431-94af-c141bf5f23db",
+ "name": "f209187f-1d17-4431-94af-c141bf5f23db",
+ "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"",
+ "type": "Microsoft.SecurityInsights/securityMLAnalyticsSettings",
+ "kind": "Anomaly",
+ "properties": {
+ "displayName": "Login from unusual region",
+ "description": "When account logs from a source region that has rarely been logged in from during the last 14 days, an anomaly is triggered.",
+ "enabled": true,
+ "lastModifiedUtc": "2021-10-20T13:13:11.5340061Z",
+ "requiredDataConnectors": [
+ {
+ "connectorId": "AWS",
+ "dataTypes": [
+ "AWSCloudTrail"
+ ]
+ }
+ ],
+ "tactics": [
+ "Exfiltration",
+ "CommandAndControl"
+ ],
+ "techniques": [
+ "T1037",
+ "T1021"
+ ],
+ "anomalyVersion": "1.0.5",
+ "customizableObservations": {
+ "multiSelectObservations": null,
+ "singleSelectObservations": [
+ {
+ "supportedValues": [
+ "Palo Alto Networks",
+ "Fortinet",
+ "Check Point"
+ ],
+ "value": [
+ "Palo Alto Networks"
+ ],
+ "supportedValuesKql": null,
+ "valuesKql": null,
+ "name": "Device vendor",
+ "description": "Select device vendor of network connection logs from CommonSecurityLog",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "prioritizeExcludeObservations": null,
+ "thresholdObservations": [
+ {
+ "minimum": "1",
+ "maximum": "100",
+ "value": "25",
+ "name": "Daily data transfer threshold in MB",
+ "description": "Suppress anomalies when daily data transfered (in MB) per hour is less than the chosen value",
+ "sequenceNumber": 1,
+ "rerun": "RerunAlways"
+ },
+ {
+ "minimum": "2",
+ "maximum": "10",
+ "value": "3",
+ "name": "Number of standard deviations",
+ "description": "Triggers anomalies when number of standard deviations is greater than the chosen value",
+ "sequenceNumber": 2,
+ "rerun": "RerunAlways"
+ }
+ ],
+ "singleValueObservations": null
+ },
+ "frequency": "PT1H",
+ "settingsStatus": "Production",
+ "isDefaultSettings": true,
+ "anomalySettingsVersion": 0,
+ "settingsDefinitionId": "f209187f-1d17-4431-94af-c141bf5f23db"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/DeleteEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/DeleteEyesOnSetting.json
new file mode 100644
index 000000000000..eef21801b41d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/DeleteEyesOnSetting.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "settingsName": "EyesOn"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetAllSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetAllSettings.json
new file mode 100644
index 000000000000..e2a44d407bec
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetAllSettings.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirInt/providers/Microsoft.SecurityInsights/settings/EyesOn",
+ "name": "EyesOn",
+ "type": "Microsoft.SecurityInsights/settings",
+ "kind": "EyesOn",
+ "properties": {
+ "isEnabled": true
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetEyesOnSetting.json
new file mode 100644
index 000000000000..af9271ee72a8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/GetEyesOnSetting.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "settingsName": "EyesOn"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirInt/providers/Microsoft.SecurityInsights/settings/EyesOn",
+ "name": "EyesOn",
+ "type": "Microsoft.SecurityInsights/settings",
+ "kind": "EyesOn",
+ "properties": {
+ "isEnabled": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/UpdateEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/UpdateEyesOnSetting.json
new file mode 100644
index 000000000000..8a680415d27b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/settings/UpdateEyesOnSetting.json
@@ -0,0 +1,40 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "settingsName": "EyesOn",
+ "settings": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "EyesOn",
+ "properties": {}
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirInt/providers/Microsoft.SecurityInsights/settings/EyesOn",
+ "name": "EyesOn",
+ "type": "Microsoft.SecurityInsights/settings",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "EyesOn",
+ "properties": {
+ "isEnabled": true
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/avdvirInt/providers/Microsoft.SecurityInsights/settings/EyesOn",
+ "name": "EyesOn",
+ "type": "Microsoft.SecurityInsights/settings",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "kind": "EyesOn",
+ "properties": {
+ "isEnabled": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/CreateSourceControl.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/CreateSourceControl.json
new file mode 100644
index 000000000000..45f669937c13
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/CreateSourceControl.json
@@ -0,0 +1,162 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "sourceControl": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "My Source Control",
+ "description": "This is a source control",
+ "repoType": "Github",
+ "contentTypes": [
+ "AnalyticRules",
+ "Workbook"
+ ],
+ "repository": {
+ "url": "https://github.com/user/repo",
+ "branch": "master",
+ "displayUrl": "https://github.com/user/repo"
+ },
+ "repositoryAccess": {
+ "kind": "OAuth",
+ "code": "939fd7c6caf754f4f41f",
+ "state": "state",
+ "clientId": "54b3c2c0-1f48-4a1c-af9f-6399c3240b73"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "version": "V2",
+ "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "type": "Microsoft.SecurityInsights/SourceControls",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "id": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "displayName": "My Source Control",
+ "description": "this is a source control",
+ "repoType": "Github",
+ "contentTypes": [
+ "AnalyticRules",
+ "Workbook"
+ ],
+ "repository": {
+ "url": "https://github.com/user/repo",
+ "branch": "master",
+ "displayUrl": "https://github.com/user/repo",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "servicePrincipal": {
+ "id": "2d297bee-cb45-444a-a9ce-904484f0bcd6",
+ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47",
+ "appId": "42a43de2-b712-4408-9680-2514fed984e6"
+ },
+ "repositoryResourceInfo": {
+ "webhook": {
+ "webhookId": "342768323",
+ "webhookUrl": "https://cac.sentinel.azure.com/workspaces/b7c525e9-1bfa-4435-88c0-817e13abb088/webhooks/ado/sourceControl/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "webhookSecretUpdateTime": "2021-01-01T17:18:19.1234567Z"
+ },
+ "gitHubResourceInfo": {
+ "appInstallationId": "123"
+ },
+ "azureDevOpsResourceInfo": null
+ },
+ "lastDeploymentInfo": {
+ "deploymentFetchStatus": "Success",
+ "deployment": {
+ "deploymentId": "4985046420",
+ "deploymentState": "Completed",
+ "deploymentResult": "Success",
+ "deploymentTime": "2021-01-01T17:18:19.1234567Z",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "message": "Successful deployment"
+ },
+ "pullRequest": {
+ "url": "https://github.com/user/repo/pull/123",
+ "state": "Open"
+ }
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "version": "V2",
+ "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "type": "Microsoft.SecurityInsights/SourceControls",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "id": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "displayName": "My Source Control",
+ "description": "this is a source control",
+ "repoType": "Github",
+ "contentTypes": [
+ "AnalyticRules",
+ "Workbook"
+ ],
+ "repository": {
+ "url": "https://github.com/user/repo",
+ "branch": "master",
+ "displayUrl": "https://github.com/user/repo",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "servicePrincipal": {
+ "id": "2d297bee-cb45-444a-a9ce-904484f0bcd6",
+ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47",
+ "appId": "42a43de2-b712-4408-9680-2514fed984e6"
+ },
+ "repositoryResourceInfo": {
+ "webhook": {
+ "webhookId": "342768323",
+ "webhookUrl": "https://cac.sentinel.azure.com/workspaces/b7c525e9-1bfa-4435-88c0-817e13abb088/webhooks/ado/sourceControl/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "webhookSecretUpdateTime": "2021-01-01T17:18:19.1234567Z"
+ },
+ "gitHubResourceInfo": {
+ "appInstallationId": "123"
+ },
+ "azureDevOpsResourceInfo": null
+ },
+ "lastDeploymentInfo": {
+ "deploymentFetchStatus": "Success",
+ "deployment": {
+ "deploymentId": "4985046420",
+ "deploymentState": "Completed",
+ "deploymentResult": "Success",
+ "deploymentTime": "2021-01-01T17:18:19.1234567Z",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "message": "Successful deployment"
+ },
+ "pullRequest": {
+ "url": "https://github.com/user/repo/pull/123",
+ "state": "Open"
+ }
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/DeleteSourceControl.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/DeleteSourceControl.json
new file mode 100644
index 000000000000..618f54c0f872
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/DeleteSourceControl.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "repositoryAccess": {
+ "properties": {
+ "repositoryAccess": {
+ "kind": "OAuth",
+ "code": "939fd7c6caf754f4f41f",
+ "state": "state",
+ "clientId": "54b3c2c0-1f48-4a1c-af9f-6399c3240b73"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "warning": {
+ "code": "SourceControlWarning_DeleteServicePrincipal",
+ "message": "ServicePrincipal has not been removed due to insufficient permissions."
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControlById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControlById.json
new file mode 100644
index 000000000000..9ca284f716cc
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControlById.json
@@ -0,0 +1,75 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "sourceControlId": "789e0c1f-4a3d-43ad-809c-e713b677b04a"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "version": "V2",
+ "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "type": "Microsoft.SecurityInsights/SourceControls",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "id": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "displayName": "My Source Control",
+ "description": "this is a source control",
+ "repoType": "Github",
+ "contentTypes": [
+ "AnalyticRules",
+ "Workbook"
+ ],
+ "repository": {
+ "url": "https://github.com/user/repo",
+ "branch": "master",
+ "displayUrl": "https://github.com/user/repo",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "servicePrincipal": {
+ "id": "2d297bee-cb45-444a-a9ce-904484f0bcd6",
+ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47",
+ "appId": "42a43de2-b712-4408-9680-2514fed984e6"
+ },
+ "repositoryResourceInfo": {
+ "webhook": {
+ "webhookId": "342768323",
+ "webhookUrl": "https://cac.sentinel.azure.com/workspaces/b7c525e9-1bfa-4435-88c0-817e13abb088/webhooks/ado/sourceControl/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "webhookSecretUpdateTime": "2021-01-01T17:18:19.1234567Z"
+ },
+ "gitHubResourceInfo": {
+ "appInstallationId": "123"
+ },
+ "azureDevOpsResourceInfo": null
+ },
+ "lastDeploymentInfo": {
+ "deploymentFetchStatus": "Success",
+ "deployment": {
+ "deploymentId": "4985046420",
+ "deploymentState": "Completed",
+ "deploymentResult": "Success",
+ "deploymentTime": "2021-01-01T17:18:19.1234567Z",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "message": "Successful deployment"
+ },
+ "pullRequest": {
+ "url": "https://github.com/user/repo/pull/123",
+ "state": "Open"
+ }
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControls.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControls.json
new file mode 100644
index 000000000000..6319687c3238
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/sourcecontrols/GetSourceControls.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/sourcecontrols/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "version": "V2",
+ "name": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "type": "Microsoft.SecurityInsights/SourceControls",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "id": "789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "displayName": "My Source Control",
+ "description": "this is a source control",
+ "repoType": "Github",
+ "contentTypes": [
+ "AnalyticRules",
+ "Workbook"
+ ],
+ "repository": {
+ "url": "https://github.com/user/repo",
+ "branch": "master",
+ "displayUrl": "https://github.com/user/repo",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "servicePrincipal": {
+ "id": "2d297bee-cb45-444a-a9ce-904484f0bcd6",
+ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47",
+ "appId": "42a43de2-b712-4408-9680-2514fed984e6"
+ },
+ "repositoryResourceInfo": {
+ "webhook": {
+ "webhookId": "342768323",
+ "webhookUrl": "https://cac.sentinel.azure.com/workspaces/b7c525e9-1bfa-4435-88c0-817e13abb088/webhooks/ado/sourceControl/789e0c1f-4a3d-43ad-809c-e713b677b04a",
+ "webhookSecretUpdateTime": "2021-01-01T17:18:19.1234567Z"
+ },
+ "gitHubResourceInfo": {
+ "appInstallationId": "123"
+ },
+ "azureDevOpsResourceInfo": null
+ },
+ "lastDeploymentInfo": {
+ "deploymentFetchStatus": "Success",
+ "deployment": {
+ "deploymentId": "4985046420",
+ "deploymentState": "Completed",
+ "deploymentResult": "Success",
+ "deploymentTime": "2021-01-01T17:18:19.1234567Z",
+ "deploymentLogsUrl": "https://github.com/user/repo/actions"
+ },
+ "message": "Successful deployment"
+ },
+ "pullRequest": {
+ "url": "https://github.com/user/repo/pull/123",
+ "state": "Open"
+ }
+ },
+ "systemData": {
+ "createdBy": "user1",
+ "createdByType": "User",
+ "createdAt": "2021-01-01T17:18:19.1234567Z",
+ "lastModifiedBy": "user2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2021-01-02T17:18:19.1234567Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json
new file mode 100644
index 000000000000..9c7c9a745642
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93",
+ "ThreatIntelligenceAppendTags": {
+ "threatIntelligenceTags": [
+ "tag1",
+ "tag2"
+ ]
+ }
+ },
+ "responses": {
+ "200": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json
new file mode 100644
index 000000000000..f14ee6dd3137
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "lastUpdatedTimeUtc": "2021-09-01T19:44:44.117403Z",
+ "threatTypeMetrics": [
+ {
+ "metricName": "compromised",
+ "metricValue": 20
+ }
+ ],
+ "patternTypeMetrics": [
+ {
+ "metricName": "url",
+ "metricValue": 20
+ }
+ ],
+ "sourceMetrics": [
+ {
+ "metricName": "Azure Sentinel",
+ "metricValue": 10315
+ },
+ {
+ "metricName": "zinga",
+ "metricValue": 2
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CreateThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CreateThreatIntelligence.json
new file mode 100644
index 000000000000..30ea6e066df0
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/CreateThreatIntelligence.json
@@ -0,0 +1,100 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ThreatIntelligenceProperties": {
+ "kind": "indicator",
+ "properties": {
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema",
+ "confidence": 78,
+ "createdByRef": "contoso@contoso.com",
+ "description": "debugging indicators",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "labels": [],
+ "modified": "",
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "revoked": false,
+ "validFrom": "2021-09-15T17:44:00.114052Z",
+ "validUntil": ""
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "name": "180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "etag": "\"0000322c-0000-0800-0000-5e976c960000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-09-15T20:20:38.6160949Z",
+ "createdByRef": "contoso@contoso.com",
+ "externalId": "indicator--a2b6a95e-2108-4a38-bd49-ef95811bbcd7",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2020-04-15T20:20:38.6161887Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-09-15T17:44:00.114052Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "name": "180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "etag": "\"0000322c-0000-0800-0000-5e976c960000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-09-15T20:20:38.6160949Z",
+ "createdByRef": "aztestConnectors@contoso.com",
+ "externalId": "indicator--a2b6a95e-2108-4a38-bd49-ef95811bbcd7",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-09-15T20:20:38.6161887Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-09-15T17:44:00.114052Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json
new file mode 100644
index 000000000000..78e7f16b356b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligence.json
new file mode 100644
index 000000000000..57dbeaff2c78
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligence.json
@@ -0,0 +1,76 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/27d963e6-e6e4-e0f9-e9d7-c53985b3bbe8",
+ "name": "27d963e6-e6e4-e0f9-e9d7-c53985b3bbe8",
+ "etag": "\"00002f2c-0000-0800-0000-5e976a8e0000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 90,
+ "created": "2021-04-15T20:11:57.9666134Z",
+ "createdByRef": "contoso@contoso.com",
+ "externalId": "indicator--8516d567-0daa-4614-8745-e3591e1b48cf",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-04-15T20:15:11.0746926Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema 2",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ },
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "name": "e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "etag": "\"00002a2c-0000-0800-0000-5e97683b0000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-04-15T19:51:17.1050923Z",
+ "createdByRef": "contoso@contoso.com",
+ "externalId": "indicator--73be1729-babb-4348-a6c4-94621cae2530",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-04-15T20:15:11.074903Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "patching tags"
+ ],
+ "displayName": "updated indicator",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json
new file mode 100644
index 000000000000..4ebbdcbcbcc8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "name": "e16ef847-962e-d7b6-9c8b-a33e4bd30e47"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "name": "e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "etag": "\"00002a2c-0000-0800-0000-5e97683b0000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-04-15T19:51:17.1050923Z",
+ "createdByRef": "aztestConnectors@dataconnector.ccsctp.net",
+ "externalId": "indicator--73be1729-babb-4348-a6c4-94621cae2530",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-04-15T20:18:49.2259902Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "patching tags"
+ ],
+ "displayName": "updated indicator",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://abc.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json
new file mode 100644
index 000000000000..4d392b7d8552
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "tiType": "main",
+ "Query": {
+ "condition": {
+ "clauses": [
+ {
+ "field": "lastUpdatedTimeUtc",
+ "operator": "OnOrBeforeAbsolute",
+ "values": [
+ "2024-02-09T23:59:59.999Z"
+ ]
+ }
+ ],
+ "conditionConnective": null
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "count": 3
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json
new file mode 100644
index 000000000000..e81ed7e33c68
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json
@@ -0,0 +1,122 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "tiType": "main",
+ "Query": {
+ "condition": {
+ "clauses": [
+ {
+ "field": "lastUpdatedTimeUtc",
+ "operator": "OnOrBeforeAbsolute",
+ "values": [
+ "2024-02-09T23:59:59.999Z"
+ ]
+ }
+ ],
+ "stixObjectType": "attack-pattern",
+ "conditionConnective": null
+ },
+ "sortBy": {
+ "field": "lastUpdatedTimeUtc",
+ "direction": "DESC"
+ },
+ "minPageSize": 100,
+ "maxPageSize": 100
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/threatintelligence/dGxwLW1peGVkVHlwZXMtd2l0aC1SdWxlcy0y---attack-pattern--fb6aa549-c94a-4e45-b4fd-7e32602dad85",
+ "name": "dGxwLW1peGVkVHlwZXMtd2l0aC1SdWxlcy0y---attack-pattern--fb6aa549-c94a-4e45-b4fd-7e32602dad85",
+ "type": "Microsoft.SecurityInsights/threatintelligence",
+ "kind": "AttackPattern",
+ "properties": {
+ "data": {
+ "name": "Attack Pattern 2.1",
+ "description": "menuPass appears to favor spear phishing to deliver payloads to the intended targets. While the attackers behind menuPass have used other RATs in their campaign, it appears that they use PIVY as their primary persistence mechanism.",
+ "kill_chain_phases": [
+ {
+ "kill_chain_name": "mandiant-attack-lifecycle-model",
+ "phase_name": "initial-compromise"
+ }
+ ],
+ "aliases": [
+ "alias_1",
+ "alias_2"
+ ],
+ "external_references": [
+ {
+ "description": "spear phishing",
+ "external_id": "CAPEC-163",
+ "hashes": null,
+ "source_name": "capec",
+ "url": null
+ }
+ ],
+ "granular_markings": [
+ {
+ "lang": "en",
+ "marking_ref": "marking-definition--089a6ecb-cc15-43cc-9494-767639779123",
+ "selectors": [
+ "description",
+ "labels"
+ ]
+ }
+ ],
+ "confidence": 100,
+ "lang": "en",
+ "extensions": {
+ "sentinel-ext": {
+ "severity": null
+ },
+ "extension-definition--d83fce45-ef58-4c6c-a3f4-1fbc32e98c6e": {
+ "extension_type": "property-extension",
+ "rank": 5,
+ "toxicity": 8
+ }
+ },
+ "type": "attack-pattern",
+ "id": "attack-pattern--fb6aa549-c94a-4e45-b4fd-7e32602dad85",
+ "created": "2015-05-15T09:12:16.432Z",
+ "modified": "2015-05-20T09:12:16.432Z",
+ "spec_version": "2.1",
+ "created_by_ref": "identity--f431f809-377b-45e0-aa1c-6a4751cae5ff",
+ "object_marking_refs": [
+ "marking-definition--34098fce-860f-48ae-8e50-ebd3cc5e41da"
+ ],
+ "revoked": true,
+ "labels": [
+ "heartbleed",
+ "has-logo"
+ ]
+ },
+ "createdBy": {
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "email": "",
+ "name": ""
+ },
+ "source": "mySource",
+ "firstIngestedTimeUtc": "2024-02-05T22:47:29.4948816",
+ "lastIngestedTimeUtc": "2024-02-05T22:47:29.4948816",
+ "ingestionRulesVersion": "00000000-0000-0000-0000-000000000000",
+ "lastUpdateMethod": "File Import",
+ "lastModifiedBy": {
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "email": "",
+ "name": ""
+ },
+ "lastUpdatedDateTimeUtc": "2024-02-05T22:47:29.4948816",
+ "relationshipHints": null
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/QueryThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/QueryThreatIntelligence.json
new file mode 100644
index 000000000000..89007162ebc9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/QueryThreatIntelligence.json
@@ -0,0 +1,107 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ThreatIntelligenceFilteringCriteria": {
+ "pageSize": 100,
+ "minConfidence": 25,
+ "maxConfidence": 80,
+ "minValidUntil": "2021-04-05T17:44:00.114052Z",
+ "maxValidUntil": "2021-04-25T17:44:00.114052Z",
+ "sources": [
+ "Azure Sentinel"
+ ],
+ "sortBy": [
+ {
+ "itemKey": "lastUpdatedTimeUtc",
+ "sortOrder": "descending"
+ }
+ ]
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/27d963e6-e6e4-e0f9-e9d7-c53985b3bbe8",
+ "name": "27d963e6-e6e4-e0f9-e9d7-c53985b3bbe8",
+ "etag": "\"00002f2c-0000-0800-0000-5e976a8e0000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 90,
+ "created": "2021-04-15T20:11:57.9666134Z",
+ "createdByRef": "contoso@contoso.com",
+ "externalId": "indicator--8516d567-0daa-4614-8745-e3591e1b48cf",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2020-04-15T20:15:11.0746926Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema 2",
+ "description": "debugging indicators 2",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z",
+ "parsedPattern": [
+ {
+ "patternTypeKey": "network-traffic",
+ "patternTypeValues": [
+ {
+ "valueType": "0",
+ "value": "SSH-2.0-PuTTY_Release_0.64"
+ },
+ {
+ "valueType": "1",
+ "value": "194.88.106.146"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "name": "e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "etag": "\"00002a2c-0000-0800-0000-5e97683b0000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-04-15T19:51:17.1050923Z",
+ "createdByRef": "contoso@contoso.com",
+ "externalId": "indicator--73be1729-babb-4348-a6c4-94621cae2530",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-04-15T20:15:11.074903Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "patching tags"
+ ],
+ "displayName": "updated indicator",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json
new file mode 100644
index 000000000000..706b5fb9c3b2
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93",
+ "ThreatIntelligenceReplaceTags": {
+ "etag": "\"0000262c-0000-0800-0000-5e9767060000\"",
+ "kind": "indicator",
+ "properties": {
+ "threatIntelligenceTags": [
+ "patching tags"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "name": "e16ef847-962e-d7b6-9c8b-a33e4bd30e47",
+ "etag": "\"00002a2c-0000-0800-0000-5e97683b0000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-04-15T19:51:17.1050923Z",
+ "createdByRef": "aztestConnectors@dataconnector.ccsctp.net",
+ "externalId": "indicator--73be1729-babb-4348-a6c4-94621cae2530",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-04-15T19:56:08.828946Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "patching tags"
+ ],
+ "displayName": "updated indicator",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://abc.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json
new file mode 100644
index 000000000000..8531a305aa5b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json
@@ -0,0 +1,101 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "name": "d9cd6f0b-96b9-3984-17cd-a779d1e15a93",
+ "ThreatIntelligenceProperties": {
+ "kind": "indicator",
+ "properties": {
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema",
+ "confidence": 78,
+ "createdByRef": "contoso@contoso.com",
+ "description": "debugging indicators",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "labels": [],
+ "modified": "",
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "revoked": false,
+ "validFrom": "2020-04-15T17:44:00.114052Z",
+ "validUntil": ""
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "name": "180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "etag": "\"0000322c-0000-0800-0000-5e976c960000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-04-15T20:20:38.6160949Z",
+ "createdByRef": "contoso@contoso.com",
+ "externalId": "indicator--a2b6a95e-2108-4a38-bd49-ef95811bbcd7",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2020-04-15T20:20:38.6161887Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/bd794837-4d29-4647-9105-6339bfdb4e6a/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/ThreatIntelligence/180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "name": "180105c7-a28d-b1a2-4a78-234f6ec80fd6",
+ "etag": "\"0000322c-0000-0800-0000-5e976c960000\"",
+ "type": "Microsoft.SecurityInsights/ThreatIntelligence",
+ "kind": "indicator",
+ "properties": {
+ "confidence": 78,
+ "created": "2021-04-15T20:20:38.6160949Z",
+ "createdByRef": "aztestConnectors@contoso.com",
+ "externalId": "indicator--a2b6a95e-2108-4a38-bd49-ef95811bbcd7",
+ "externalReferences": [],
+ "granularMarkings": [],
+ "lastUpdatedTimeUtc": "2021-04-15T20:20:38.6161887Z",
+ "revoked": false,
+ "source": "Azure Sentinel",
+ "threatIntelligenceTags": [
+ "new schema"
+ ],
+ "displayName": "new schema",
+ "description": "debugging indicators",
+ "threatTypes": [
+ "compromised"
+ ],
+ "killChainPhases": [],
+ "pattern": "[url:value = 'https://www.contoso.com']",
+ "patternType": "url",
+ "validFrom": "2021-04-15T17:44:00.114052Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json
new file mode 100644
index 000000000000..11a1e0840726
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleId": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "analyticsRuleRunTriggerParameter": {
+ "properties": {
+ "executionTimeUtc": "2022-12-22T15:37:03.074Z"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Code": "202",
+ "Message": "Accepted",
+ "Location": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns/5abbc58b-9655-4f9b-80ac-5a576753e4ec?api-version=2024-10-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json
new file mode 100644
index 000000000000..73dbf75aa76c
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "ruleRunId": "65360bb0-8986-4ade-a89d-af3cf44d28aa"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns/65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "type": "Microsoft.SecurityInsights/TriggeredAnalyticsRuleRuns",
+ "properties": {
+ "executionTimeUtc": "2022-12-22T15:37:03.074Z",
+ "ruleId": "358e16da-ab76-4027-89e1-15937a6ed401",
+ "triggeredAnalyticsRuleRunId": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "provisioningState": "InProgress",
+ "ruleRunAdditionalData": {
+ "auditCorrelationId": "b8540a76-cb05-4a9b-8d52-9959b509e4ad",
+ "createdBy": "user@microsoft.com",
+ "healthCorrelationId": "dadd8fdc-fc7a-4005-a289-4e164cb75093"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json
new file mode 100644
index 000000000000..c9bc88e5cacf
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns/65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "name": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "type": "Microsoft.SecurityInsights/TriggeredAnalyticsRuleRuns",
+ "properties": {
+ "executionTimeUtc": "2022-12-22T15:37:03.074Z",
+ "ruleId": "358e16da-ab76-4027-89e1-15937a6ed401",
+ "triggeredAnalyticsRuleRunId": "65360bb0-8986-4ade-a89d-af3cf44d28aa",
+ "provisioningState": "InProgress",
+ "ruleRunAdditionalData": {
+ "auditCorrelationId": "b8540a76-cb05-4a9b-8d52-9959b509e4ad",
+ "createdBy": "user@microsoft.com",
+ "healthCorrelationId": "dadd8fdc-fc7a-4005-a289-4e164cb75093"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns/1f62ea0f-2d25-4b65-bd4d-bb9114bcbd9c",
+ "name": "1f62ea0f-2d25-4b65-bd4d-bb9114bcbd9c",
+ "type": "Microsoft.SecurityInsights/TriggeredAnalyticsRuleRuns",
+ "properties": {
+ "executionTimeUtc": "2022-12-20T15:37:03.074Z",
+ "ruleId": "358e16da-ab76-4027-89e1-15937a6ed401",
+ "triggeredAnalyticsRuleRunId": "1f62ea0f-2d25-4b65-bd4d-bb9114bcbd9c",
+ "provisioningState": "Succeeded",
+ "ruleRunAdditionalData": {
+ "auditCorrelationId": "763f9dae-1027-44b9-a34a-589404693670",
+ "createdBy": "user2@microsoft.com",
+ "healthCorrelationId": "b3c165ec-f53e-48c1-9677-216d9e930912"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlist.json
new file mode 100644
index 000000000000..2816152e079d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlist.json
@@ -0,0 +1,88 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "watchlistAlias": "highValueAsset",
+ "watchlist": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "High Value Assets Watchlist",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "provider": "Microsoft",
+ "description": "Watchlist from CSV content",
+ "itemsSearchKey": "header1"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset",
+ "name": "highValueAsset",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/Watchlists",
+ "properties": {
+ "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017",
+ "displayName": "High Value Assets Watchlist",
+ "provider": "Microsoft",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "created": "2020-09-28T00:26:54.7746089+00:00",
+ "updated": "2020-09-28T00:26:57+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "description": "Watchlist from CSV content",
+ "watchlistType": "watchlist",
+ "watchlistAlias": "highValueAsset",
+ "itemsSearchKey": "header1",
+ "isDeleted": false,
+ "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset",
+ "name": "highValueAsset",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/Watchlists",
+ "properties": {
+ "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017",
+ "displayName": "High Value Assets Watchlist",
+ "provider": "Microsoft",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "created": "2020-09-28T00:26:54.7746089+00:00",
+ "updated": "2020-09-28T00:26:57+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "description": "Watchlist from CSV content",
+ "watchlistType": "watchlist",
+ "watchlistAlias": "highValueAsset",
+ "itemsSearchKey": "header1",
+ "isDeleted": false,
+ "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json
new file mode 100644
index 000000000000..9588f62cc096
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset",
+ "watchlist": {
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "displayName": "High Value Assets Watchlist",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "provider": "Microsoft",
+ "description": "Watchlist from CSV content",
+ "numberOfLinesToSkip": 1,
+ "rawContent": "This line will be skipped\nheader1,header2\nvalue1,value2",
+ "itemsSearchKey": "header1",
+ "contentType": "text/csv"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset",
+ "name": "highValueAsset",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/Watchlists",
+ "properties": {
+ "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017",
+ "displayName": "High Value Assets Watchlist",
+ "provider": "Microsoft",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "created": "2020-09-28T00:26:54.7746089+00:00",
+ "updated": "2020-09-28T00:26:57+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "description": "Watchlist from CSV content",
+ "watchlistType": "watchlist",
+ "watchlistAlias": "highValueAsset",
+ "itemsSearchKey": "header1",
+ "isDeleted": false,
+ "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset",
+ "name": "highValueAsset",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "type": "Microsoft.SecurityInsights/Watchlists",
+ "properties": {
+ "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017",
+ "displayName": "High Value Assets Watchlist",
+ "provider": "Microsoft",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "created": "2020-09-28T00:26:54.7746089+00:00",
+ "updated": "2020-09-28T00:26:57+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "description": "Watchlist from CSV content",
+ "watchlistType": "watchlist",
+ "watchlistAlias": "highValueAsset",
+ "itemsSearchKey": "header1",
+ "isDeleted": false,
+ "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistItem.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistItem.json
new file mode 100644
index 000000000000..3b85ea6a66ff
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/CreateWatchlistItem.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset",
+ "watchlistItemId": "82ba292c-dc97-4dfc-969d-d4dd9e666842",
+ "watchlistItem": {
+ "etag": "0300bf09-0000-0000-0000-5c37296e0000",
+ "properties": {
+ "itemsKeyValue": {
+ "Gateway subnet": "10.0.255.224/27",
+ "Web Tier": "10.0.1.0/24",
+ "Business tier": "10.0.2.0/24",
+ "Data tier": "10.0.2.0/24",
+ "Private DMZ in": "10.0.0.0/27",
+ "Public DMZ out": "10.0.0.96/27"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/82ba292c-dc97-4dfc-969d-d4dd9e666842",
+ "etag": "0300bf09-0000-0000-0000-5c37296e0000",
+ "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems",
+ "properties": {
+ "watchlistItemType": "watchlist-item",
+ "watchlistItemId": "82ba292c-dc97-4dfc-969d-d4dd9e666842",
+ "tenantId": "4008512e-1d30-48b2-9ee2-d3612ed9d3ea",
+ "isDeleted": false,
+ "created": "2020-11-15T04:58:56.0748363+00:00",
+ "updated": "2020-11-16T16:05:20+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "itemsKeyValue": {
+ "Gateway subnet": "10.0.255.224/27",
+ "Web Tier": "10.0.1.0/24",
+ "Business tier": "10.0.2.0/24",
+ "Data tier": "10.0.2.0/24",
+ "Private DMZ in": "10.0.0.0/27",
+ "Public DMZ out": "10.0.0.96/27"
+ }
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/82ba292c-dc97-4dfc-969d-d4dd9e666842",
+ "etag": "0300bf09-0000-0000-0000-5c37296e0000",
+ "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems",
+ "properties": {
+ "watchlistItemType": "watchlist-item",
+ "watchlistItemId": "82ba292c-dc97-4dfc-969d-d4dd9e666842",
+ "tenantId": "4008512e-1d30-48b2-9ee2-d3612ed9d3ea",
+ "isDeleted": false,
+ "created": "2020-11-15T04:58:56.0748363+00:00",
+ "updated": "2020-11-16T16:05:20+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "itemsKeyValue": {
+ "Gateway subnet": "10.0.255.224/27",
+ "Web Tier": "10.0.1.0/24",
+ "Business tier": "10.0.2.0/24",
+ "Data tier": "10.0.2.0/24",
+ "Private DMZ in": "10.0.0.0/27",
+ "Public DMZ out": "10.0.0.96/27"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlist.json
new file mode 100644
index 000000000000..9bcecac71974
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlist.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.SecurityInsights/watchlists/1011-01/watchlistStatuses/00000000-0000-0000-0000-000000000000?api-version=2024-10-01-preview"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlistItem.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlistItem.json
new file mode 100644
index 000000000000..e19989724058
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/DeleteWatchlistItem.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset",
+ "watchlistItemId": "4008512e-1d30-48b2-9ee2-d3612ed9d3ea"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistByAlias.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistByAlias.json
new file mode 100644
index 000000000000..3d3b8ac64cd1
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistByAlias.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset",
+ "name": "highValueAsset",
+ "type": "Microsoft.SecurityInsights/Watchlists",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017",
+ "displayName": "High Value Assets Watchlist",
+ "provider": "Microsoft",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "created": "2020-09-28T00:26:54.7746089+00:00",
+ "updated": "2020-09-28T00:26:57+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "description": "Watchlist from CSV content",
+ "watchlistType": "watchlist",
+ "watchlistAlias": "highValueAsset",
+ "itemsSearchKey": "header1",
+ "isDeleted": false,
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "defaultDuration": "P1279DT12H30M5S",
+ "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItemById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItemById.json
new file mode 100644
index 000000000000..e27900cce871
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItemById.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset",
+ "watchlistItemId": "3f8901fe-63d9-4875-9ad5-9fb3b8105797"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/fd37d325-7090-47fe-851a-5b5a00c3f576",
+ "name": "fd37d325-7090-47fe-851a-5b5a00c3f576",
+ "etag": "\"f2089bfa-0000-0d00-0000-601c58b42021\"",
+ "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems",
+ "properties": {
+ "watchlistItemType": "watchlist-item",
+ "watchlistItemId": "fd37d325-7090-47fe-851a-5b5a00c3f576",
+ "tenantId": "3f8901fe-63d9-4875-9ad5-9fb3b8105797",
+ "isDeleted": false,
+ "created": "2021-02-04T12:27:32.3783333-08:00",
+ "updated": "2021-02-04T12:27:32.3783333-08:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "itemsKeyValue": {
+ "Header-1": "v1_1",
+ "Header-2": "v1_2",
+ "Header-3": "v1_3",
+ "Header-4": "v1_4",
+ "Header-5": "v1_5"
+ },
+ "entityMapping": {}
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItems.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItems.json
new file mode 100644
index 000000000000..4f6b746ab8a8
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlistItems.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights",
+ "watchlistAlias": "highValueAsset"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/Watchlists/highValueAsset/WatchlistItems/fd37d325-7090-47fe-851a-5b5a00c3f576",
+ "name": "fd37d325-7090-47fe-851a-5b5a00c3f576",
+ "etag": "\"f2089bfa-0000-0d00-0000-601c58b42021\"",
+ "type": "Microsoft.SecurityInsights/Watchlists/WatchlistItems",
+ "properties": {
+ "watchlistItemType": "watchlist-item",
+ "watchlistItemId": "fd37d325-7090-47fe-851a-5b5a00c3f576",
+ "tenantId": "3f8901fe-63d9-4875-9ad5-9fb3b8105797",
+ "isDeleted": false,
+ "created": "2021-02-04T12:27:32.3783333-08:00",
+ "updated": "2021-02-04T12:27:32.3783333-08:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "itemsKeyValue": {
+ "Header-1": "v1_1",
+ "Header-2": "v1_2",
+ "Header-3": "v1_3",
+ "Header-4": "v1_4",
+ "Header-5": "v1_5"
+ },
+ "entityMapping": {}
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlists.json
new file mode 100644
index 000000000000..5b41775b205d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/watchlists/GetWatchlists.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "operationalInsightsResourceProvider": "Microsoft.OperationalInsights"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/watchlists/highValueAsset",
+ "name": "highValueAsset",
+ "type": "Microsoft.SecurityInsights/Watchlists",
+ "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"",
+ "properties": {
+ "watchlistId": "76d5a51f-ba1f-4038-9d22-59fda38dc017",
+ "displayName": "High Value Assets Watchlist",
+ "provider": "Microsoft",
+ "source": "watchlist.csv",
+ "sourceType": "Local file",
+ "created": "2020-09-28T00:26:54.7746089+00:00",
+ "updated": "2020-09-28T00:26:57+00:00",
+ "createdBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "updatedBy": {
+ "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70",
+ "email": "john@contoso.com",
+ "name": "john doe"
+ },
+ "description": "Watchlist from CSV content",
+ "watchlistType": "watchlist",
+ "watchlistAlias": "highValueAsset",
+ "itemsSearchKey": "header1",
+ "isDeleted": false,
+ "labels": [
+ "Tag1",
+ "Tag2"
+ ],
+ "defaultDuration": "P1279DT12H30M5S",
+ "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateJob.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateJob.json
new file mode 100644
index 000000000000..550d8826c37f
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateJob.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "jobName": "cfbe1338-8276-4d5d-8b96-931117f9fa0e"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58/jobs/cfbe1338-8276-4d5d-8b96-931117f9fa0e",
+ "etag": "\"f20a2523-7817-47b5-a3b2-21539c00c788\"",
+ "name": "cfbe1338-8276-4d5d-8b96-931117f9fa0e",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments/jobs",
+ "properties": {
+ "startTime": "2022-06-14T04:47:52.9614956Z",
+ "provisioningState": "InProgress"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json
new file mode 100644
index 000000000000..850fa07cc209
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json
@@ -0,0 +1,62 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "workspaceManagerAssignment": {
+ "properties": {
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo"
+ }
+ ],
+ "targetResourceName": "37207a7a-3b8a-438f-a559-c7df400e1b96"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments",
+ "properties": {
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo"
+ }
+ ],
+ "targetResourceName": "37207a7a-3b8a-438f-a559-c7df400e1b96"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments",
+ "properties": {
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo"
+ }
+ ],
+ "targetResourceName": "37207a7a-3b8a-438f-a559-c7df400e1b96"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteJob.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteJob.json
new file mode 100644
index 000000000000..926f36f63a9e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteJob.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "jobName": "cfbe1338-8276-4d5d-8b96-931117f9fa0e"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json
new file mode 100644
index 000000000000..d20766e090f0
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json
new file mode 100644
index 000000000000..24cc4a2d1f52
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58/jobs/cfbe1338-8276-4d5d-8b96-931117f9fa0e",
+ "etag": "\"f20a2523-7817-47b5-a3b2-21539c00c788\"",
+ "name": "cfbe1338-8276-4d5d-8b96-931117f9fa0e",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments/jobs",
+ "properties": {
+ "endTime": "2022-06-14T04:52:52.9614956Z",
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne",
+ "status": "Succeeded",
+ "executionTime": "2022-06-14T04:49:52.9614956Z"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo",
+ "status": "Failed",
+ "executionTime": "2022-06-14T04:50:52.9614956Z",
+ "errors": [
+ {
+ "memberResourceName": "f5fa104e-c0e3-4747-9182-d342dc048a9e",
+ "errorMessage": "Failed to write. Status code: Forbidden."
+ }
+ ]
+ }
+ ],
+ "startTime": "2022-06-14T04:47:52.9614956Z",
+ "provisioningState": "Failed"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json
new file mode 100644
index 000000000000..5f9c8f11ca07
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json
@@ -0,0 +1,35 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments",
+ "properties": {
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo"
+ }
+ ],
+ "targetResourceName": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "lastJobEndTime": "2022-06-14T04:52:52.9614956Z",
+ "lastJobProvisioningState": "Failed"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetJob.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetJob.json
new file mode 100644
index 000000000000..b527721bcdf9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetJob.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "jobName": "cfbe1338-8276-4d5d-8b96-931117f9fa0e"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58/jobs/cfbe1338-8276-4d5d-8b96-931117f9fa0e",
+ "etag": "\"f20a2523-7817-47b5-a3b2-21539c00c788\"",
+ "name": "cfbe1338-8276-4d5d-8b96-931117f9fa0e",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments/jobs",
+ "properties": {
+ "endTime": "2022-06-14T04:52:52.9614956Z",
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne",
+ "status": "Succeeded",
+ "executionTime": "2022-06-14T04:49:52.9614956Z"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo",
+ "status": "Failed",
+ "executionTime": "2022-06-14T04:50:52.9614956Z",
+ "errors": [
+ {
+ "memberResourceName": "f5fa104e-c0e3-4747-9182-d342dc048a9e",
+ "errorMessage": "Failed to write. Status code: Forbidden."
+ }
+ ]
+ }
+ ],
+ "startTime": "2022-06-14T04:47:52.9614956Z",
+ "provisioningState": "Failed"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json
new file mode 100644
index 000000000000..16fab3aadf32
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerAssignmentName": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerAssignments/47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "47cdc5f5-37c4-47b5-bd5f-83c84b8bdd58",
+ "type": "Microsoft.SecurityInsights/workspaceManagerAssignments",
+ "properties": {
+ "items": [
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleOne"
+ },
+ {
+ "resourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspac-es/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExampleTwo"
+ }
+ ],
+ "targetResourceName": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "lastJobEndTime": "2022-06-14T04:52:52.9614956Z",
+ "lastJobProvisioningState": "Failed"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json
new file mode 100644
index 000000000000..ec943c11b732
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json
@@ -0,0 +1,38 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerConfigurationName": "default",
+ "workspaceManagerConfiguration": {
+ "properties": {
+ "mode": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerConfigurations/default",
+ "etag": "\"3f6451dd-1b58-4bef-bce7-72eba6b354d7\"",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/workspaceManagerConfigurations",
+ "properties": {
+ "mode": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerConfigurations/default",
+ "etag": "\"3f6451dd-1b58-4bef-bce7-72eba6b354d7\"",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/workspaceManagerConfigurations",
+ "properties": {
+ "mode": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json
new file mode 100644
index 000000000000..c1ccde537696
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerConfigurationName": "default"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json
new file mode 100644
index 000000000000..0a84a90f2072
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json
@@ -0,0 +1,25 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerConfigurations/default",
+ "etag": "\"3f6451dd-1b58-4bef-bce7-72eba6b354d7\"",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/workspaceManagerConfigurations",
+ "properties": {
+ "mode": "Enabled"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json
new file mode 100644
index 000000000000..0520ed573b2e
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json
@@ -0,0 +1,22 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerConfigurationName": "default"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerConfigurations/default",
+ "etag": "\"3f6451dd-1b58-4bef-bce7-72eba6b354d7\"",
+ "name": "default",
+ "type": "Microsoft.SecurityInsights/workspaceManagerConfigurations",
+ "properties": {
+ "mode": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json
new file mode 100644
index 000000000000..9cc427bfc0c5
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerGroupName": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "workspaceManagerGroup": {
+ "properties": {
+ "description": "Group of all financial and banking institutions",
+ "displayName": "Banks",
+ "memberResourceNames": [
+ "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "f5fa104e-c0e3-4747-9182-d342dc048a9e"
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerGroups/37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "etag": "\"ac04c9ad-4b3c-4e13-b511-8c2225e46521\"",
+ "name": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "type": "Microsoft.SecurityInsights/workspaceManagerGroups",
+ "properties": {
+ "description": "Group of all financial and banking institutions",
+ "displayName": "Banks",
+ "memberResourceNames": [
+ "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "f5fa104e-c0e3-4747-9182-d342dc048a9e"
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerGroups/37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "etag": "\"ac04c9ad-4b3c-4e13-b511-8c2225e46521\"",
+ "name": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "type": "Microsoft.SecurityInsights/workspaceManagerGroups",
+ "properties": {
+ "description": "Group of all financial and banking institutions",
+ "displayName": "Banks",
+ "memberResourceNames": [
+ "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "f5fa104e-c0e3-4747-9182-d342dc048a9e"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json
new file mode 100644
index 000000000000..7174b96fc330
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerGroupName": "37207a7a-3b8a-438f-a559-c7df400e1b96"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json
new file mode 100644
index 000000000000..2fa5382f8bd9
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerGroups/37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "etag": "\"ac04c9ad-4b3c-4e13-b511-8c2225e46521\"",
+ "name": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "type": "Microsoft.SecurityInsights/workspaceManagerGroups",
+ "properties": {
+ "description": "Group of all financial and banking institutions",
+ "displayName": "Banks",
+ "memberResourceNames": [
+ "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "f5fa104e-c0e3-4747-9182-d342dc048a9e"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json
new file mode 100644
index 000000000000..4b4a2436e875
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerGroupName": "37207a7a-3b8a-438f-a559-c7df400e1b96"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerGroups/37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "etag": "\"ac04c9ad-4b3c-4e13-b511-8c2225e46521\"",
+ "name": "37207a7a-3b8a-438f-a559-c7df400e1b96",
+ "type": "Microsoft.SecurityInsights/workspaceManagerGroups",
+ "properties": {
+ "description": "Group of all financial and banking institutions",
+ "displayName": "Banks",
+ "memberResourceNames": [
+ "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "f5fa104e-c0e3-4747-9182-d342dc048a9e"
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json
new file mode 100644
index 000000000000..624395f9f29d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json
@@ -0,0 +1,41 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerMemberName": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "workspaceManagerMember": {
+ "properties": {
+ "targetWorkspaceResourceId": "/subscriptions/7aef9d48-814f-45ad-b644-b0343316e174/resourceGroups/otherRg/providers/Microsoft.OperationalInsights/workspaces/Example_Workspace",
+ "targetWorkspaceTenantId": "f676d436-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerMembers/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "type": "Microsoft.SecurityInsights/workspaceManagerMembers",
+ "properties": {
+ "targetWorkspaceResourceId": "/subscriptions/7aef9d48-814f-45ad-b644-b0343316e174/resourceGroups/otherRg/providers/Microsoft.OperationalInsights/workspaces/Example_Workspace",
+ "targetWorkspaceTenantId": "f676d436-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerMembers/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "type": "Microsoft.SecurityInsights/workspaceManagerMembers",
+ "properties": {
+ "targetWorkspaceResourceId": "/subscriptions/7aef9d48-814f-45ad-b644-b0343316e174/resourceGroups/otherRg/providers/Microsoft.OperationalInsights/workspaces/Example_Workspace",
+ "targetWorkspaceTenantId": "f676d436-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json
new file mode 100644
index 000000000000..b4f58817a425
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerMemberName": "afbd324f-6c48-459c-8710-8d1e1cd03812"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json
new file mode 100644
index 000000000000..86397ebd1e7b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerMembers/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "type": "Microsoft.SecurityInsights/workspaceManagerMembers",
+ "properties": {
+ "targetWorkspaceResourceId": "/subscriptions/7aef9d48-814f-45ad-b644-b0343316e174/resourceGroups/otherRg/providers/Microsoft.OperationalInsights/workspaces/Example_Workspace",
+ "targetWorkspaceTenantId": "f676d436-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json
new file mode 100644
index 000000000000..8e82536d144d
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json
@@ -0,0 +1,23 @@
+{
+ "parameters": {
+ "api-version": "2024-10-01-preview",
+ "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0",
+ "resourceGroupName": "myRg",
+ "workspaceName": "myWorkspace",
+ "workspaceManagerMemberName": "afbd324f-6c48-459c-8710-8d1e1cd03812"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/workspaceManagerMembers/afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "etag": "\"190057d0-0000-0d00-0000-5c6f5adb0000\"",
+ "name": "afbd324f-6c48-459c-8710-8d1e1cd03812",
+ "type": "Microsoft.SecurityInsights/workspaceManagerMembers",
+ "properties": {
+ "targetWorkspaceResourceId": "/subscriptions/7aef9d48-814f-45ad-b644-b0343316e174/resourceGroups/otherRg/providers/Microsoft.OperationalInsights/workspaces/Example_Workspace",
+ "targetWorkspaceTenantId": "f676d436-8d16-42db-81b7-ab578e110ccd"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/operations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/operations.json
new file mode 100644
index 000000000000..594c8bfeec3b
--- /dev/null
+++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-10-01-preview/operations.json
@@ -0,0 +1,138 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Security Insights",
+ "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider",
+ "version": "2024-10-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.SecurityInsights/operations": {
+ "get": {
+ "x-ms-examples": {
+ "Get all operations.": {
+ "$ref": "./examples/operations/ListOperations.json"
+ }
+ },
+ "operationId": "Operations_List",
+ "description": "Lists all operations available Azure Security Insights Resource Provider.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. Successfully retrieved operations list.",
+ "schema": {
+ "$ref": "#/definitions/OperationsList"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "../../../common/2.0/types.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "OperationsList": {
+ "description": "Lists the operations available in the SecurityInsights RP.",
+ "properties": {
+ "nextLink": {
+ "description": "URL to fetch the next set of operations.",
+ "type": "string",
+ "readOnly": true
+ },
+ "value": {
+ "description": "Array of operations",
+ "items": {
+ "$ref": "#/definitions/Operation"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "type": "object"
+ },
+ "Operation": {
+ "description": "Operation provided by provider",
+ "properties": {
+ "display": {
+ "description": "Properties of the operation",
+ "properties": {
+ "description": {
+ "description": "Description of the operation",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Operation name",
+ "type": "string"
+ },
+ "provider": {
+ "description": "Provider name",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Resource name",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "name": {
+ "description": "Name of the operation",
+ "type": "string"
+ },
+ "origin": {
+ "description": "The origin of the operation",
+ "type": "string"
+ },
+ "isDataAction": {
+ "description": "Indicates whether the operation is a data action",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/securityinsights/resource-manager/readme.md b/specification/securityinsights/resource-manager/readme.md
index bbd4b75179aa..cafa2e1e94b3 100644
--- a/specification/securityinsights/resource-manager/readme.md
+++ b/specification/securityinsights/resource-manager/readme.md
@@ -27,11 +27,54 @@ These are the global settings for the SecurityInsights API.
``` yaml
openapi-type: arm
-tag: package-2024-09
+tag: package-preview-2024-10-01
```
---
+### Tag: package-preview-2024-10-01
+
+These settings apply only when `--tag=package-preview-2024-10-01` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2024-10-01'
+input-file:
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/AlertRules.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/AutomationRules.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/BillingStatistics.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Bookmarks.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/BusinessApplicationAgents.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentPackages.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductPackages.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentProductTemplates.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ContentTemplates.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectorDefinitions.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/dataConnectors.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/EnrichmentWithWorkspace.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Entities.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueries.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/EntityQueryTemplates.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/FileImports.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Hunts.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Incidents.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Metadata.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/OfficeConsents.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/OnboardingStates.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/operations.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Recommendations.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/SecurityMLAnalyticsSettings.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Settings.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/SourceControls.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligence.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceCount.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/ThreatIntelligenceQuery.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/TriggeredAnalyticsRuleRuns.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/Watchlists.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerAssignments.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerConfigurations.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerGroups.json
+ - Microsoft.SecurityInsights/preview/2024-10-01-preview/WorkspaceManagerMembers.json
+```
+
### Tag: package-2024-09
These settings apply only when `--tag=package-2024-09` is specified on the command line.
From 8a4eca6b060cf70da696963245656fdc440b666b Mon Sep 17 00:00:00 2001
From: Daniel Jurek
Date: Thu, 9 Jan 2025 11:35:33 -0800
Subject: [PATCH 079/128] Don't check custom-words.txt (#32065)
* ignore custom-words.txt
* test change to custom-words.txt
* Revert test change to custom-words.txt
---
cSpell.json | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/cSpell.json b/cSpell.json
index 1e9f2b5a716c..7b5d8d438dad 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -28,7 +28,8 @@
"**/package-lock.json",
"cSpell.json",
"eng/**",
- "node_modules/**"
+ "node_modules/**",
+ "custom-words.txt"
],
"ignoreRegExpList": [
"v\\d",
From 1737d89d92f0f65f2bc0c2fc1a9d2f01d7dd1f95 Mon Sep 17 00:00:00 2001
From: gigi <52640944+gigigoo0@users.noreply.github.com>
Date: Fri, 10 Jan 2025 09:51:39 +0800
Subject: [PATCH 080/128] Fix get polygon response schema (#32061)
---
.../Search/stable/2023-06-01/search.json | 27 ++++++++++++++++---
1 file changed, 23 insertions(+), 4 deletions(-)
diff --git a/specification/maps/data-plane/Search/stable/2023-06-01/search.json b/specification/maps/data-plane/Search/stable/2023-06-01/search.json
index b3597b7e8b2c..c6f8e6cf8aeb 100644
--- a/specification/maps/data-plane/Search/stable/2023-06-01/search.json
+++ b/specification/maps/data-plane/Search/stable/2023-06-01/search.json
@@ -1147,13 +1147,32 @@
"Boundary": {
"description": "`GeoJSON GeocodingFeature` object that describe the boundaries of a geographical area. Geometry of the feature is described with `GeoJSON GeometryCollection`.\n\nPlease note, the service typically returns a GeometryCollection with Polygon or MultiPolygon sub-types.",
"type": "object",
- "allOf": [
- {
- "$ref": "../../../Common/stable/2023-06-01/common.json#/definitions/GeoJsonFeature"
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of a feature must be Feature.",
+ "enum": [
+ "Feature"
+ ],
+ "x-ms-enum": {
+ "name": "FeatureTypeEnum",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Feature"
+ }
+ ]
+ }
},
- {
+ "geometry": {
+ "$ref": "../../../Common/stable/2023-06-01/common.json#/definitions/GeoJsonGeometryCollection"
+ },
+ "properties": {
"$ref": "#/definitions/BoundaryProperties"
}
+ },
+ "required": [
+ "geometry"
]
},
"BoundaryProperties": {
From 9cda51602860201954415dab20bdcbcf389c7da9 Mon Sep 17 00:00:00 2001
From: will
Date: Fri, 10 Jan 2025 09:52:37 +0800
Subject: [PATCH 081/128] Route 2024-07-01-preview update for RouteRange
(#32086)
* Update isSimplifiedPolygon
* Fix cspell
---------
Co-authored-by: Will Huang
---
cSpell.json | 6 ++++++
.../Route/preview/2024-07-01-preview/route.json | 16 ++++++++--------
2 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/cSpell.json b/cSpell.json
index 7b5d8d438dad..a0c5f6930561 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1000,6 +1000,12 @@
"searchaddressreverseresponse"
]
},
+ {
+ "filename": "**/specification/maps/data-plane/Route/**",
+ "words": [
+ "modelerfour"
+ ]
+ },
{
"filename": "**/specification/communication/data-plane/Chat/**/communicationserviceschat.json",
"words": [
diff --git a/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json b/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json
index f092fb1dc557..0873834fcf7e 100644
--- a/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json
+++ b/specification/maps/data-plane/Route/preview/2024-07-01-preview/route.json
@@ -436,7 +436,7 @@
},
"/route/matrix": {
"post": {
- "description": "**Applies to**: see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\n\nThe `Route Matrix` API is an HTTP `POST` request that allows calculation of a matrix of route summaries for a set of routes defined by origin and destination locations by using a sync request. For every given origin, the service calculates the cost of routing from that origin to every given destination. The set of origins and the set of destinations can be thought of as the column and row headers of a table and each cell in the table contains the costs of routing from the origin to the destination for that cell. Route Matrices can be calculated for driving, walking and truck routes. For example, a food delivery company has 20 drivers and they need to find the closest driver to pick up the delivery from the restaurant. To solve this use case, they can call the Route Matrix API and use the travel cost to sort the drivers by their actual travel distance or time from the restaurant.\n\n\nRoute Matrices are used in several different types of applications, most commonly to solve the Travelling Salesman Problem (TSP) and Vehicle Routing Problem (VRP). For each origin-destination pair in the matrix, the travel time and distance are returned. You can use the computed costs to determine which detailed routes to calculate using the Route Directions API.\n\n\nThe maximum size of a matrix for sync request it's **2500** (the number of origins multiplied by the number of destinations).\n\n\n\n### Submit Synchronous Route Matrix Request\nIf your scenario requires synchronous requests and the maximum size of the matrix is less than or equal to 2500, you might want to make synchronous request. The maximum size of a matrix for this API is **2500** (the number of origins multiplied by the number of destinations). With that constraint in mind, examples of possible matrix dimensions are: 50x50, 60x40, 90x20 (it does not need to be square).\n\n\n\n### API Limitations\n The synchronous processing of matrix is best suited for fast, small matrices of route calculation. To calculate larger matrices and heavy route calculation, use the asynchronous endpoint. The following limitation is applicable to the synchronous requests. If none of the rows in the following table match the request's parameters, the request does not meet the requirements and will not be processed.\n\n| Max matrix size | Max number of origins | Max number of destinations | Additional limits\n |------------------|------------------------|----------------------------|------------|\n| 100 | 100 | 100 | N/A |\n| 200 | 200 | 200 | All origins and destinations should be contained in an axis-aligned 400 km x 400 km bounding box. Otherwise, some matrix cells will be resolved as OUT_OF_REGION. |\n| 2500 | 1000 | 1000 | - `departAt` or `arriveAt` must be any.
- `traffic` must be historical.
- `travelMode` must be either driving or truck
- No other parameters can be used explicitly |\n\n\nExamples:\n - Request of 10x20 matrix with `traffic=live`: This request will be processed with a bounding box limit, as it matches a limit of up to 200, which includes bounding box restrictions.\n\n - Request of 10x20 matrix with default parameters (`traffic=historical`): This request will be processed without a bounding box limit, as it matches a limit of up to 2500, which does not impose bounding box restrictions.\n\n\n",
+ "description": "**Applies to**: see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\n\nThe `Route Matrix` API is an HTTP `POST` request that allows calculation of a matrix of route summaries for a set of routes defined by origin and destination locations by using a sync request. For every given origin, the service calculates the cost of routing from that origin to every given destination. The set of origins and the set of destinations can be thought of as the column and row headers of a table and each cell in the table contains the costs of routing from the origin to the destination for that cell. Route Matrices can be calculated for driving, walking and truck routes. For example, a food delivery company has 20 drivers and they need to find the closest driver to pick up the delivery from the restaurant. To solve this use case, they can call the Route Matrix API and use the travel cost to sort the drivers by their actual travel distance or time from the restaurant.\n\n\nRoute Matrices are used in several different types of applications, most commonly to solve the Traveling Salesman Problem (TSP) and Vehicle Routing Problem (VRP). For each origin-destination pair in the matrix, the travel time and distance are returned. You can use the computed costs to determine which detailed routes to calculate using the Route Directions API.\n\n\nThe maximum size of a matrix for sync request it's **2500** (the number of origins multiplied by the number of destinations).\n\n\n\n### Submit Synchronous Route Matrix Request\nIf your scenario requires synchronous requests and the maximum size of the matrix is less than or equal to 2500, you might want to make synchronous request. The maximum size of a matrix for this API is **2500** (the number of origins multiplied by the number of destinations). With that constraint in mind, examples of possible matrix dimensions are: 50x50, 60x40, 90x20 (it does not need to be square).\n\n\n\n### API Limitations\n The synchronous processing of matrix is best suited for fast, small matrices of route calculation. To calculate larger matrices and heavy route calculation, use the asynchronous endpoint. The following limitation is applicable to the synchronous requests. If none of the rows in the following table match the request's parameters, the request does not meet the requirements and will not be processed.\n\n| Max matrix size | Max number of origins | Max number of destinations | Additional limits\n |------------------|------------------------|----------------------------|------------|\n| 100 | 100 | 100 | N/A |\n| 200 | 200 | 200 | All origins and destinations should be contained in an axis-aligned 400 km x 400 km bounding box. Otherwise, some matrix cells will be resolved as OUT_OF_REGION. |\n| 2500 | 1000 | 1000 | - `departAt` or `arriveAt` must be any.
- `traffic` must be historical.
- `travelMode` must be either driving or truck
- No other parameters can be used explicitly |\n\n\nExamples:\n - Request of 10x20 matrix with `traffic=live`: This request will be processed with a bounding box limit, as it matches a limit of up to 200, which includes bounding box restrictions.\n\n - Request of 10x20 matrix with default parameters (`traffic=historical`): This request will be processed without a bounding box limit, as it matches a limit of up to 2500, which does not impose bounding box restrictions.\n\n\n",
"operationId": "Route_PostRouteMatrix",
"consumes": [
"application/geo+json"
@@ -492,7 +492,7 @@
},
"/route/matrix:async": {
"post": {
- "description": "**Applies to**: see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\n\nThe `Route Matrix Async` API is an HTTP `POST` request that allows calculation of a matrix of route summaries for a set of routes defined by origin and destination locations by using an asynchronous (async) request. For every given origin, the service calculates the cost of routing from that origin to every given destination. The set of origins and the set of destinations can be thought of as the column and row headers of a table and each cell in the table contains the costs of routing from the origin to the destination for that cell. Route Matrices can be calculated for driving, walking and truck routes.\n\nRoute Matrices are used in several different types of applications, most commonly to solve the Travelling Salesman Problem (TSP) and Vehicle Routing Problem (VRP). For each origin-destination pair in the matrix, the travel time and distance are returned. You can use the computed costs to determine which detailed routes to calculate using the Route Directions API.\n\n\nThe maximum size of a matrix for async request is **50000** (the number of origins multiplied by the number of destinations).\n\n\n### Submit Asynchronous Route Matrix Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex routing requests. When you make a request by using async request, by default the service returns a 202 response code along a URL in the `operation-Location` field of the response header with the Azure Maps geography endpoint `{geography}.atlas.microsoft.com. This URL should be checked periodically until the status is Succeeded. \n\n\nThe maximum size of a matrix for this API is **50000** (the number of origins multiplied by the number of destinations). With that constraint in mind, examples of possible matrix dimensions are: 500x100, 100x100, 280x170. 100x50 (it does not need to be square).\n\n\nThe asynchronous responses are stored for **24** hours. The redirect URL returns a 404 response if used after the expiration period.\n\n\n\n\n```\nPOST https://atlas.microsoft.com/route/matrix:async?api-version=2024-07-01-preview&subscription-key={subscription-key}\n```\n\nHere's a typical sequence of asynchronous operations:\n1. Client sends a Route Matrix POST request to Azure Maps\n\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Route Matrix request has been accepted.\n\n > HTTP `Error` - There was an error processing your Route Matrix request. This could either be a 400 Bad Request or any other Error status code.\n\n\n3. If the Matrix Route request was accepted successfully, the `operation-location` header in the response contains the URL to get the status of the request. This status URI looks like the following:\n\n ```\n GET https://atlas.microsoft.com/route/operations/{id}?api-version=2024-07-01-preview?subscription-key={subscription-key}\n ```\n\n\n4. Client issues a GET request on the resultUrl obtained in Step 3 to get the results\n\n \n\n ```\n GET https://atlas.microsoft.com/route/operations/{id}/result?api-version=2024-07-01-preview?subscription-key={subscription-key}\n ```\n\n\n\n ### API Limitations\n The asynchronous processing of matrix is best suited for larger matrices that require heavy route calculation. The following limitation is applicable to the asynchronous requests. If none of the rows in the following table match the request's parameters, the request does not meet the requirements and will not be processed.\n\n > Async requests supports up to 50K matrix size in a single request. If you want to request an increase to this limit, you can create an Azure Maps Technical Support Request in the Azure portal.\n\n \n| Max matrix size | Max number of origins | Max number of destinations | Additional limits |\n|------------------|-----------------------|-----------------------------|-------------------|\n| 2500 | 1000 | 1000 | All origins and destinations should be contained in an axis-aligned 400 km x 400 km bounding box. Otherwise some matrix cells will be resolved as OUT_OF_REGION. |\n| 50,000 | 10,000 | 10,000 | - `departAt` or `arriveAt` must be any.
- `traffic` must be historical.
- `optimizeRoute` must be fastest.
- `travelMode` must be either driving or truck.
- No other parameters can be used explicitly. |\n\n\n",
+ "description": "**Applies to**: see pricing [tiers](https://aka.ms/AzureMapsPricingTier).\n\n\nThe `Route Matrix Async` API is an HTTP `POST` request that allows calculation of a matrix of route summaries for a set of routes defined by origin and destination locations by using an asynchronous (async) request. For every given origin, the service calculates the cost of routing from that origin to every given destination. The set of origins and the set of destinations can be thought of as the column and row headers of a table and each cell in the table contains the costs of routing from the origin to the destination for that cell. Route Matrices can be calculated for driving, walking and truck routes.\n\nRoute Matrices are used in several different types of applications, most commonly to solve the Traveling Salesman Problem (TSP) and Vehicle Routing Problem (VRP). For each origin-destination pair in the matrix, the travel time and distance are returned. You can use the computed costs to determine which detailed routes to calculate using the Route Directions API.\n\n\nThe maximum size of a matrix for async request is **50000** (the number of origins multiplied by the number of destinations).\n\n\n### Submit Asynchronous Route Matrix Request\nThe Asynchronous API is appropriate for processing big volumes of relatively complex routing requests. When you make a request by using async request, by default the service returns a 202 response code along a URL in the `operation-Location` field of the response header with the Azure Maps geography endpoint `{geography}.atlas.microsoft.com. This URL should be checked periodically until the status is Succeeded. \n\n\nThe maximum size of a matrix for this API is **50000** (the number of origins multiplied by the number of destinations). With that constraint in mind, examples of possible matrix dimensions are: 500x100, 100x100, 280x170. 100x50 (it does not need to be square).\n\n\nThe asynchronous responses are stored for **24** hours. The redirect URL returns a 404 response if used after the expiration period.\n\n\n\n\n```\nPOST https://atlas.microsoft.com/route/matrix:async?api-version=2024-07-01-preview&subscription-key={subscription-key}\n```\n\nHere's a typical sequence of asynchronous operations:\n1. Client sends a Route Matrix POST request to Azure Maps\n\n2. The server will respond with one of the following:\n\n > HTTP `202 Accepted` - Route Matrix request has been accepted.\n\n > HTTP `Error` - There was an error processing your Route Matrix request. This could either be a 400 Bad Request or any other Error status code.\n\n\n3. If the Matrix Route request was accepted successfully, the `operation-location` header in the response contains the URL to get the status of the request. This status URI looks like the following:\n\n ```\n GET https://atlas.microsoft.com/route/operations/{id}?api-version=2024-07-01-preview?subscription-key={subscription-key}\n ```\n\n\n4. Client issues a GET request on the resultUrl obtained in Step 3 to get the results\n\n \n\n ```\n GET https://atlas.microsoft.com/route/operations/{id}/result?api-version=2024-07-01-preview?subscription-key={subscription-key}\n ```\n\n\n\n ### API Limitations\n The asynchronous processing of matrix is best suited for larger matrices that require heavy route calculation. The following limitation is applicable to the asynchronous requests. If none of the rows in the following table match the request's parameters, the request does not meet the requirements and will not be processed.\n\n > Async requests supports up to 50K matrix size in a single request. If you want to request an increase to this limit, you can create an Azure Maps Technical Support Request in the Azure portal.\n\n \n| Max matrix size | Max number of origins | Max number of destinations | Additional limits |\n|------------------|-----------------------|-----------------------------|-------------------|\n| 2500 | 1000 | 1000 | All origins and destinations should be contained in an axis-aligned 400 km x 400 km bounding box. Otherwise some matrix cells will be resolved as OUT_OF_REGION. |\n| 50,000 | 10,000 | 10,000 | - `departAt` or `arriveAt` must be any.
- `traffic` must be historical.
- `optimizeRoute` must be fastest.
- `travelMode` must be either driving or truck.
- No other parameters can be used explicitly. |\n\n\n",
"operationId": "Route_PostRouteMatrixAsync",
"x-ms-long-running-operation": true,
"x-ms-long-running-operation-options": {
@@ -3085,9 +3085,9 @@
"format": "date-time"
},
"isSimplifiedPolygon": {
- "description": "Use this to specify if you need simplified polygons that reduces the number of polygon vertices while preserving the shape. The API returns high definition polygon by default.",
+ "description": "Use this to specify if you need simplified polygons that reduces the number of polygon vertices while preserving the shape. The API returns low definition polygon by default.",
"type": "boolean",
- "default": "false"
+ "default": "true"
},
"optimizeRoute": {
"description": "Specifies the parameter to use to optimize the route. If not defined, the default is \"fastestWithoutTraffic\" which returns the route to minimize the travel time without using current traffic information.\n\nExample: \"optimizeRoute\":\"shortest\"",
@@ -3127,16 +3127,16 @@
"$ref": "#/definitions/RouteRangeVehicleSpec"
},
"distanceBudgetInMeters ": {
- "description": "The distance budget specifies the maximum range in meters which can be travelled from the origin waypoint. It cannot be set when `timeBudgetInSec` is specified.\n\nWhen `isSimplifiedPolygon` is false, the maximum distance supported is 360,000 meters; otherwise, it is 50,000,000 meters.\n\nExample: \"distanceBudgetInMeters\":5000",
+ "description": "The distance budget specifies the maximum range in meters which can be traveled from the origin waypoint. It cannot be set when `timeBudgetInSec` is specified.\n\nWhen `isSimplifiedPolygon` is false, the maximum distance supported is 360,000 meters; otherwise, it is 500,000 meters.\n\nExample: \"distanceBudgetInMeters\":5000",
"type": "number",
"minimum": 0,
- "maximum": 50000000
+ "maximum": 500000
},
"timeBudgetInSec": {
- "description": "The time budget specifies the maximum time in seconds available for travel, defining how far one can go within this time constraint from the origin waypoint. It cannot be set when `distanceBudgetInMeters` is specified.\n\nWhen `isSimplifiedPolygon` is false, the maximum time supported is 14,400 seconds; otherwise, it is 10,000,000 seconds.\n\nExample: \"timeBudgetInSec\":3600",
+ "description": "The time budget specifies the maximum time in seconds available for travel, defining how far one can go within this time constraint from the origin waypoint. It cannot be set when `distanceBudgetInMeters` is specified.\n\nWhen `isSimplifiedPolygon` is false, the maximum time supported is 14,400 seconds; otherwise, it is 21,600 seconds.\n\nExample: \"timeBudgetInSec\":3600",
"type": "number",
"minimum": 0,
- "maximum": 10000000
+ "maximum": 21600
},
"travelMode": {
"description": "Specifies the travel profile to consider when calculating the range polygon. If not specified, the default value is \"driving\".\n\nExample: \"travelMode\":\"driving\"",
From b6075dbc2321933382ea91c787ee62c6bdb87e5d Mon Sep 17 00:00:00 2001
From: Weidong Xu
Date: Fri, 10 Jan 2025 11:33:54 +0800
Subject: [PATCH 082/128] java, OpenAI.Inference, migrate to clientNamespace
(#31643)
---
.../cognitiveservices/OpenAI.Inference/client.tsp | 15 +++++++++++++++
.../OpenAI.Inference/tspconfig.yaml | 3 ---
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/specification/cognitiveservices/OpenAI.Inference/client.tsp b/specification/cognitiveservices/OpenAI.Inference/client.tsp
index 343b7ff09090..58452ae12aca 100644
--- a/specification/cognitiveservices/OpenAI.Inference/client.tsp
+++ b/specification/cognitiveservices/OpenAI.Inference/client.tsp
@@ -11,6 +11,21 @@ using Azure.ClientGenerator.Core;
)
namespace Client;
+@@clientNamespace(Client, "com.azure.ai.openai", "java");
+@@clientNamespace(Azure.OpenAI, "com.azure.ai.openai", "java");
+@@clientNamespace(Azure.OpenAI.FunctionCallPreset,
+ "com.azure.ai.openai.implementation",
+ "java"
+);
+@@clientNamespace(Azure.OpenAI.FileListResponse,
+ "com.azure.ai.openai.implementation",
+ "java"
+);
+@@clientNamespace(Azure.OpenAI.OpenAIPageableListOf,
+ "com.azure.ai.openai.implementation",
+ "java"
+);
+
#suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI is a case-sensitive name"
@client({
name: "OpenAIClient",
diff --git a/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml b/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml
index ae42df79cf2c..4073cdf77720 100644
--- a/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml
+++ b/specification/cognitiveservices/OpenAI.Inference/tspconfig.yaml
@@ -24,13 +24,10 @@ options:
flavor: azure
"@azure-tools/typespec-java":
package-dir: "azure-ai-openai"
- namespace: "com.azure.ai.openai"
partial-update: true
enable-sync-stack: true
generate-tests: false
generate-samples: false
- custom-types-subpackage: "implementation.models"
- custom-types: "FunctionCallPreset,FileListResponse,OpenAIPageableListOfBatch"
customization-class: customization/src/main/java/OpenAICustomizations.java
flavor: azure
"@azure-tools/typespec-ts":
From f6fabb4294050e991f70aff1cd0392b3b512af8f Mon Sep 17 00:00:00 2001
From: David Watrous <509299+dpwatrous@users.noreply.github.com>
Date: Fri, 10 Jan 2025 11:00:07 -0500
Subject: [PATCH 083/128] [Batch] Normalize mgmt plane doc links (#32069)
Fixed some broken links, and normalized all doc URLs to
learn.microsoft.com without the en-us locale.
---
.../stable/2024-07-01/BatchManagement.json | 20 +++++++++----------
...tOutboundNetworkDependenciesEndpoints.json | 4 ++--
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json
index 35f58a2144c5..7b22df58744f 100644
--- a/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json
+++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/BatchManagement.json
@@ -2486,7 +2486,7 @@
"BatchAccount"
],
"operationId": "BatchAccount_ListOutboundNetworkDependenciesEndpoints",
- "description": "Lists the endpoints that a Batch Compute Node under this Batch Account may call as part of Batch service administration. If you are deploying a Pool inside of a virtual network that you specify, you must make sure your network allows outbound access to these endpoints. Failure to allow access to these endpoints may cause Batch to mark the affected nodes as unusable. For more information about creating a pool inside of a virtual network, see https://docs.microsoft.com/en-us/azure/batch/batch-virtual-network.",
+ "description": "Lists the endpoints that a Batch Compute Node under this Batch Account may call as part of Batch service administration. If you are deploying a Pool inside of a virtual network that you specify, you must make sure your network allows outbound access to these endpoints. Failure to allow access to these endpoints may cause Batch to mark the affected nodes as unusable. For more information about creating a pool inside of a virtual network, see https://learn.microsoft.com/azure/batch/batch-virtual-network.",
"x-ms-examples": {
"ListOutboundNetworkDependencies": {
"$ref": "./examples/BatchAccountListOutboundNetworkDependenciesEndpoints.json"
@@ -4093,7 +4093,7 @@
"vmSize": {
"type": "string",
"title": "The size of virtual machines in the pool. All VMs in a pool are the same size.",
- "description": "For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)."
+ "description": "For information about available VM sizes, see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)."
},
"deploymentConfiguration": {
"$ref": "#/definitions/DeploymentConfiguration",
@@ -4322,7 +4322,7 @@
"type": "string",
"title": "A formula for the desired number of compute nodes in the pool.",
"externalDocs": {
- "url": "https://docs.microsoft.com/en-us/azure/batch/batch-automatic-scaling",
+ "url": "https://learn.microsoft.com/azure/batch/batch-automatic-scaling",
"description": "Create an automatic scaling formula for scaling compute nodes in a Batch pool"
}
},
@@ -4933,7 +4933,7 @@
"id": {
"type": "string",
"title": "The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionId}.",
- "description": "This property is mutually exclusive with other properties. The Azure Compute Gallery Image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration."
+ "description": "This property is mutually exclusive with other properties. The Azure Compute Gallery Image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration."
},
"sharedGalleryImageId": {
"type": "string",
@@ -5476,7 +5476,7 @@
"DiffDiskPlacement": {
"type": "string",
"title": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool.",
- "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
+ "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
"enum": [
"CacheDisk"
],
@@ -5498,7 +5498,7 @@
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
"title": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool.",
- "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements."
+ "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements."
}
},
"title": "Specifies the ephemeral Disk Settings for the operating system disk used by the virtual machine."
@@ -5582,10 +5582,10 @@
"subnetId": {
"type": "string",
"title": "The ARM resource identifier of the virtual network subnet which the compute nodes of the pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.",
- "description": "The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication,including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration",
+ "description": "The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication,including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration",
"externalDocs": {
- "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor",
- "description": "Setting up RBAC for Azure Batch VNets"
+ "url": "https://learn.microsoft.com/azure/batch/batch-virtual-network",
+ "description": "Create an Azure Batch pool in a virtual network"
}
},
"dynamicVnetAssignmentScope": {
@@ -6500,7 +6500,7 @@
},
"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.
If this is set to true for Windows based pools, [WindowsConfiguration.enableAutomaticUpdates](https://learn.microsoft.com/en-us/rest/api/batchmanagement/pool/create?tabs=HTTP#windowsconfiguration) cannot be set to true."
+ "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.
If this is set to true for Windows based pools, [WindowsConfiguration.enableAutomaticUpdates](https://learn.microsoft.com/rest/api/batchmanagement/pool/create?tabs=HTTP#windowsconfiguration) cannot be set to true."
},
"useRollingUpgradePolicy": {
"type": "boolean",
diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/examples/BatchAccountListOutboundNetworkDependenciesEndpoints.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/examples/BatchAccountListOutboundNetworkDependenciesEndpoints.json
index 55113a8feeb3..624654cad57a 100644
--- a/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/examples/BatchAccountListOutboundNetworkDependenciesEndpoints.json
+++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2024-07-01/examples/BatchAccountListOutboundNetworkDependenciesEndpoints.json
@@ -78,7 +78,7 @@
"endpoints": [
{
"domainName": "packages.microsoft.com",
- "description": "Only applicable to pools containing a Mount Configuration. Learn about Mount Configurations in Batch at https://docs.microsoft.com/azure/batch/virtual-file-mount.",
+ "description": "Only applicable to pools containing a Mount Configuration. Learn about Mount Configurations in Batch at https://learn.microsoft.com/azure/batch/virtual-file-mount.",
"endpointDetails": [
{
"port": 443
@@ -92,7 +92,7 @@
"endpoints": [
{
"domainName": "*.vault.azure.net",
- "description": "Only applicable to pools containing a Disk Encryption Configuration and whose VM size does not support encryption at host. Learn more about disk encryption in Azure Batch at https://docs.microsoft.com/azure/batch/disk-encryption. Learn more about encryption at host and supported VM sizes at https://docs.microsoft.com/azure/virtual-machines/disks-enable-host-based-encryption-portal.",
+ "description": "Only applicable to pools containing a Disk Encryption Configuration and whose VM size does not support encryption at host. Learn more about disk encryption in Azure Batch at https://learn.microsoft.com/azure/batch/disk-encryption. Learn more about encryption at host and supported VM sizes at https://learn.microsoft.com/azure/virtual-machines/disks-enable-host-based-encryption-portal.",
"endpointDetails": [
{
"port": 443
From 2f12237d41f3d8d8de7302e5cd8d6aa056337baa Mon Sep 17 00:00:00 2001
From: David Watrous <509299+dpwatrous@users.noreply.github.com>
Date: Fri, 10 Jan 2025 11:02:08 -0500
Subject: [PATCH 084/128] [Batch] Normalize data plane doc links (#32070)
Fixed some broken links, and normalized all doc URLs to
learn.microsoft.com without the en-us locale.
---
cSpell.json | 13 ++--
specification/batch/Azure.Batch/models.tsp | 10 +--
.../preview/2024-07-01.20.0/BatchService.json | 10 +--
.../stable/2024-07-01.20.0/BatchService.json | 78 +++++++++----------
4 files changed, 56 insertions(+), 55 deletions(-)
diff --git a/cSpell.json b/cSpell.json
index a0c5f6930561..a0676d453d21 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -65,12 +65,6 @@
"PBIRS"
]
},
- {
- "filename": "**/specification/batch/**/*.json",
- "words": [
- "TVMs"
- ]
- },
{
"filename": "**/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/databox.json",
"words": [
@@ -1340,6 +1334,13 @@
"TVMs"
]
},
+ {
+ "filename": "**/specification/batch/Azure.Batch/**/*.tsp",
+ "words": [
+ "upgradingos",
+ "TVMs"
+ ]
+ },
{
"filename": "**/specification/batch/data-plane/Azure.Batch/**/*.json",
"words": [
diff --git a/specification/batch/Azure.Batch/models.tsp b/specification/batch/Azure.Batch/models.tsp
index 351b00907cbe..8de27c9f838d 100644
--- a/specification/batch/Azure.Batch/models.tsp
+++ b/specification/batch/Azure.Batch/models.tsp
@@ -2800,7 +2800,7 @@ model BatchPool {
@visibility("read")
allocationStateTransitionTime?: utcDateTime;
- @doc("The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).")
+ @doc("The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes, see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).")
@visibility("read")
vmSize?: string;
@@ -2914,7 +2914,7 @@ model BatchPoolCreateContent {
@doc("The display name for the Pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.")
displayName?: string;
- @doc("The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes for Pools using Images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration), see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).")
+ @doc("The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes for Pools using Images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration), see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).")
vmSize: string;
@doc("The virtual machine configuration for the Pool. This property must be specified.")
@@ -2935,7 +2935,7 @@ model BatchPoolCreateContent {
@doc("Whether the Pool size should automatically adjust over time. If false, at least one of targetDedicatedNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula property is required and the Pool automatically resizes according to the formula. The default value is false.")
enableAutoScale?: boolean;
- @doc("A formula for the desired number of Compute Nodes in the Pool. This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/).")
+ @doc("A formula for the desired number of Compute Nodes in the Pool. This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://learn.microsoft.com/azure/batch/batch-automatic-scaling).")
autoScaleFormula?: string;
@doc("The time interval at which to automatically adjust the Pool size according to the autoscale formula. The default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).")
@@ -3121,7 +3121,7 @@ model BatchPoolEnableAutoScaleContent {
@doc("Parameters for evaluating an automatic scaling formula on an Azure Batch Pool.")
model BatchPoolEvaluateAutoScaleContent {
- @doc("The formula for the desired number of Compute Nodes in the Pool. The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling).")
+ @doc("The formula for the desired number of Compute Nodes in the Pool. The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-automatic-scaling).")
autoScaleFormula: string;
}
@@ -3291,7 +3291,7 @@ model BatchTaskCreateContent {
@doc("How the Batch service should respond when the Task completes.")
exitConditions?: ExitConditions;
- @doc("The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).")
+ @doc("The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).")
commandLine: string;
@doc("The settings for the container under which the Task runs. If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files.")
diff --git a/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json b/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json
index d902ee9ac80a..9675a69a5fd5 100644
--- a/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json
+++ b/specification/batch/data-plane/Azure.Batch/preview/2024-07-01.20.0/BatchService.json
@@ -12202,7 +12202,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).",
+ "description": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes, see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).",
"readOnly": true
},
"virtualMachineConfiguration": {
@@ -12378,7 +12378,7 @@
},
"vmSize": {
"type": "string",
- "description": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes for Pools using Images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration), see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)."
+ "description": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size. For information about available VM sizes for Pools using Images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration), see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)."
},
"virtualMachineConfiguration": {
"$ref": "#/definitions/VirtualMachineConfiguration",
@@ -12412,7 +12412,7 @@
},
"autoScaleFormula": {
"type": "string",
- "description": "A formula for the desired number of Compute Nodes in the Pool. This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/)."
+ "description": "A formula for the desired number of Compute Nodes in the Pool. This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://learn.microsoft.com/azure/batch/batch-automatic-scaling)."
},
"autoScaleEvaluationInterval": {
"type": "string",
@@ -12540,7 +12540,7 @@
"properties": {
"autoScaleFormula": {
"type": "string",
- "description": "The formula for the desired number of Compute Nodes in the Pool. The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling)."
+ "description": "The formula for the desired number of Compute Nodes in the Pool. The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-automatic-scaling)."
}
},
"required": [
@@ -14006,7 +14006,7 @@
},
"commandLine": {
"type": "string",
- "description": "The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line of the Task. For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/BatchTaskContainerSettings",
diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json b/specification/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json
index b02f4738272e..ab12d354b873 100644
--- a/specification/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json
+++ b/specification/batch/data-plane/Microsoft.Batch/stable/2024-07-01.20.0/BatchService.json
@@ -326,7 +326,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -455,7 +455,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-support-images.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -583,7 +583,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -816,7 +816,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-certificates.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-certificates.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -2252,7 +2252,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-task-files.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -2402,7 +2402,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -3897,7 +3897,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -5278,7 +5278,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -5434,7 +5434,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -5591,7 +5591,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -5967,7 +5967,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-pools.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -7871,7 +7871,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-tasks.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -10531,7 +10531,7 @@
"in": "query",
"required": false,
"type": "string",
- "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.",
+ "description": "An OData $filter clause. For more information on constructing this filter, see https://learn.microsoft.com/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.",
"x-ms-parameter-grouping": {
"postfix": "Options"
}
@@ -10945,7 +10945,7 @@
"vmSize": {
"type": "string",
"title": "The size of virtual machines in the Pool. All VMs in a Pool are the same size.",
- "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"totalCoreHours": {
"type": "number",
@@ -11664,10 +11664,10 @@
"subnetId": {
"type": "string",
"title": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task.",
- "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration",
+ "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration",
"externalDocs": {
- "url": "https://azure.microsoft.com/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor",
- "description": "Setting up RBAC for Azure Batch VNETs"
+ "url": "https://learn.microsoft.com/azure/batch/batch-virtual-network",
+ "description": "Create an Azure Batch pool in a virtual network"
}
},
"skipWithdrawFromVNet": {
@@ -12121,7 +12121,7 @@
"commandLine": {
"type": "string",
"title": "The command line of the Job Manager Task.",
- "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/TaskContainerSettings",
@@ -12213,7 +12213,7 @@
"commandLine": {
"type": "string",
"title": "The command line of the Job Preparation Task.",
- "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/TaskContainerSettings",
@@ -12272,7 +12272,7 @@
"commandLine": {
"type": "string",
"title": "The command line of the Job Release Task.",
- "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/TaskContainerSettings",
@@ -12355,7 +12355,7 @@
"commandLine": {
"type": "string",
"title": "The command line of the StartTask.",
- "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/TaskContainerSettings",
@@ -12513,7 +12513,7 @@
"vmSize": {
"type": "string",
"title": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size.",
- "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"virtualMachineConfiguration": {
"$ref": "#/definitions/VirtualMachineConfiguration",
@@ -13805,7 +13805,7 @@
"virtualMachineImageId": {
"type": "string",
"title": "The ARM resource identifier of the Azure Compute Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} or /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName} for always defaulting to the latest image version.",
- "description": "This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration."
+ "description": "This property is mutually exclusive with other ImageReference properties. The Azure Compute Gallery Image must have replicas in the same region and must be in the same subscription as the Azure Batch account. If the image version is not specified in the imageId, the latest version will be used. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration."
},
"exactVersion": {
"type": "string",
@@ -14021,7 +14021,7 @@
"$ref": "#/definitions/DataDisk"
},
"title": "The configuration for data disks attached to the Compute Nodes in the Pool.",
- "description": "This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine."
+ "description": "This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://learn.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://learn.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine."
},
"licenseType": {
"type": "string",
@@ -14375,7 +14375,7 @@
"DiffDiskPlacement": {
"type": "string",
"title": "Specifies the ephemeral disk placement for operating system disk for all compute nodes (VMs) in the pool.",
- "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
+ "description": "This property can be used by user in the request to choose which location the operating system should be in. e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements",
"enum": [
"CacheDisk"
],
@@ -14397,7 +14397,7 @@
"placement": {
"$ref": "#/definitions/DiffDiskPlacement",
"title": "Specifies the ephemeral disk placement for operating system disk for all VMs in the pool.",
- "description": "This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements."
+ "description": "This property can be used by user in the request to choose the location e.g., cache disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer to Ephemeral OS disk size requirements for Windows VMs at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VMs at https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements."
}
},
"title": "Specifies the ephemeral Disk Settings for the operating system disk used by the compute node (VM)."
@@ -14484,10 +14484,10 @@
"subnetId": {
"type": "string",
"title": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.",
- "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration",
+ "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. Only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication, including ports 29876 and 29877. Also enable outbound connections to Azure Storage on port 443. For more details see: https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration",
"externalDocs": {
- "url": "https://azure.microsoft.com/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor",
- "description": "Setting up RBAC for Azure Batch VNETs"
+ "url": "https://learn.microsoft.com/azure/batch/batch-virtual-network",
+ "description": "Create an Azure Batch pool in a virtual network"
}
},
"dynamicVNetAssignmentScope": {
@@ -14654,7 +14654,7 @@
"vmSize": {
"type": "string",
"title": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size.",
- "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"virtualMachineConfiguration": {
"$ref": "#/definitions/VirtualMachineConfiguration",
@@ -14832,7 +14832,7 @@
"vmSize": {
"type": "string",
"title": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size.",
- "description": "For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)."
+ "description": "For information about available VM sizes, see Sizes for Virtual Machines in Azure (https://learn.microsoft.com/azure/virtual-machines/sizes/overview). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)."
},
"virtualMachineConfiguration": {
"$ref": "#/definitions/VirtualMachineConfiguration",
@@ -14865,7 +14865,7 @@
"autoScaleFormula": {
"type": "string",
"title": "A formula for the desired number of Compute Nodes in the Pool.",
- "description": "This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/)."
+ "description": "This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://learn.microsoft.com/azure/batch/batch-automatic-scaling)."
},
"autoScaleEvaluationInterval": {
"type": "string",
@@ -15333,7 +15333,7 @@
"commandLine": {
"type": "string",
"title": "The command line of the Task.",
- "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/TaskContainerSettings",
@@ -15436,7 +15436,7 @@
"commandLine": {
"type": "string",
"title": "The command line of the Task.",
- "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
+ "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)."
},
"containerSettings": {
"$ref": "#/definitions/TaskContainerSettings",
@@ -16003,7 +16003,7 @@
"vmSize": {
"type": "string",
"title": "The size of the virtual machine hosting the Compute Node.",
- "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)."
+ "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)."
},
"totalTasksRun": {
"type": "integer",
@@ -16536,7 +16536,7 @@
"autoScaleFormula": {
"type": "string",
"title": "The formula for the desired number of Compute Nodes in the Pool.",
- "description": "The formula is checked for validity before it is applied to the Pool. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling)."
+ "description": "The formula is checked for validity before it is applied to the Pool. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://learn.microsoft.com/azure/batch/batch-automatic-scaling)."
},
"autoScaleEvaluationInterval": {
"type": "string",
@@ -16553,7 +16553,7 @@
"autoScaleFormula": {
"type": "string",
"title": "The formula for the desired number of Compute Nodes in the Pool.",
- "description": "The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling)."
+ "description": "The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://learn.microsoft.com/azure/batch/batch-automatic-scaling)."
}
},
"required": [
@@ -16678,7 +16678,7 @@
"vmSize": {
"type": "string",
"title": "The size of virtual machines in the Pool. All VMs in a Pool are the same size.",
- "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).
This field can be updated only when the pool is empty."
+ "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes).
This field can be updated only when the pool is empty."
},
"taskSlotsPerNode": {
"type": "integer",
@@ -17017,7 +17017,7 @@
"$ref": "#/definitions/HttpHeader"
},
"title": "A list of name-value pairs for headers to be used in uploading output files",
- "description": "These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://docs.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types"
+ "description": "These headers will be specified when uploading files to Azure Storage. Official document on allowed headers when uploading blobs: https://learn.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types"
}
},
"required": [
From 62f75b8d312ae499a304c736b310126069ef7606 Mon Sep 17 00:00:00 2001
From: Spencer Ofwiti
Date: Fri, 10 Jan 2025 19:29:03 +0300
Subject: [PATCH 085/128] Update examples and descriptions and update
ApiKeyNameParameter for Nginx swagger (#32042)
* Update examples and descriptions for Nginx swagger
We recently merged this PR, [Nginx 2024 11 01 preview #31409](https://github.com/Azure/azure-rest-api-specs/pull/31409), but we found out some examples and description were not desired. we just want to update these and have no functional changes
* Add missing periods in JSON descriptions.
* Add x-ms-parameter-location to apiKeyName
Add `"x-ms-parameter-location": "method"` property to `ApiKeyNameParameter` for easier AutoRest generation.
---
.../preview/2024-11-01-preview/swagger.json | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/specification/nginx/resource-manager/NGINX.NGINXPLUS/preview/2024-11-01-preview/swagger.json b/specification/nginx/resource-manager/NGINX.NGINXPLUS/preview/2024-11-01-preview/swagger.json
index a1fd365b6d2f..88a980dda56b 100644
--- a/specification/nginx/resource-manager/NGINX.NGINXPLUS/preview/2024-11-01-preview/swagger.json
+++ b/specification/nginx/resource-manager/NGINX.NGINXPLUS/preview/2024-11-01-preview/swagger.json
@@ -2051,7 +2051,7 @@
},
"DiagnosticItem": {
"type": "object",
- "description": "A config diagnostic object found during the analysis of an NGINX configuration that can be a warning or recommendation.",
+ "description": "A diagnostic is a message associated with an NGINX config. The Analyzer returns diagnostics with a level indicating the importance of the diagnostic with optional category.",
"required": [
"directive",
"description",
@@ -2064,7 +2064,7 @@
"properties": {
"id": {
"type": "string",
- "description": "Unique identifier for the error"
+ "description": "Unique identifier for the diagnostic."
},
"directive": {
"type": "string",
@@ -2072,11 +2072,11 @@
},
"description": {
"type": "string",
- "example": "Directives outside the http context are not allowed"
+ "example": "Some directives cannot be overridden by the user provided configuration."
},
"file": {
"type": "string",
- "description": "the filepath of the most relevant config file",
+ "description": "The filepath of the most relevant config file.",
"example": "nginx.conf"
},
"line": {
@@ -2085,11 +2085,11 @@
},
"message": {
"type": "string",
- "example": "You are not allowed to set the worker_processes directive"
+ "example": "The value will be overridden with `4000`."
},
"rule": {
"type": "string",
- "example": "nginx-azure-load-balancer-allowed-directives"
+ "example": "overridden directives"
},
"level": {
"type": "string",
@@ -2106,7 +2106,7 @@
},
"category": {
"type": "string",
- "description": "category of warning",
+ "description": "Category of warning like Best-practices, Recommendation, Security etc.",
"example": "Security"
}
}
@@ -2214,7 +2214,8 @@
"description": "The resource name of the API key",
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]{0,28}[a-z0-9A-Z]|[a-z0-9A-Z])$",
"required": true,
- "type": "string"
+ "type": "string",
+ "x-ms-parameter-location": "method"
}
}
}
From dc7fc9849b622c2a0b3ce5e10746ceb4057ad759 Mon Sep 17 00:00:00 2001
From: Chidozie Ononiwu <31145988+chidozieononiwu@users.noreply.github.com>
Date: Fri, 10 Jan 2025 10:18:03 -0800
Subject: [PATCH 086/128] Update Source and Target Commit for APIView TypeSpec
generation (#32076)
---
eng/scripts/Create-APIView.ps1 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/eng/scripts/Create-APIView.ps1 b/eng/scripts/Create-APIView.ps1
index f219279f1892..f8bea35af231 100644
--- a/eng/scripts/Create-APIView.ps1
+++ b/eng/scripts/Create-APIView.ps1
@@ -363,8 +363,8 @@ function New-TypeSpecAPIViewTokens {
[string]$APIViewArtifactsDirectoryName
)
- $SourceCommitId = $(git rev-parse HEAD^)
- $TargetCommitId = $(git rev-parse HEAD)
+ $SourceCommitId = $(git rev-parse HEAD^2)
+ $TargetCommitId = $(git rev-parse HEAD^1)
$typeSpecProjects, $null = &"$PSScriptRoot/Get-TypeSpec-Folders.ps1" `
-IgnoreCoreFiles:$true `
From e5241805385733b35c0a32d97a16eaba37c85022 Mon Sep 17 00:00:00 2001
From: fangru2023 <138832097+fangru2023@users.noreply.github.com>
Date: Fri, 10 Jan 2025 11:44:31 -0800
Subject: [PATCH 087/128] Fix the api descrption (#31188)
* decription fix.
* remove \n
* fix invalid armId.
* fix \n
* fix arm id.
* Create sdk-suppressions.yaml
* Update specification/standbypool/StandbyPool.Management/sdk-suppressions.yaml
* edit cSpell.json.
* edit cSpell.json.
---------
Co-authored-by: kazrael2119 <98569699+kazrael2119@users.noreply.github.com>
---
cSpell.json | 6 ++++++
.../2024-03-01-preview/StandbyVirtualMachines_Get.json | 2 +-
...lMachines_ListByStandbyVirtualMachinePoolResource.json | 2 +-
.../examples/2024-03-01/StandbyVirtualMachines_Get.json | 2 +-
...lMachines_ListByStandbyVirtualMachinePoolResource.json | 2 +-
.../StandbyPool.Management/sdk-suppressions.yaml | 8 ++++++++
.../standbyVirtualMachinePoolRuntimeView.tsp | 4 ++--
.../examples/StandbyVirtualMachines_Get.json | 2 +-
...lMachines_ListByStandbyVirtualMachinePoolResource.json | 2 +-
.../preview/2024-03-01-preview/standbypool.json | 4 ++--
.../2024-03-01/examples/StandbyVirtualMachines_Get.json | 2 +-
...lMachines_ListByStandbyVirtualMachinePoolResource.json | 2 +-
.../stable/2024-03-01/standbypool.json | 4 ++--
13 files changed, 28 insertions(+), 14 deletions(-)
create mode 100644 specification/standbypool/StandbyPool.Management/sdk-suppressions.yaml
diff --git a/cSpell.json b/cSpell.json
index a0676d453d21..724a935881f0 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1791,6 +1791,12 @@
"multiapiscript",
"modelerfour"
]
+ },
+ {
+ "filename": "**/specification/standbypool/StandbyPool.Management/sdk-suppressions.yaml",
+ "words": [
+ "standbypool"
+ ]
}
],
"enableFiletypes": [
diff --git a/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_Get.json b/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_Get.json
index 60d508f5dbc3..34de3713bc5e 100644
--- a/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_Get.json
+++ b/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_Get.json
@@ -12,7 +12,7 @@
"200": {
"body": {
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json b/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
index 554db0bccff5..86f7ec06c2e5 100644
--- a/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
+++ b/specification/standbypool/StandbyPool.Management/examples/2024-03-01-preview/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
@@ -13,7 +13,7 @@
"value": [
{
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_Get.json b/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_Get.json
index 88ed0b605c69..7ba7aee993d9 100644
--- a/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_Get.json
+++ b/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_Get.json
@@ -12,7 +12,7 @@
"200": {
"body": {
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json b/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
index 1134400c489e..472b0addad24 100644
--- a/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
+++ b/specification/standbypool/StandbyPool.Management/examples/2024-03-01/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
@@ -13,7 +13,7 @@
"value": [
{
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/StandbyPool.Management/sdk-suppressions.yaml b/specification/standbypool/StandbyPool.Management/sdk-suppressions.yaml
new file mode 100644
index 000000000000..fc7f1ac95221
--- /dev/null
+++ b/specification/standbypool/StandbyPool.Management/sdk-suppressions.yaml
@@ -0,0 +1,8 @@
+suppressions:
+ azure-sdk-for-js:
+ - package: '@azure/arm-standbypool'
+ breaking-changes:
+ - Enum KnownOrigin no longer has value System
+ - Enum KnownOrigin no longer has value User
+ - Enum KnownOrigin no longer has value UserSystem
+ - Enum KnownRefillPolicy no longer has value Always
\ No newline at end of file
diff --git a/specification/standbypool/StandbyPool.Management/standbyVirtualMachinePoolRuntimeView.tsp b/specification/standbypool/StandbyPool.Management/standbyVirtualMachinePoolRuntimeView.tsp
index d103c037c626..d5c26856b206 100644
--- a/specification/standbypool/StandbyPool.Management/standbyVirtualMachinePoolRuntimeView.tsp
+++ b/specification/standbypool/StandbyPool.Management/standbyVirtualMachinePoolRuntimeView.tsp
@@ -37,7 +37,7 @@ model StandbyVirtualMachinePoolRuntimeViewResource
@doc("Contains information about a standby pool as last known by the StandbyPool resource provider.")
@added(Microsoft.StandbyPool.Versions.`2024-03-01-preview`)
model StandbyVirtualMachinePoolRuntimeViewResourceProperties {
- @doc("A list containing the counts of virtual machines in each possible power state for each zone if enabled, as known by the StandbyPool resource provider.\nIf zones are not enabled on the attached VMSS, the list will contain a single entry with null zone values.\nNote: any updates to pool resources outside of StandbyPoolRP (i.e deleting a VM through portal) are not reflected here.\nNote: any resources in the Running state may still be installing extensions / not fully provisioned.")
+ @doc("A list containing the counts of virtual machines in each possible power state for each zone if enabled, as known by the StandbyPool resource provider. If zones are not enabled on the attached VMSS, the list will contain a single entry without zone values. Note: any resources in the Running state may still be installing extensions / not fully provisioned.")
@visibility("read")
@extension("x-ms-identifiers", [])
instanceCountSummary: VirtualMachineInstanceCountSummary[];
@@ -48,7 +48,7 @@ model StandbyVirtualMachinePoolRuntimeViewResourceProperties {
}
@added(Microsoft.StandbyPool.Versions.`2024-03-01-preview`)
-@doc("Contains the counts of VMs in each power state in a given zone, fault domain, as known by the StandbyPool resource provider.\nNote: any updates to pool resources outside of StandbyPoolRP (i.e deleting a VM through portal) are not reflected here.\nNote: any resources in the Running state may still be installing extensions / not fully provisioned.")
+@doc("Contains the counts of VMs in each power state in a given zone, fault domain, as known by the StandbyPool resource provider. Note: any resources in the Running state may still be installing extensions / not fully provisioned.")
model VirtualMachineInstanceCountSummary {
@doc("The zone that the provided counts are in. This is null if zones are not enabled on the attached VMSS.")
zone?: int64;
diff --git a/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_Get.json b/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_Get.json
index 60d508f5dbc3..34de3713bc5e 100644
--- a/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_Get.json
+++ b/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_Get.json
@@ -12,7 +12,7 @@
"200": {
"body": {
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json b/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
index 554db0bccff5..86f7ec06c2e5 100644
--- a/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
+++ b/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
@@ -13,7 +13,7 @@
"value": [
{
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/standbypool.json b/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/standbypool.json
index 2541265e1c57..362a6d281445 100644
--- a/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/standbypool.json
+++ b/specification/standbypool/resource-manager/Microsoft.StandbyPool/preview/2024-03-01-preview/standbypool.json
@@ -1535,7 +1535,7 @@
"properties": {
"instanceCountSummary": {
"type": "array",
- "description": "A list containing the counts of virtual machines in each possible power state for each zone if enabled, as known by the StandbyPool resource provider.\nIf zones are not enabled on the attached VMSS, the list will contain a single entry with null zone values.\nNote: any updates to pool resources outside of StandbyPoolRP (i.e deleting a VM through portal) are not reflected here.\nNote: any resources in the Running state may still be installing extensions / not fully provisioned.",
+ "description": "A list containing the counts of virtual machines in each possible power state for each zone if enabled, as known by the StandbyPool resource provider. If zones are not enabled on the attached VMSS, the list will contain a single entry without zone values. Note: any resources in the Running state may still be installing extensions / not fully provisioned.",
"items": {
"$ref": "#/definitions/VirtualMachineInstanceCountSummary"
},
@@ -1634,7 +1634,7 @@
},
"VirtualMachineInstanceCountSummary": {
"type": "object",
- "description": "Contains the counts of VMs in each power state in a given zone, fault domain, as known by the StandbyPool resource provider.\nNote: any updates to pool resources outside of StandbyPoolRP (i.e deleting a VM through portal) are not reflected here.\nNote: any resources in the Running state may still be installing extensions / not fully provisioned.",
+ "description": "Contains the counts of VMs in each power state in a given zone, fault domain, as known by the StandbyPool resource provider. Note: any resources in the Running state may still be installing extensions / not fully provisioned.",
"properties": {
"zone": {
"type": "integer",
diff --git a/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_Get.json b/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_Get.json
index 88ed0b605c69..7ba7aee993d9 100644
--- a/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_Get.json
+++ b/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_Get.json
@@ -12,7 +12,7 @@
"200": {
"body": {
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json b/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
index 1134400c489e..472b0addad24 100644
--- a/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
+++ b/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/examples/StandbyVirtualMachines_ListByStandbyVirtualMachinePoolResource.json
@@ -13,7 +13,7 @@
"value": [
{
"properties": {
- "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/provider/Microsoft.Compute/virtualMachines/virtualMachine",
+ "virtualMachineResourceId": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.Compute/virtualMachines/virtualMachine",
"provisioningState": "Succeeded"
},
"id": "/subscriptions/00000000-0000-0000-0000-000000000009/resourceGroups/rgstandbypool/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/pool/standbyVirtualMachines/virtualMachine",
diff --git a/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/standbypool.json b/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/standbypool.json
index 298062f9bd15..33575f22baf1 100644
--- a/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/standbypool.json
+++ b/specification/standbypool/resource-manager/Microsoft.StandbyPool/stable/2024-03-01/standbypool.json
@@ -1535,7 +1535,7 @@
"properties": {
"instanceCountSummary": {
"type": "array",
- "description": "A list containing the counts of virtual machines in each possible power state for each zone if enabled, as known by the StandbyPool resource provider.\nIf zones are not enabled on the attached VMSS, the list will contain a single entry with null zone values.\nNote: any updates to pool resources outside of StandbyPoolRP (i.e deleting a VM through portal) are not reflected here.\nNote: any resources in the Running state may still be installing extensions / not fully provisioned.",
+ "description": "A list containing the counts of virtual machines in each possible power state for each zone if enabled, as known by the StandbyPool resource provider. If zones are not enabled on the attached VMSS, the list will contain a single entry without zone values. Note: any resources in the Running state may still be installing extensions / not fully provisioned.",
"items": {
"$ref": "#/definitions/VirtualMachineInstanceCountSummary"
},
@@ -1634,7 +1634,7 @@
},
"VirtualMachineInstanceCountSummary": {
"type": "object",
- "description": "Contains the counts of VMs in each power state in a given zone, fault domain, as known by the StandbyPool resource provider.\nNote: any updates to pool resources outside of StandbyPoolRP (i.e deleting a VM through portal) are not reflected here.\nNote: any resources in the Running state may still be installing extensions / not fully provisioned.",
+ "description": "Contains the counts of VMs in each power state in a given zone, fault domain, as known by the StandbyPool resource provider. Note: any resources in the Running state may still be installing extensions / not fully provisioned.",
"properties": {
"zone": {
"type": "integer",
From 483f46412dc9ed30250ae749834aebb7f3adbcf6 Mon Sep 17 00:00:00 2001
From: Renyx1219 <90930682+Renyx1219@users.noreply.github.com>
Date: Fri, 10 Jan 2025 12:04:24 -0800
Subject: [PATCH 088/128] Release Microsoft.DatabaseWatcher GA Version
stable/2025-01-02 (#32028)
* Add stable version 2025-01-02.
* Add examples for new API version.
* Update readme.md
* Add stable version 2025-01-02.
* Add examples for new API version.
* Update readme.md
* Fix TypeSpec Validation Error.
* Revert "Fix TypeSpec Validation Error."
This reverts commit 82c73af01bc09d343234b87c7ebd5b4cd1672d1a.
* Re-compile the code.
* Use eastus2 as example region.
* Update doc strings for consistence.
* Fix SpellCheck issue.
* Remove unused SqlVmTargetProperties in GA version.
---------
Co-authored-by: Yixiong Ren
Co-authored-by: Shubham <72555762+Shubham-9999-bot@users.noreply.github.com>
---
.../DatabaseWatcher.Management/baseTarget.tsp | 2 +-
...sources_CreateOrUpdate_MaximumSet_Gen.json | 68 +
...rtRuleResources_Delete_MaximumSet_Gen.json | 15 +
...AlertRuleResources_Get_MaximumSet_Gen.json | 36 +
...Resources_ListByParent_MaximumSet_Gen.json | 40 +
.../HealthValidations_Get_MaximumSet_Gen.json | 45 +
...lidations_ListByParent_MaximumSet_Gen.json | 49 +
...ations_StartValidation_MaximumSet_Gen.json | 40 +
.../Operations_List_MaximumSet_Gen.json | 28 +
.../Operations_List_MinimumSet_Gen.json | 12 +
...teLinkResources_Create_MaximumSet_Gen.json | 71 +
...teLinkResources_Delete_MaximumSet_Gen.json | 19 +
...ivateLinkResources_Get_MaximumSet_Gen.json | 36 +
...esources_ListByWatcher_MaximumSet_Gen.json | 40 +
...Targets_CreateOrUpdate_MaximumSet_Gen.json | 65 +
.../Targets_Delete_MaximumSet_Gen.json | 15 +
.../Targets_Get_MaximumSet_Gen.json | 35 +
.../Targets_ListByWatcher_MaximumSet_Gen.json | 39 +
...atchers_CreateOrUpdate_MaximumSet_Gen.json | 109 +
.../Watchers_Delete_MaximumSet_Gen.json | 18 +
.../Watchers_Get_MaximumSet_Gen.json | 49 +
...rs_ListByResourceGroup_MaximumSet_Gen.json | 263 ++
...ers_ListBySubscription_MaximumSet_Gen.json | 259 ++
.../Watchers_Start_MaximumSet_Gen.json | 54 +
.../Watchers_Stop_MaximumSet_Gen.json | 54 +
.../Watchers_Update_MaximumSet_Gen.json | 72 +
.../sharedPrivateLinkResource.tsp | 2 +-
.../sqlDbDatabaseTarget.tsp | 2 +-
.../sqlDbElasticPoolTarget.tsp | 4 +-
.../sqlMiTarget.tsp | 2 +-
.../sqlVmTarget.tsp | 4 +-
.../DatabaseWatcher.Management/watcher.tsp | 9 +-
.../preview/2023-09-01-preview/Watcher.json | 18 +-
.../preview/2024-07-19-preview/Watcher.json | 18 +-
.../preview/2024-10-01-preview/Watcher.json | 18 +-
.../stable/2025-01-02/Watcher.json | 2426 +++++++++++++++++
...sources_CreateOrUpdate_MaximumSet_Gen.json | 68 +
...rtRuleResources_Delete_MaximumSet_Gen.json | 15 +
...AlertRuleResources_Get_MaximumSet_Gen.json | 36 +
...Resources_ListByParent_MaximumSet_Gen.json | 40 +
.../HealthValidations_Get_MaximumSet_Gen.json | 45 +
...lidations_ListByParent_MaximumSet_Gen.json | 49 +
...ations_StartValidation_MaximumSet_Gen.json | 40 +
.../Operations_List_MaximumSet_Gen.json | 28 +
.../Operations_List_MinimumSet_Gen.json | 12 +
...teLinkResources_Create_MaximumSet_Gen.json | 71 +
...teLinkResources_Delete_MaximumSet_Gen.json | 19 +
...ivateLinkResources_Get_MaximumSet_Gen.json | 36 +
...esources_ListByWatcher_MaximumSet_Gen.json | 40 +
...Targets_CreateOrUpdate_MaximumSet_Gen.json | 65 +
.../Targets_Delete_MaximumSet_Gen.json | 15 +
.../examples/Targets_Get_MaximumSet_Gen.json | 35 +
.../Targets_ListByWatcher_MaximumSet_Gen.json | 39 +
...atchers_CreateOrUpdate_MaximumSet_Gen.json | 109 +
.../Watchers_Delete_MaximumSet_Gen.json | 18 +
.../examples/Watchers_Get_MaximumSet_Gen.json | 49 +
...rs_ListByResourceGroup_MaximumSet_Gen.json | 263 ++
...ers_ListBySubscription_MaximumSet_Gen.json | 259 ++
.../Watchers_Start_MaximumSet_Gen.json | 54 +
.../Watchers_Stop_MaximumSet_Gen.json | 54 +
.../Watchers_Update_MaximumSet_Gen.json | 72 +
.../resource-manager/readme.md | 15 +-
62 files changed, 5542 insertions(+), 40 deletions(-)
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_ListByParent_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_ListByParent_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_StartValidation_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MinimumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Create_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_ListByWatcher_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListByResourceGroup_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListBySubscription_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Start_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Stop_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Update_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/Watcher.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_ListByParent_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_ListByParent_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_StartValidation_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MinimumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Create_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_ListByWatcher_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_CreateOrUpdate_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Delete_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Get_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListByResourceGroup_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListBySubscription_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Start_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Stop_MaximumSet_Gen.json
create mode 100644 specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Update_MaximumSet_Gen.json
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/baseTarget.tsp b/specification/databasewatcher/DatabaseWatcher.Management/baseTarget.tsp
index 858947f1d82d..2a48f6c83a95 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/baseTarget.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/baseTarget.tsp
@@ -49,7 +49,7 @@ model TargetProperties {
@doc("The vault specific details required if using SQL authentication to connect to a target.")
model VaultSecret {
- @doc("The Azure ResourceId of the Key Vault instance storing database authentication secrets.")
+ @doc("The Azure resource ID of the Key Vault instance storing database authentication secrets.")
akvResourceId?: Azure.Core.armResourceIdentifier<[
{
type: "Microsoft.KeyVault/vaults";
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..79c0f15d24ab
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,68 @@
+{
+ "title": "AlertRuleResources_CreateOrUpdate_MaximumSet",
+ "operationId": "AlertRuleResources_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "alertRuleResourceName": "testAlert",
+ "resource": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Delete_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..1932545a8f2d
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Delete_MaximumSet_Gen.json
@@ -0,0 +1,15 @@
+{
+ "title": "AlertRuleResources_Delete_MaximumSet",
+ "operationId": "AlertRuleResources_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "alertRuleResourceName": "testAlert"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Get_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..aaa8a7476020
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_Get_MaximumSet_Gen.json
@@ -0,0 +1,36 @@
+{
+ "title": "AlertRuleResources_Get_MaximumSet",
+ "operationId": "AlertRuleResources_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "alertRuleResourceName": "testAlert"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_ListByParent_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_ListByParent_MaximumSet_Gen.json
new file mode 100644
index 000000000000..dcad88d76fd0
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/AlertRuleResources_ListByParent_MaximumSet_Gen.json
@@ -0,0 +1,40 @@
+{
+ "title": "AlertRuleResources_ListByParent_MaximumSet",
+ "operationId": "AlertRuleResources_ListByParent",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "provisioningState": "Succeeded",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_Get_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..551227c087df
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_Get_MaximumSet_Gen.json
@@ -0,0 +1,45 @@
+{
+ "title": "HealthValidations_Get_MaximumSet",
+ "operationId": "HealthValidations_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "healthValidationName": "testHealthValidation"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "startTime": "2024-10-07T19:42:55.594Z",
+ "endTime": "2024-10-07T19:42:55.594Z",
+ "status": "Succeeded",
+ "issues": [
+ {
+ "errorCode": "ReadDatasetError",
+ "errorMessage": "Invalid operation. The connection is closed.",
+ "additionalDetails": "There seems to be a connection issue.",
+ "recommendationMessage": "Please check the connection.",
+ "recommendationUrl": "https://aka.ms/issuerecommendation",
+ "relatedResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/test-setup/providers/Microsoft.Sql/servers/test-setup/databases/test-1",
+ "relatedResourceType": "Microsoft.Sql/servers"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/healthValidations/testHealthValidation",
+ "name": "testHealthValidation",
+ "type": "microsoft.databasewatcher/watchers/healthValidations",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_ListByParent_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_ListByParent_MaximumSet_Gen.json
new file mode 100644
index 000000000000..03b146a5534a
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_ListByParent_MaximumSet_Gen.json
@@ -0,0 +1,49 @@
+{
+ "title": "HealthValidations_ListByParent_MaximumSet",
+ "operationId": "HealthValidations_ListByParent",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "startTime": "2024-10-07T19:42:55.594Z",
+ "endTime": "2024-10-07T19:42:55.594Z",
+ "status": "Succeeded",
+ "issues": [
+ {
+ "errorCode": "ReadDatasetError",
+ "errorMessage": "Invalid operation. The connection is closed.",
+ "additionalDetails": "There seems to be a connection issue.",
+ "recommendationMessage": "Please check the connection.",
+ "recommendationUrl": "https://aka.ms/issuerecommendation",
+ "relatedResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/test-setup/providers/Microsoft.Sql/servers/test-setup/databases/test-1",
+ "relatedResourceType": "Microsoft.Sql/servers"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/healthValidations/testHealthValidation",
+ "name": "testHealthValidation",
+ "type": "microsoft.databasewatcher/watchers/healthValidations",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_StartValidation_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_StartValidation_MaximumSet_Gen.json
new file mode 100644
index 000000000000..6d049260cc72
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/HealthValidations_StartValidation_MaximumSet_Gen.json
@@ -0,0 +1,40 @@
+{
+ "title": "HealthValidations_StartValidation_MaximumSet",
+ "operationId": "HealthValidations_StartValidation",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "healthValidationName": "testHealthValidation"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "startTime": "2024-10-07T19:42:55.594Z",
+ "endTime": "2024-10-07T19:42:55.594Z",
+ "status": "Running",
+ "issues": [],
+ "provisioningState": "Accepted"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/healthValidations/testHealthValidation",
+ "name": "testHealthValidation",
+ "type": "microsoft.databasewatcher/watchers/healthValidations",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..eb1e08363a20
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MaximumSet_Gen.json
@@ -0,0 +1,28 @@
+{
+ "title": "Operations_List_MaximumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2025-01-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snzrdvltunnrz",
+ "isDataAction": true,
+ "display": {
+ "provider": "dtfrqzamclscchmghtxn",
+ "resource": "lvlhnsfnquorjuuutjxex",
+ "operation": "vbgvamoxqwthpbdghxzaw",
+ "description": "nvbtuwwjfehylzmoatd"
+ },
+ "origin": "user",
+ "actionType": "Internal"
+ }
+ ],
+ "nextLink": "https://microsoft.com/awfba"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MinimumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..9ac9a706a7bf
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Operations_List_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "title": "Operations_List_MinimumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2025-01-02"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Create_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Create_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7032977720a6
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Create_MaximumSet_Gen.json
@@ -0,0 +1,71 @@
+{
+ "title": "SharedPrivateLinkResources_Create_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_Create",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "sharedPrivateLinkResourceName": "monitoringh22eed",
+ "resource": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..947380716fc6
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "title": "SharedPrivateLinkResources_Delete_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "sharedPrivateLinkResourceName": "monitoringh22eed"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Get_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..bdac18915fb2
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_Get_MaximumSet_Gen.json
@@ -0,0 +1,36 @@
+{
+ "title": "SharedPrivateLinkResources_Get_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "sharedPrivateLinkResourceName": "monitoringh22eed"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json
new file mode 100644
index 000000000000..9ba73e833dd5
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json
@@ -0,0 +1,40 @@
+{
+ "title": "SharedPrivateLinkResources_ListByWatcher_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_ListByWatcher",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/awfba"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_CreateOrUpdate_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..2a7013ec79b7
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,65 @@
+{
+ "title": "Targets_CreateOrUpdate_MaximumSet",
+ "operationId": "Targets_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "targetName": "monitoringh22eed",
+ "resource": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Delete_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4902176817d7
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Delete_MaximumSet_Gen.json
@@ -0,0 +1,15 @@
+{
+ "title": "Targets_Delete_MaximumSet",
+ "operationId": "Targets_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "targetName": "monitoringh22eed"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Get_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4b180d5b08dc
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_Get_MaximumSet_Gen.json
@@ -0,0 +1,35 @@
+{
+ "title": "Targets_Get_MaximumSet",
+ "operationId": "Targets_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "targetName": "monitoringh22eed"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_ListByWatcher_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_ListByWatcher_MaximumSet_Gen.json
new file mode 100644
index 000000000000..9f12923dd414
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Targets_ListByWatcher_MaximumSet_Gen.json
@@ -0,0 +1,39 @@
+{
+ "title": "Targets_ListByWatcher_MaximumSet",
+ "operationId": "Targets_ListByWatcher",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_CreateOrUpdate_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d9c77fe25c70
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,109 @@
+{
+ "title": "Watchers_CreateOrUpdate_MaximumSet",
+ "operationId": "Watchers_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "resource": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "tags": {},
+ "location": "eastus2"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Delete_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..5f6a7ce368ad
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "title": "Watchers_Delete_MaximumSet",
+ "operationId": "Watchers_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Get_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..6a97f9cb5f73
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Get_MaximumSet_Gen.json
@@ -0,0 +1,49 @@
+{
+ "title": "Watchers_Get_MaximumSet",
+ "operationId": "Watchers_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "myWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListByResourceGroup_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListByResourceGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c51fc43163f5
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListByResourceGroup_MaximumSet_Gen.json
@@ -0,0 +1,263 @@
+{
+ "title": "Watchers_ListByResourceGroup_MaximumSet",
+ "operationId": "Watchers_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "West US",
+ "tags": {},
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-4sz1jg/providers/Microsoft.DatabaseWatcher/watchers/databasemo4o4zdf",
+ "name": "databasemo4o4zdf",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-d77ftn/providers/Microsoft.DatabaseWatcher/watchers/databasemosn3h6l",
+ "name": "databasemosn3h6l",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-nyb4gm/providers/Microsoft.DatabaseWatcher/watchers/databasemoyb6iar",
+ "name": "databasemoyb6iar",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-llis4j/providers/Microsoft.DatabaseWatcher/watchers/databasemoi04xst",
+ "name": "databasemoi04xst",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-thy6zd/providers/Microsoft.DatabaseWatcher/watchers/databasemonpyl24",
+ "name": "databasemonpyl24",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "systemData": {
+ "createdBy": "ysoqerxnmxqsvhmvjojoyzotc",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T18:01:18.690Z",
+ "lastModifiedBy": "yrilzsg",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T18:01:18.690Z"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {}
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih",
+ "name": "databasemo3ej9ih",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListBySubscription_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListBySubscription_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b9c5a6edf457
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_ListBySubscription_MaximumSet_Gen.json
@@ -0,0 +1,259 @@
+{
+ "title": "Watchers_ListBySubscription_MaximumSet",
+ "operationId": "Watchers_ListBySubscription",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "West US",
+ "tags": {},
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-4sz1jg/providers/Microsoft.DatabaseWatcher/watchers/databasemo4o4zdf",
+ "name": "databasemo4o4zdf",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-d77ftn/providers/Microsoft.DatabaseWatcher/watchers/databasemosn3h6l",
+ "name": "databasemosn3h6l",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-nyb4gm/providers/Microsoft.DatabaseWatcher/watchers/databasemoyb6iar",
+ "name": "databasemoyb6iar",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-llis4j/providers/Microsoft.DatabaseWatcher/watchers/databasemoi04xst",
+ "name": "databasemoi04xst",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-thy6zd/providers/Microsoft.DatabaseWatcher/watchers/databasemonpyl24",
+ "name": "databasemonpyl24",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "systemData": {
+ "createdBy": "ysoqerxnmxqsvhmvjojoyzotc",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T18:01:18.690Z",
+ "lastModifiedBy": "yrilzsg",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T18:01:18.690Z"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {}
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih",
+ "name": "databasemo3ej9ih",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Start_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Start_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d58103544eb8
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Start_MaximumSet_Gen.json
@@ -0,0 +1,54 @@
+{
+ "title": "Watchers_Start_MaximumSet",
+ "operationId": "Watchers_Start",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Stop_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Stop_MaximumSet_Gen.json
new file mode 100644
index 000000000000..1f68a5d218b4
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Stop_MaximumSet_Gen.json
@@ -0,0 +1,54 @@
+{
+ "title": "Watchers_Stop_MaximumSet",
+ "operationId": "Watchers_Stop",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "myWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Update_MaximumSet_Gen.json b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c397bc528188
--- /dev/null
+++ b/specification/databasewatcher/DatabaseWatcher.Management/examples/2025-01-02/Watchers_Update_MaximumSet_Gen.json
@@ -0,0 +1,72 @@
+{
+ "title": "Watchers_Update_MaximumSet",
+ "operationId": "Watchers_Update",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "properties": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/newtest"
+ },
+ "tags": {}
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/sharedPrivateLinkResource.tsp b/specification/databasewatcher/DatabaseWatcher.Management/sharedPrivateLinkResource.tsp
index 36abe26ae347..187a93877a00 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/sharedPrivateLinkResource.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/sharedPrivateLinkResource.tsp
@@ -35,7 +35,7 @@ model SharedPrivateLinkResource
@doc("The generic properties of a Shared Private Link resource.")
model SharedPrivateLinkResourceProperties {
- @doc("The resource id of the resource the shared private link resource is for.")
+ @doc("The resource ID of the resource the shared private link resource is for.")
privateLinkResourceId: Azure.Core.armResourceIdentifier;
@doc("The group id from the provider of resource the shared private link resource is for.")
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/sqlDbDatabaseTarget.tsp b/specification/databasewatcher/DatabaseWatcher.Management/sqlDbDatabaseTarget.tsp
index b8f64a68b780..5b406c83f944 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/sqlDbDatabaseTarget.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/sqlDbDatabaseTarget.tsp
@@ -16,7 +16,7 @@ model SqlDbSingleDatabaseTargetProperties extends TargetProperties {
@doc("The Azure SQL DB single database target.")
targetType: "SqlDb";
- @doc("The Azure ResourceId of an Azure SQL DB single database target.")
+ @doc("The Azure resource ID of an Azure SQL DB single database target.")
sqlDbResourceId: armResourceIdentifier<[
{
type: "Microsoft.Sql/servers/databases";
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/sqlDbElasticPoolTarget.tsp b/specification/databasewatcher/DatabaseWatcher.Management/sqlDbElasticPoolTarget.tsp
index 64a2e38418d3..0d2c3db29ccc 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/sqlDbElasticPoolTarget.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/sqlDbElasticPoolTarget.tsp
@@ -15,14 +15,14 @@ model SqlDbElasticPoolTargetProperties extends TargetProperties {
@doc("The Azure SQL DB elastic pool target.")
targetType: "SqlEp";
- @doc("The Azure ResourceId of an Azure SQL DB elastic pool target.")
+ @doc("The Azure resource ID of an Azure SQL DB elastic pool target.")
sqlEpResourceId: Azure.Core.armResourceIdentifier<[
{
type: "Microsoft.Sql/servers/elasticPools";
}
]>;
- @doc("The Azure ResourceId of the anchor database used to connect to an elastic pool.")
+ @doc("The Azure resource ID of the anchor database used to connect to an elastic pool.")
anchorDatabaseResourceId: Azure.Core.armResourceIdentifier<[
{
type: "Microsoft.Sql/servers/databases";
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/sqlMiTarget.tsp b/specification/databasewatcher/DatabaseWatcher.Management/sqlMiTarget.tsp
index bd21e90237b4..46b8cbe25c2a 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/sqlMiTarget.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/sqlMiTarget.tsp
@@ -15,7 +15,7 @@ model SqlMiTargetProperties extends TargetProperties {
@doc("The Azure SQL Managed Instance target.")
targetType: "SqlMi";
- @doc("The Azure ResourceId of an Azure SQL Managed Instance target.")
+ @doc("The Azure resource ID of an Azure SQL Managed Instance target.")
sqlMiResourceId: Azure.Core.armResourceIdentifier<[
{
type: "Microsoft.Sql/managedInstances";
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/sqlVmTarget.tsp b/specification/databasewatcher/DatabaseWatcher.Management/sqlVmTarget.tsp
index 0b719dfd1d29..8df15eda3477 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/sqlVmTarget.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/sqlVmTarget.tsp
@@ -7,15 +7,17 @@ namespace Microsoft.DatabaseWatcher;
using TypeSpec.Http;
using TypeSpec.Rest;
+using TypeSpec.Versioning;
using Azure.ResourceManager;
using OpenAPI;
@doc("The properties specific to Azure SQL VM targets.")
+@removed(Versions.v2025_01_02)
model SqlVmTargetProperties extends TargetProperties {
@doc("The Azure SQL VM target.")
targetType: "SqlVm";
- @doc("The Azure ResourceId of an Azure SQL VM target.")
+ @doc("The Azure resource ID of an Azure SQL VM target.")
sqlVmResourceId: Azure.Core.armResourceIdentifier<[
{
type: "Microsoft.SqlVirtualMachine/sqlVirtualMachines";
diff --git a/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp b/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp
index 3cd82183149c..16e1b4e24bd4 100644
--- a/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp
+++ b/specification/databasewatcher/DatabaseWatcher.Management/watcher.tsp
@@ -44,6 +44,12 @@ enum Versions {
@useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1)
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
v2024_10_01_preview: "2024-10-01-preview",
+
+ @doc("The 2025-01-02 version.")
+ @armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5)
+ @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1)
+ @useDependency(Azure.Core.Versions.v1_0_Preview_2)
+ v2025_01_02: "2025-01-02",
}
@doc("The DatabaseWatcherProviderHub resource.")
model Watcher is TrackedResource {
@@ -72,7 +78,6 @@ model WatcherProperties {
@doc("The resource ID of a user-assigned managed identity that will be assigned to a new alert rule.")
@added(Versions.v2024_07_19_preview)
- @added(Versions.v2024_10_01_preview)
defaultAlertRuleIdentityResourceId?: armResourceIdentifier<[
{
type: "Microsoft.ManagedIdentity/userAssignedIdentities";
@@ -82,7 +87,7 @@ model WatcherProperties {
@doc("The properties of a data store.")
model Datastore {
- @doc("The Azure ResourceId of an Azure Data Explorer cluster.")
+ @doc("The Azure resource ID of an Azure Data Explorer cluster.")
adxClusterResourceId?: armResourceIdentifier<[
{
type: "Microsoft.Kusto/clusters";
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json
index 6212e560eceb..66d17839cd17 100644
--- a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2023-09-01-preview/Watcher.json
@@ -1098,7 +1098,7 @@
"adxClusterResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure Data Explorer cluster.",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1147,7 +1147,7 @@
"adxClusterResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure Data Explorer cluster.",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1256,7 +1256,7 @@
"privateLinkResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The resource id of the resource the shared private link resource is for."
+ "description": "The resource ID of the resource the shared private link resource is for."
},
"groupId": {
"type": "string",
@@ -1330,7 +1330,7 @@
"sqlEpResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL DB elastic pool target.",
+ "description": "The Azure resource ID of an Azure SQL DB elastic pool target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1342,7 +1342,7 @@
"anchorDatabaseResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of the anchor database used to connect to an elastic pool.",
+ "description": "The Azure resource ID of the anchor database used to connect to an elastic pool.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1375,7 +1375,7 @@
"sqlDbResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL DB single database target.",
+ "description": "The Azure resource ID of an Azure SQL DB single database target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1407,7 +1407,7 @@
"sqlMiResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL Managed Instance target.",
+ "description": "The Azure resource ID of an Azure SQL Managed Instance target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1445,7 +1445,7 @@
"sqlVmResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL VM target.",
+ "description": "The Azure resource ID of an Azure SQL VM target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1577,7 +1577,7 @@
"akvResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of the Key Vault instance storing database authentication secrets.",
+ "description": "The Azure resource ID of the Key Vault instance storing database authentication secrets.",
"x-ms-arm-id-details": {
"allowedResources": [
{
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-07-19-preview/Watcher.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-07-19-preview/Watcher.json
index 863ddf9d93b9..3c42b9487b87 100644
--- a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-07-19-preview/Watcher.json
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-07-19-preview/Watcher.json
@@ -1414,7 +1414,7 @@
"adxClusterResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure Data Explorer cluster.",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1463,7 +1463,7 @@
"adxClusterResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure Data Explorer cluster.",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1572,7 +1572,7 @@
"privateLinkResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The resource id of the resource the shared private link resource is for."
+ "description": "The resource ID of the resource the shared private link resource is for."
},
"groupId": {
"type": "string",
@@ -1646,7 +1646,7 @@
"sqlEpResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL DB elastic pool target.",
+ "description": "The Azure resource ID of an Azure SQL DB elastic pool target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1658,7 +1658,7 @@
"anchorDatabaseResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of the anchor database used to connect to an elastic pool.",
+ "description": "The Azure resource ID of the anchor database used to connect to an elastic pool.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1691,7 +1691,7 @@
"sqlDbResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL DB single database target.",
+ "description": "The Azure resource ID of an Azure SQL DB single database target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1723,7 +1723,7 @@
"sqlMiResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL Managed Instance target.",
+ "description": "The Azure resource ID of an Azure SQL Managed Instance target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1761,7 +1761,7 @@
"sqlVmResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL VM target.",
+ "description": "The Azure resource ID of an Azure SQL VM target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1893,7 +1893,7 @@
"akvResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of the Key Vault instance storing database authentication secrets.",
+ "description": "The Azure resource ID of the Key Vault instance storing database authentication secrets.",
"x-ms-arm-id-details": {
"allowedResources": [
{
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-10-01-preview/Watcher.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-10-01-preview/Watcher.json
index 65af761e373e..99bc50a370b8 100644
--- a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-10-01-preview/Watcher.json
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/preview/2024-10-01-preview/Watcher.json
@@ -1595,7 +1595,7 @@
"adxClusterResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure Data Explorer cluster.",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1644,7 +1644,7 @@
"adxClusterResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure Data Explorer cluster.",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1833,7 +1833,7 @@
"privateLinkResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The resource id of the resource the shared private link resource is for."
+ "description": "The resource ID of the resource the shared private link resource is for."
},
"groupId": {
"type": "string",
@@ -1907,7 +1907,7 @@
"sqlEpResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL DB elastic pool target.",
+ "description": "The Azure resource ID of an Azure SQL DB elastic pool target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1919,7 +1919,7 @@
"anchorDatabaseResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of the anchor database used to connect to an elastic pool.",
+ "description": "The Azure resource ID of the anchor database used to connect to an elastic pool.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1952,7 +1952,7 @@
"sqlDbResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL DB single database target.",
+ "description": "The Azure resource ID of an Azure SQL DB single database target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -1984,7 +1984,7 @@
"sqlMiResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL Managed Instance target.",
+ "description": "The Azure resource ID of an Azure SQL Managed Instance target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -2022,7 +2022,7 @@
"sqlVmResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of an Azure SQL VM target.",
+ "description": "The Azure resource ID of an Azure SQL VM target.",
"x-ms-arm-id-details": {
"allowedResources": [
{
@@ -2205,7 +2205,7 @@
"akvResourceId": {
"type": "string",
"format": "arm-id",
- "description": "The Azure ResourceId of the Key Vault instance storing database authentication secrets.",
+ "description": "The Azure resource ID of the Key Vault instance storing database authentication secrets.",
"x-ms-arm-id-details": {
"allowedResources": [
{
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/Watcher.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/Watcher.json
new file mode 100644
index 000000000000..8952e44e78b8
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/Watcher.json
@@ -0,0 +1,2426 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "Microsoft.DatabaseWatcher",
+ "version": "2025-01-02",
+ "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": "Watchers"
+ },
+ {
+ "name": "AlertRuleResources"
+ },
+ {
+ "name": "HealthValidations"
+ },
+ {
+ "name": "Targets"
+ },
+ {
+ "name": "SharedPrivateLinkResources"
+ }
+ ],
+ "paths": {
+ "/providers/Microsoft.DatabaseWatcher/operations": {
+ "get": {
+ "operationId": "Operations_List",
+ "tags": [
+ "Operations"
+ ],
+ "description": "List the operations for the provider",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Operations_List_MaximumSet": {
+ "$ref": "./examples/Operations_List_MaximumSet_Gen.json"
+ },
+ "Operations_List_MinimumSet": {
+ "$ref": "./examples/Operations_List_MinimumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.DatabaseWatcher/watchers": {
+ "get": {
+ "operationId": "Watchers_ListBySubscription",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "List Watcher resources by subscription ID",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/WatcherListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_ListBySubscription_MaximumSet": {
+ "$ref": "./examples/Watchers_ListBySubscription_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers": {
+ "get": {
+ "operationId": "Watchers_ListByResourceGroup",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "List Watcher resources by resource group",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/WatcherListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_ListByResourceGroup_MaximumSet": {
+ "$ref": "./examples/Watchers_ListByResourceGroup_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}": {
+ "get": {
+ "operationId": "Watchers_Get",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "Get a Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_Get_MaximumSet": {
+ "$ref": "./examples/Watchers_Get_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Watchers_CreateOrUpdate",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "Create a Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Watcher' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ }
+ },
+ "201": {
+ "description": "Resource 'Watcher' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ },
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_CreateOrUpdate_MaximumSet": {
+ "$ref": "./examples/Watchers_CreateOrUpdate_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "patch": {
+ "operationId": "Watchers_Update",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "Update a Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "description": "The resource properties to be updated.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/WatcherUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ }
+ },
+ "202": {
+ "description": "Resource update request accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_Update_MaximumSet": {
+ "$ref": "./examples/Watchers_Update_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "Watchers_Delete",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "Delete a Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_Delete_MaximumSet": {
+ "$ref": "./examples/Watchers_Delete_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/alertRuleResources": {
+ "get": {
+ "operationId": "AlertRuleResources_ListByParent",
+ "tags": [
+ "AlertRuleResources"
+ ],
+ "description": "List AlertRuleResource resources by Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/AlertRuleResourceListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AlertRuleResources_ListByParent_MaximumSet": {
+ "$ref": "./examples/AlertRuleResources_ListByParent_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/alertRuleResources/{alertRuleResourceName}": {
+ "get": {
+ "operationId": "AlertRuleResources_Get",
+ "tags": [
+ "AlertRuleResources"
+ ],
+ "description": "Get a AlertRuleResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "alertRuleResourceName",
+ "in": "path",
+ "description": "The alert rule proxy resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/AlertRuleResource"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AlertRuleResources_Get_MaximumSet": {
+ "$ref": "./examples/AlertRuleResources_Get_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "AlertRuleResources_CreateOrUpdate",
+ "tags": [
+ "AlertRuleResources"
+ ],
+ "description": "Create a AlertRuleResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "alertRuleResourceName",
+ "in": "path",
+ "description": "The alert rule proxy resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AlertRuleResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'AlertRuleResource' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/AlertRuleResource"
+ }
+ },
+ "201": {
+ "description": "Resource 'AlertRuleResource' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/AlertRuleResource"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AlertRuleResources_CreateOrUpdate_MaximumSet": {
+ "$ref": "./examples/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "AlertRuleResources_Delete",
+ "tags": [
+ "AlertRuleResources"
+ ],
+ "description": "Delete a AlertRuleResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "alertRuleResourceName",
+ "in": "path",
+ "description": "The alert rule proxy resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource deleted successfully."
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "AlertRuleResources_Delete_MaximumSet": {
+ "$ref": "./examples/AlertRuleResources_Delete_MaximumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/healthValidations": {
+ "get": {
+ "operationId": "HealthValidations_ListByParent",
+ "tags": [
+ "HealthValidations"
+ ],
+ "description": "List HealthValidation resources by Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/HealthValidationListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "HealthValidations_ListByParent_MaximumSet": {
+ "$ref": "./examples/HealthValidations_ListByParent_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/healthValidations/{healthValidationName}": {
+ "get": {
+ "operationId": "HealthValidations_Get",
+ "tags": [
+ "HealthValidations"
+ ],
+ "description": "Get a HealthValidation",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "healthValidationName",
+ "in": "path",
+ "description": "The health validation resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/HealthValidation"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "HealthValidations_Get_MaximumSet": {
+ "$ref": "./examples/HealthValidations_Get_MaximumSet_Gen.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/healthValidations/{healthValidationName}/startValidation": {
+ "post": {
+ "operationId": "HealthValidations_StartValidation",
+ "tags": [
+ "HealthValidations"
+ ],
+ "description": "Starts health validation for a watcher.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "healthValidationName",
+ "in": "path",
+ "description": "The health validation resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/HealthValidation"
+ }
+ },
+ "202": {
+ "description": "Resource operation accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "HealthValidations_StartValidation_MaximumSet": {
+ "$ref": "./examples/HealthValidations_StartValidation_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/sharedPrivateLinkResources": {
+ "get": {
+ "operationId": "SharedPrivateLinkResources_ListByWatcher",
+ "tags": [
+ "SharedPrivateLinkResources"
+ ],
+ "description": "List SharedPrivateLinkResource resources by Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SharedPrivateLinkResourceListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SharedPrivateLinkResources_ListByWatcher_MaximumSet": {
+ "$ref": "./examples/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": {
+ "get": {
+ "operationId": "SharedPrivateLinkResources_Get",
+ "tags": [
+ "SharedPrivateLinkResources"
+ ],
+ "description": "Get a SharedPrivateLinkResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "sharedPrivateLinkResourceName",
+ "in": "path",
+ "description": "The Shared Private Link resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/SharedPrivateLinkResource"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SharedPrivateLinkResources_Get_MaximumSet": {
+ "$ref": "./examples/SharedPrivateLinkResources_Get_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "SharedPrivateLinkResources_Create",
+ "tags": [
+ "SharedPrivateLinkResources"
+ ],
+ "description": "Create a SharedPrivateLinkResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "sharedPrivateLinkResourceName",
+ "in": "path",
+ "description": "The Shared Private Link resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SharedPrivateLinkResource"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'SharedPrivateLinkResource' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/SharedPrivateLinkResource"
+ }
+ },
+ "201": {
+ "description": "Resource 'SharedPrivateLinkResource' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/SharedPrivateLinkResource"
+ },
+ "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/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SharedPrivateLinkResources_Create_MaximumSet": {
+ "$ref": "./examples/SharedPrivateLinkResources_Create_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ },
+ "delete": {
+ "operationId": "SharedPrivateLinkResources_Delete",
+ "tags": [
+ "SharedPrivateLinkResources"
+ ],
+ "description": "Delete a SharedPrivateLinkResource",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "sharedPrivateLinkResourceName",
+ "in": "path",
+ "description": "The Shared Private Link resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]{0,62}[a-zA-Z0-9_]{1}$"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Resource deletion accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "SharedPrivateLinkResources_Delete_MaximumSet": {
+ "$ref": "./examples/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "location"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/start": {
+ "post": {
+ "operationId": "Watchers_Start",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "The action to start monitoring all targets configured for a database watcher.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ }
+ },
+ "202": {
+ "description": "Resource operation accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_Start_MaximumSet": {
+ "$ref": "./examples/Watchers_Start_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/stop": {
+ "post": {
+ "operationId": "Watchers_Stop",
+ "tags": [
+ "Watchers"
+ ],
+ "description": "The action to stop monitoring all targets configured for a database watcher.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Watcher"
+ }
+ },
+ "202": {
+ "description": "Resource operation accepted.",
+ "headers": {
+ "Location": {
+ "type": "string",
+ "description": "The Location header contains the URL where the status of the long running operation can be checked."
+ },
+ "Retry-After": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The Retry-After header can indicate how long the client should wait before polling the operation status."
+ }
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Watchers_Stop_MaximumSet": {
+ "$ref": "./examples/Watchers_Stop_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-long-running-operation-options": {
+ "final-state-via": "azure-async-operation"
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/targets": {
+ "get": {
+ "operationId": "Targets_ListByWatcher",
+ "tags": [
+ "Targets"
+ ],
+ "description": "List Target resources by Watcher",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/TargetListResult"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Targets_ListByWatcher_MaximumSet": {
+ "$ref": "./examples/Targets_ListByWatcher_MaximumSet_Gen.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DatabaseWatcher/watchers/{watcherName}/targets/{targetName}": {
+ "get": {
+ "operationId": "Targets_Get",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Get a Target",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "The target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Azure operation completed successfully.",
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Targets_Get_MaximumSet": {
+ "$ref": "./examples/Targets_Get_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "put": {
+ "operationId": "Targets_CreateOrUpdate",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Create a Target",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "The target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "resource",
+ "in": "body",
+ "description": "Resource create parameters.",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource 'Target' update operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "201": {
+ "description": "Resource 'Target' create operation succeeded",
+ "schema": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Targets_CreateOrUpdate_MaximumSet": {
+ "$ref": "./examples/Targets_CreateOrUpdate_MaximumSet_Gen.json"
+ }
+ }
+ },
+ "delete": {
+ "operationId": "Targets_Delete",
+ "tags": [
+ "Targets"
+ ],
+ "description": "Delete a Target",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "name": "watcherName",
+ "in": "path",
+ "description": "The database watcher name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ },
+ {
+ "name": "targetName",
+ "in": "path",
+ "description": "The target resource name.",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_]{3,60}$"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Resource deleted successfully."
+ },
+ "204": {
+ "description": "Resource does not exist."
+ },
+ "default": {
+ "description": "An unexpected error response.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Targets_Delete_MaximumSet": {
+ "$ref": "./examples/Targets_Delete_MaximumSet_Gen.json"
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AlertRuleResource": {
+ "type": "object",
+ "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/AlertRuleResourceProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "AlertRuleResourceListResult": {
+ "type": "object",
+ "description": "The response of a AlertRuleResource list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The AlertRuleResource items on this page",
+ "items": {
+ "$ref": "#/definitions/AlertRuleResource"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "AlertRuleResourceProperties": {
+ "type": "object",
+ "description": "The generic properties of the alert rule proxy resource.",
+ "properties": {
+ "alertRuleResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The resource ID of the alert rule resource.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Insights/scheduledQueryRules"
+ }
+ ]
+ }
+ },
+ "createdWithProperties": {
+ "$ref": "#/definitions/alertRuleCreationProperties",
+ "description": "The properties with which the alert rule resource was created."
+ },
+ "creationTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The creation time of the alert rule resource."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState",
+ "description": "The provisioning state of the alert rule resource.",
+ "readOnly": true
+ },
+ "alertRuleTemplateId": {
+ "type": "string",
+ "description": "The template ID associated with alert rule resource."
+ },
+ "alertRuleTemplateVersion": {
+ "type": "string",
+ "description": "The alert rule template version."
+ }
+ },
+ "required": [
+ "alertRuleResourceId",
+ "createdWithProperties",
+ "creationTime",
+ "alertRuleTemplateId",
+ "alertRuleTemplateVersion"
+ ]
+ },
+ "Azure.ResourceManager.ResourceProvisioningState": {
+ "type": "string",
+ "description": "The provisioning state of a resource type.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceProvisioningState",
+ "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."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "DatabaseWatcherProvisioningState": {
+ "type": "string",
+ "description": "The status of the last provisioning operation performed on the resource.",
+ "enum": [
+ "Succeeded",
+ "Failed",
+ "Canceled"
+ ],
+ "x-ms-enum": {
+ "name": "DatabaseWatcherProvisioningState",
+ "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."
+ }
+ ]
+ },
+ "readOnly": true
+ },
+ "Datastore": {
+ "type": "object",
+ "description": "The properties of a data store.",
+ "properties": {
+ "adxClusterResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Kusto/clusters"
+ }
+ ]
+ }
+ },
+ "kustoClusterDisplayName": {
+ "type": "string",
+ "description": "The Kusto cluster display name."
+ },
+ "kustoClusterUri": {
+ "type": "string",
+ "description": "The Kusto cluster URI."
+ },
+ "kustoDataIngestionUri": {
+ "type": "string",
+ "description": "The Kusto data ingestion URI."
+ },
+ "kustoDatabaseName": {
+ "type": "string",
+ "description": "The name of a Kusto database."
+ },
+ "kustoManagementUrl": {
+ "type": "string",
+ "description": "The Kusto management URL."
+ },
+ "kustoOfferingType": {
+ "$ref": "#/definitions/KustoOfferingType",
+ "description": "The type of a Kusto offering."
+ }
+ },
+ "required": [
+ "kustoClusterUri",
+ "kustoDataIngestionUri",
+ "kustoDatabaseName",
+ "kustoManagementUrl",
+ "kustoOfferingType"
+ ]
+ },
+ "DatastoreUpdate": {
+ "type": "object",
+ "description": "The properties of a data store.",
+ "properties": {
+ "adxClusterResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of an Azure Data Explorer cluster.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Kusto/clusters"
+ }
+ ]
+ }
+ },
+ "kustoClusterDisplayName": {
+ "type": "string",
+ "description": "The Kusto cluster display name."
+ },
+ "kustoClusterUri": {
+ "type": "string",
+ "description": "The Kusto cluster URI."
+ },
+ "kustoDataIngestionUri": {
+ "type": "string",
+ "description": "The Kusto data ingestion URI."
+ },
+ "kustoDatabaseName": {
+ "type": "string",
+ "description": "The name of a Kusto database."
+ },
+ "kustoManagementUrl": {
+ "type": "string",
+ "description": "The Kusto management URL."
+ },
+ "kustoOfferingType": {
+ "$ref": "#/definitions/KustoOfferingType",
+ "description": "The type of a Kusto offering."
+ }
+ }
+ },
+ "HealthValidation": {
+ "type": "object",
+ "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/HealthValidationProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "HealthValidationListResult": {
+ "type": "object",
+ "description": "The response of a HealthValidation list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The HealthValidation items on this page",
+ "items": {
+ "$ref": "#/definitions/HealthValidation"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "HealthValidationProperties": {
+ "type": "object",
+ "description": "The generic properties of the health validation resource.",
+ "properties": {
+ "startTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The start time of health validation, in UTC.",
+ "readOnly": true
+ },
+ "endTime": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The end time of health validation, in UTC.",
+ "readOnly": true
+ },
+ "status": {
+ "$ref": "#/definitions/validationStatus",
+ "description": "The current health validation status.",
+ "readOnly": true
+ },
+ "issues": {
+ "type": "array",
+ "description": "The list of issues found by health validation.",
+ "items": {
+ "$ref": "#/definitions/ValidationIssue"
+ },
+ "readOnly": true,
+ "x-ms-identifiers": []
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState",
+ "description": "The provisioning state of the health validation resource.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "startTime",
+ "endTime",
+ "status",
+ "issues"
+ ]
+ },
+ "KustoOfferingType": {
+ "type": "string",
+ "description": "The type of Kusto offering.",
+ "enum": [
+ "adx",
+ "free",
+ "fabric"
+ ],
+ "x-ms-enum": {
+ "name": "KustoOfferingType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "adx",
+ "value": "adx",
+ "description": "The Azure Data Explorer cluster Kusto offering."
+ },
+ {
+ "name": "free",
+ "value": "free",
+ "description": "The free Azure Data Explorer cluster Kusto offering."
+ },
+ {
+ "name": "fabric",
+ "value": "fabric",
+ "description": "The Fabric Real-Time Analytics Kusto offering."
+ }
+ ]
+ }
+ },
+ "SharedPrivateLinkResource": {
+ "type": "object",
+ "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SharedPrivateLinkResourceProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "SharedPrivateLinkResourceListResult": {
+ "type": "object",
+ "description": "The response of a SharedPrivateLinkResource list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The SharedPrivateLinkResource items on this page",
+ "items": {
+ "$ref": "#/definitions/SharedPrivateLinkResource"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "SharedPrivateLinkResourceProperties": {
+ "type": "object",
+ "description": "The generic properties of a Shared Private Link resource.",
+ "properties": {
+ "privateLinkResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The resource ID of the resource the shared private link resource is for."
+ },
+ "groupId": {
+ "type": "string",
+ "description": "The group id from the provider of resource the shared private link resource is for."
+ },
+ "requestMessage": {
+ "type": "string",
+ "description": "The request message for requesting approval of the shared private link resource."
+ },
+ "dnsZone": {
+ "type": "string",
+ "description": "The DNS zone to be included in the DNS name of the shared private link. Value is required for Azure Data Explorer clusters and SQL managed instances. The value to use is the second segment of the host FQDN name of the resource that the shared private link resource is for."
+ },
+ "status": {
+ "$ref": "#/definitions/SharedPrivateLinkResourceStatus",
+ "description": "Status of the shared private link resource. Can be Pending, Approved, Rejected or Disconnected.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState",
+ "description": "The provisioning state of the resource.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "privateLinkResourceId",
+ "groupId",
+ "requestMessage"
+ ]
+ },
+ "SharedPrivateLinkResourceStatus": {
+ "type": "string",
+ "description": "Status of the shared private link resource. Can be Pending, Approved, Rejected or Disconnected.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "SharedPrivateLinkResourceStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Pending",
+ "value": "Pending",
+ "description": "The shared private link connection request was not yet authorized by the resource owner."
+ },
+ {
+ "name": "Approved",
+ "value": "Approved",
+ "description": "The shared private link connection request was approved by the resource owner."
+ },
+ {
+ "name": "Rejected",
+ "value": "Rejected",
+ "description": "The shared private link connection request was rejected by the resource owner."
+ },
+ {
+ "name": "Disconnected",
+ "value": "Disconnected",
+ "description": "The shared private link connection request was disconnected by the resource owner."
+ }
+ ]
+ }
+ },
+ "SqlDbElasticPoolTargetProperties": {
+ "type": "object",
+ "description": "The properties specific to elastic pool in Azure SQL Database.",
+ "properties": {
+ "sqlEpResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of an Azure SQL DB elastic pool target.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Sql/servers/elasticPools"
+ }
+ ]
+ }
+ },
+ "anchorDatabaseResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of the anchor database used to connect to an elastic pool.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Sql/servers/databases"
+ }
+ ]
+ }
+ },
+ "readIntent": {
+ "type": "boolean",
+ "description": "Set to true to monitor a high availability replica of specified target, if any.",
+ "default": false
+ }
+ },
+ "required": [
+ "sqlEpResourceId",
+ "anchorDatabaseResourceId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/TargetProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "SqlEp"
+ },
+ "SqlDbSingleDatabaseTargetProperties": {
+ "type": "object",
+ "description": "The properties specific to single database in Azure SQL Database.",
+ "properties": {
+ "sqlDbResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of an Azure SQL DB single database target.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Sql/servers/databases"
+ }
+ ]
+ }
+ },
+ "readIntent": {
+ "type": "boolean",
+ "description": "Set to true to monitor a high availability replica of specified target, if any.",
+ "default": false
+ }
+ },
+ "required": [
+ "sqlDbResourceId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/TargetProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "SqlDb"
+ },
+ "SqlMiTargetProperties": {
+ "type": "object",
+ "description": "The properties specific to Azure SQL Managed Instance targets.",
+ "properties": {
+ "sqlMiResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of an Azure SQL Managed Instance target.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.Sql/managedInstances"
+ }
+ ]
+ }
+ },
+ "connectionTcpPort": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The TCP port number to optionally use in the connection string when connecting to an Azure SQL Managed Instance target.",
+ "default": 1433
+ },
+ "readIntent": {
+ "type": "boolean",
+ "description": "Set to true to monitor a high availability replica of specified target, if any.",
+ "default": false
+ }
+ },
+ "required": [
+ "sqlMiResourceId"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/TargetProperties"
+ }
+ ],
+ "x-ms-discriminator-value": "SqlMi"
+ },
+ "Target": {
+ "type": "object",
+ "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/TargetProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource"
+ }
+ ]
+ },
+ "TargetAuthenticationType": {
+ "type": "string",
+ "description": "The type of authentication to use when connecting to a target.",
+ "enum": [
+ "Aad",
+ "Sql"
+ ],
+ "x-ms-enum": {
+ "name": "TargetAuthenticationType",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Aad",
+ "value": "Aad",
+ "description": "The Azure Active Directory authentication."
+ },
+ {
+ "name": "Sql",
+ "value": "Sql",
+ "description": "The SQL password authentication."
+ }
+ ]
+ }
+ },
+ "TargetListResult": {
+ "type": "object",
+ "description": "The response of a Target list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Target items on this page",
+ "items": {
+ "$ref": "#/definitions/Target"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "TargetProperties": {
+ "type": "object",
+ "description": "The generic properties of a target.",
+ "properties": {
+ "targetType": {
+ "type": "string",
+ "description": "Discriminator property for TargetProperties."
+ },
+ "targetAuthenticationType": {
+ "$ref": "#/definitions/TargetAuthenticationType",
+ "description": "The type of authentication to use when connecting to a target."
+ },
+ "targetVault": {
+ "$ref": "#/definitions/VaultSecret",
+ "description": "To use SQL authentication when connecting to targets, specify the vault where the login name and password secrets are stored."
+ },
+ "connectionServerName": {
+ "type": "string",
+ "description": "The server name to use in the connection string when connecting to a target. Port number and instance name must be specified separately.",
+ "maxLength": 200
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/Azure.ResourceManager.ResourceProvisioningState",
+ "description": "The provisioning state of the resource.",
+ "readOnly": true
+ }
+ },
+ "discriminator": "targetType",
+ "required": [
+ "targetType",
+ "targetAuthenticationType",
+ "connectionServerName"
+ ]
+ },
+ "ValidationIssue": {
+ "type": "object",
+ "description": "The model of a health validation issue.",
+ "properties": {
+ "errorCode": {
+ "type": "string",
+ "description": "The error code of the issue.",
+ "readOnly": true
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "The error message of the issue.",
+ "readOnly": true
+ },
+ "additionalDetails": {
+ "type": "string",
+ "description": "The additional details for the issue.",
+ "readOnly": true
+ },
+ "recommendationMessage": {
+ "type": "string",
+ "description": "The recommendation for resolving the issue.",
+ "readOnly": true
+ },
+ "recommendationUrl": {
+ "type": "string",
+ "format": "uri",
+ "description": "The URL related to resolving the issue.",
+ "readOnly": true
+ },
+ "relatedResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The resource ID of the Azure resource related to the issue.",
+ "readOnly": true,
+ "x-ms-arm-id-details": {
+ "allowedResources": []
+ }
+ },
+ "relatedResourceType": {
+ "type": "string",
+ "description": "The type of the Azure resource related to the issue.",
+ "readOnly": true
+ }
+ },
+ "required": [
+ "errorCode",
+ "errorMessage",
+ "recommendationMessage"
+ ]
+ },
+ "VaultSecret": {
+ "type": "object",
+ "description": "The vault specific details required if using SQL authentication to connect to a target.",
+ "properties": {
+ "akvResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The Azure resource ID of the Key Vault instance storing database authentication secrets.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ ]
+ }
+ },
+ "akvTargetUser": {
+ "type": "string",
+ "description": "The path to the Key Vault secret storing the login name (aka user name, aka account name) for authentication to a target.",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$"
+ },
+ "akvTargetPassword": {
+ "type": "string",
+ "description": "The path to the Key Vault secret storing the password for authentication to a target.",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$"
+ }
+ }
+ },
+ "Watcher": {
+ "type": "object",
+ "description": "The DatabaseWatcherProviderHub resource.",
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/WatcherProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The managed service identities assigned to this resource."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource"
+ }
+ ]
+ },
+ "WatcherListResult": {
+ "type": "object",
+ "description": "The response of a Watcher list operation.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The Watcher items on this page",
+ "items": {
+ "$ref": "#/definitions/Watcher"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "WatcherProperties": {
+ "type": "object",
+ "description": "The RP specific properties of the resource.",
+ "properties": {
+ "datastore": {
+ "$ref": "#/definitions/Datastore",
+ "description": "The data store for collected monitoring data."
+ },
+ "status": {
+ "$ref": "#/definitions/WatcherStatus",
+ "description": "The monitoring collection status of the watcher.",
+ "readOnly": true
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/DatabaseWatcherProvisioningState",
+ "description": "The provisioning state of the resource watcher.",
+ "readOnly": true
+ },
+ "defaultAlertRuleIdentityResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The resource ID of a user-assigned managed identity that will be assigned to a new alert rule.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.ManagedIdentity/userAssignedIdentities"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "WatcherStatus": {
+ "type": "string",
+ "description": "The monitoring collection status of a watcher.",
+ "enum": [
+ "Starting",
+ "Running",
+ "Stopping",
+ "Stopped",
+ "Deleting"
+ ],
+ "x-ms-enum": {
+ "name": "WatcherStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "Starting",
+ "value": "Starting",
+ "description": "Denotes the watcher is in a starting state."
+ },
+ {
+ "name": "Running",
+ "value": "Running",
+ "description": "Denotes the watcher is in a running state."
+ },
+ {
+ "name": "Stopping",
+ "value": "Stopping",
+ "description": "Denotes the watcher is in a stopping state."
+ },
+ {
+ "name": "Stopped",
+ "value": "Stopped",
+ "description": "Denotes the watcher is in a stopped state."
+ },
+ {
+ "name": "Deleting",
+ "value": "Deleting",
+ "description": "Denotes the watcher is in a deleting state."
+ }
+ ]
+ }
+ },
+ "WatcherUpdate": {
+ "type": "object",
+ "description": "The type used for update operations of the Watcher.",
+ "properties": {
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity",
+ "description": "The managed service identities assigned to this resource."
+ },
+ "tags": {
+ "type": "object",
+ "description": "Resource tags.",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/WatcherUpdateProperties",
+ "description": "The resource-specific properties for this resource.",
+ "x-ms-client-flatten": true
+ }
+ }
+ },
+ "WatcherUpdateProperties": {
+ "type": "object",
+ "description": "The updatable properties of the Watcher.",
+ "properties": {
+ "datastore": {
+ "$ref": "#/definitions/DatastoreUpdate",
+ "description": "The data store for collected monitoring data."
+ },
+ "defaultAlertRuleIdentityResourceId": {
+ "type": "string",
+ "format": "arm-id",
+ "description": "The resource ID of a user-assigned managed identity that will be assigned to a new alert rule.",
+ "x-ms-arm-id-details": {
+ "allowedResources": [
+ {
+ "type": "Microsoft.ManagedIdentity/userAssignedIdentities"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "alertRuleCreationProperties": {
+ "type": "string",
+ "description": "The properties with which the alert rule resource was created.",
+ "enum": [
+ "CreatedWithActionGroup",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "alertRuleCreationProperties",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "CreatedWithActionGroup",
+ "value": "CreatedWithActionGroup",
+ "description": "The alert rule was created with an action group."
+ },
+ {
+ "name": "None",
+ "value": "None",
+ "description": "The alert rule was created with no properties."
+ }
+ ]
+ }
+ },
+ "validationStatus": {
+ "type": "string",
+ "description": "Health validation status.",
+ "enum": [
+ "NotStarted",
+ "Running",
+ "Succeeded",
+ "Failed",
+ "Canceled",
+ "TimedOut"
+ ],
+ "x-ms-enum": {
+ "name": "validationStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "name": "NotStarted",
+ "value": "NotStarted",
+ "description": "Health validation has not started."
+ },
+ {
+ "name": "Running",
+ "value": "Running",
+ "description": "Health validation is running."
+ },
+ {
+ "name": "Succeeded",
+ "value": "Succeeded",
+ "description": "Health validation completed successfully."
+ },
+ {
+ "name": "Failed",
+ "value": "Failed",
+ "description": "Health validation failed."
+ },
+ {
+ "name": "Canceled",
+ "value": "Canceled",
+ "description": "Health validation was canceled."
+ },
+ {
+ "name": "TimedOut",
+ "value": "TimedOut",
+ "description": "Health validation timed out."
+ }
+ ]
+ },
+ "readOnly": true
+ }
+ },
+ "parameters": {}
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..79c0f15d24ab
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,68 @@
+{
+ "title": "AlertRuleResources_CreateOrUpdate_MaximumSet",
+ "operationId": "AlertRuleResources_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "alertRuleResourceName": "testAlert",
+ "resource": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Delete_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..1932545a8f2d
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Delete_MaximumSet_Gen.json
@@ -0,0 +1,15 @@
+{
+ "title": "AlertRuleResources_Delete_MaximumSet",
+ "operationId": "AlertRuleResources_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "alertRuleResourceName": "testAlert"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Get_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..aaa8a7476020
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_Get_MaximumSet_Gen.json
@@ -0,0 +1,36 @@
+{
+ "title": "AlertRuleResources_Get_MaximumSet",
+ "operationId": "AlertRuleResources_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "alertRuleResourceName": "testAlert"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_ListByParent_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_ListByParent_MaximumSet_Gen.json
new file mode 100644
index 000000000000..dcad88d76fd0
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/AlertRuleResources_ListByParent_MaximumSet_Gen.json
@@ -0,0 +1,40 @@
+{
+ "title": "AlertRuleResources_ListByParent_MaximumSet",
+ "operationId": "AlertRuleResources_ListByParent",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "alertRuleResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.insights/scheduledqueryrules/alerts-demo",
+ "creationTime": "2024-07-25T15:38:47.798Z",
+ "alertRuleTemplateVersion": "1.0",
+ "provisioningState": "Succeeded",
+ "alertRuleTemplateId": "someTemplateId",
+ "createdWithProperties": "CreatedWithActionGroup"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/alertRuleResources/testAlert",
+ "name": "testAlert",
+ "type": "microsoft.databasewatcher/watchers/alertRuleResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_Get_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..551227c087df
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_Get_MaximumSet_Gen.json
@@ -0,0 +1,45 @@
+{
+ "title": "HealthValidations_Get_MaximumSet",
+ "operationId": "HealthValidations_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "healthValidationName": "testHealthValidation"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "startTime": "2024-10-07T19:42:55.594Z",
+ "endTime": "2024-10-07T19:42:55.594Z",
+ "status": "Succeeded",
+ "issues": [
+ {
+ "errorCode": "ReadDatasetError",
+ "errorMessage": "Invalid operation. The connection is closed.",
+ "additionalDetails": "There seems to be a connection issue.",
+ "recommendationMessage": "Please check the connection.",
+ "recommendationUrl": "https://aka.ms/issuerecommendation",
+ "relatedResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/test-setup/providers/Microsoft.Sql/servers/test-setup/databases/test-1",
+ "relatedResourceType": "Microsoft.Sql/servers"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/healthValidations/testHealthValidation",
+ "name": "testHealthValidation",
+ "type": "microsoft.databasewatcher/watchers/healthValidations",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_ListByParent_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_ListByParent_MaximumSet_Gen.json
new file mode 100644
index 000000000000..03b146a5534a
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_ListByParent_MaximumSet_Gen.json
@@ -0,0 +1,49 @@
+{
+ "title": "HealthValidations_ListByParent_MaximumSet",
+ "operationId": "HealthValidations_ListByParent",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "startTime": "2024-10-07T19:42:55.594Z",
+ "endTime": "2024-10-07T19:42:55.594Z",
+ "status": "Succeeded",
+ "issues": [
+ {
+ "errorCode": "ReadDatasetError",
+ "errorMessage": "Invalid operation. The connection is closed.",
+ "additionalDetails": "There seems to be a connection issue.",
+ "recommendationMessage": "Please check the connection.",
+ "recommendationUrl": "https://aka.ms/issuerecommendation",
+ "relatedResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/test-setup/providers/Microsoft.Sql/servers/test-setup/databases/test-1",
+ "relatedResourceType": "Microsoft.Sql/servers"
+ }
+ ],
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/healthValidations/testHealthValidation",
+ "name": "testHealthValidation",
+ "type": "microsoft.databasewatcher/watchers/healthValidations",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_StartValidation_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_StartValidation_MaximumSet_Gen.json
new file mode 100644
index 000000000000..6d049260cc72
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/HealthValidations_StartValidation_MaximumSet_Gen.json
@@ -0,0 +1,40 @@
+{
+ "title": "HealthValidations_StartValidation_MaximumSet",
+ "operationId": "HealthValidations_StartValidation",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "healthValidationName": "testHealthValidation"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "startTime": "2024-10-07T19:42:55.594Z",
+ "endTime": "2024-10-07T19:42:55.594Z",
+ "status": "Running",
+ "issues": [],
+ "provisioningState": "Accepted"
+ },
+ "id": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878Be/resourceGroups/rgWatcher/providers/microsoft.databasewatcher/watchers/testWatcher/healthValidations/testHealthValidation",
+ "name": "testHealthValidation",
+ "type": "microsoft.databasewatcher/watchers/healthValidations",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MaximumSet_Gen.json
new file mode 100644
index 000000000000..eb1e08363a20
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MaximumSet_Gen.json
@@ -0,0 +1,28 @@
+{
+ "title": "Operations_List_MaximumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2025-01-02"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "snzrdvltunnrz",
+ "isDataAction": true,
+ "display": {
+ "provider": "dtfrqzamclscchmghtxn",
+ "resource": "lvlhnsfnquorjuuutjxex",
+ "operation": "vbgvamoxqwthpbdghxzaw",
+ "description": "nvbtuwwjfehylzmoatd"
+ },
+ "origin": "user",
+ "actionType": "Internal"
+ }
+ ],
+ "nextLink": "https://microsoft.com/awfba"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MinimumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MinimumSet_Gen.json
new file mode 100644
index 000000000000..9ac9a706a7bf
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Operations_List_MinimumSet_Gen.json
@@ -0,0 +1,12 @@
+{
+ "title": "Operations_List_MinimumSet",
+ "operationId": "Operations_List",
+ "parameters": {
+ "api-version": "2025-01-02"
+ },
+ "responses": {
+ "200": {
+ "body": {}
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Create_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Create_MaximumSet_Gen.json
new file mode 100644
index 000000000000..7032977720a6
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Create_MaximumSet_Gen.json
@@ -0,0 +1,71 @@
+{
+ "title": "SharedPrivateLinkResources_Create_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_Create",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "sharedPrivateLinkResourceName": "monitoringh22eed",
+ "resource": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..947380716fc6
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Delete_MaximumSet_Gen.json
@@ -0,0 +1,19 @@
+{
+ "title": "SharedPrivateLinkResources_Delete_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "sharedPrivateLinkResourceName": "monitoringh22eed"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Get_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..bdac18915fb2
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_Get_MaximumSet_Gen.json
@@ -0,0 +1,36 @@
+{
+ "title": "SharedPrivateLinkResources_Get_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "sharedPrivateLinkResourceName": "monitoringh22eed"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json
new file mode 100644
index 000000000000..9ba73e833dd5
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/SharedPrivateLinkResources_ListByWatcher_MaximumSet_Gen.json
@@ -0,0 +1,40 @@
+{
+ "title": "SharedPrivateLinkResources_ListByWatcher_MaximumSet",
+ "operationId": "SharedPrivateLinkResources_ListByWatcher",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih/sharedPrivateLinkResources/monitoringh22eed",
+ "name": "monitoringh22eed",
+ "type": "microsoft.databasewatcher/watchers/sharedPrivateLinkResources",
+ "properties": {
+ "privateLinkResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.KeyVault/vaults/kvmo3ej9ih",
+ "groupId": "vault",
+ "requestMessage": "request message",
+ "dnsZone": "ec3ae9d410ba",
+ "status": "Pending",
+ "provisioningState": "Completed"
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/awfba"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_CreateOrUpdate_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..2a7013ec79b7
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,65 @@
+{
+ "title": "Targets_CreateOrUpdate_MaximumSet",
+ "operationId": "Targets_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "targetName": "monitoringh22eed",
+ "resource": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Delete_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4902176817d7
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Delete_MaximumSet_Gen.json
@@ -0,0 +1,15 @@
+{
+ "title": "Targets_Delete_MaximumSet",
+ "operationId": "Targets_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "targetName": "monitoringh22eed"
+ },
+ "responses": {
+ "200": {},
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Get_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..4b180d5b08dc
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_Get_MaximumSet_Gen.json
@@ -0,0 +1,35 @@
+{
+ "title": "Targets_Get_MaximumSet",
+ "operationId": "Targets_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih",
+ "targetName": "monitoringh22eed"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_ListByWatcher_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_ListByWatcher_MaximumSet_Gen.json
new file mode 100644
index 000000000000..9f12923dd414
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Targets_ListByWatcher_MaximumSet_Gen.json
@@ -0,0 +1,39 @@
+{
+ "title": "Targets_ListByWatcher_MaximumSet",
+ "operationId": "Targets_ListByWatcher",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "resourceGroupName": "apiTest-ddat4p",
+ "watcherName": "databasemo3ej9ih"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-px9ma7/providers/Microsoft.DatabaseWatcher/watchers/databasemo3d9sgt/targets/monitoringzkndgm",
+ "name": "monitoringzkndgm",
+ "type": "microsoft.databasewatcher/watchers/targets",
+ "properties": {
+ "targetType": "SqlDb",
+ "targetAuthenticationType": "Aad",
+ "connectionServerName": "sqlServero1ihe2",
+ "sqlDbResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.Sql/servers/m1/databases/m2",
+ "provisioningState": "Succeeded"
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_CreateOrUpdate_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_CreateOrUpdate_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d9c77fe25c70
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_CreateOrUpdate_MaximumSet_Gen.json
@@ -0,0 +1,109 @@
+{
+ "title": "Watchers_CreateOrUpdate_MaximumSet",
+ "operationId": "Watchers_CreateOrUpdate",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "resource": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "tags": {},
+ "location": "eastus2"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "201": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ },
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Delete_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Delete_MaximumSet_Gen.json
new file mode 100644
index 000000000000..5f6a7ce368ad
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Delete_MaximumSet_Gen.json
@@ -0,0 +1,18 @@
+{
+ "title": "Watchers_Delete_MaximumSet",
+ "operationId": "Watchers_Delete",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Get_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Get_MaximumSet_Gen.json
new file mode 100644
index 000000000000..6a97f9cb5f73
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Get_MaximumSet_Gen.json
@@ -0,0 +1,49 @@
+{
+ "title": "Watchers_Get_MaximumSet",
+ "operationId": "Watchers_Get",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "myWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListByResourceGroup_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListByResourceGroup_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c51fc43163f5
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListByResourceGroup_MaximumSet_Gen.json
@@ -0,0 +1,263 @@
+{
+ "title": "Watchers_ListByResourceGroup_MaximumSet",
+ "operationId": "Watchers_ListByResourceGroup",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "West US",
+ "tags": {},
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-4sz1jg/providers/Microsoft.DatabaseWatcher/watchers/databasemo4o4zdf",
+ "name": "databasemo4o4zdf",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-d77ftn/providers/Microsoft.DatabaseWatcher/watchers/databasemosn3h6l",
+ "name": "databasemosn3h6l",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-nyb4gm/providers/Microsoft.DatabaseWatcher/watchers/databasemoyb6iar",
+ "name": "databasemoyb6iar",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-llis4j/providers/Microsoft.DatabaseWatcher/watchers/databasemoi04xst",
+ "name": "databasemoi04xst",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-thy6zd/providers/Microsoft.DatabaseWatcher/watchers/databasemonpyl24",
+ "name": "databasemonpyl24",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "systemData": {
+ "createdBy": "ysoqerxnmxqsvhmvjojoyzotc",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T18:01:18.690Z",
+ "lastModifiedBy": "yrilzsg",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T18:01:18.690Z"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {}
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih",
+ "name": "databasemo3ej9ih",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListBySubscription_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListBySubscription_MaximumSet_Gen.json
new file mode 100644
index 000000000000..b9c5a6edf457
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_ListBySubscription_MaximumSet_Gen.json
@@ -0,0 +1,259 @@
+{
+ "title": "Watchers_ListBySubscription_MaximumSet",
+ "operationId": "Watchers_ListBySubscription",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "West US",
+ "tags": {},
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-4sz1jg/providers/Microsoft.DatabaseWatcher/watchers/databasemo4o4zdf",
+ "name": "databasemo4o4zdf",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-d77ftn/providers/Microsoft.DatabaseWatcher/watchers/databasemosn3h6l",
+ "name": "databasemosn3h6l",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-nyb4gm/providers/Microsoft.DatabaseWatcher/watchers/databasemoyb6iar",
+ "name": "databasemoyb6iar",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-llis4j/providers/Microsoft.DatabaseWatcher/watchers/databasemoi04xst",
+ "name": "databasemoi04xst",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-thy6zd/providers/Microsoft.DatabaseWatcher/watchers/databasemonpyl24",
+ "name": "databasemonpyl24",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "systemData": {
+ "createdBy": "ysoqerxnmxqsvhmvjojoyzotc",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T18:01:18.690Z",
+ "lastModifiedBy": "yrilzsg",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T18:01:18.690Z"
+ },
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {}
+ },
+ {
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest-ddat4p/providers/Microsoft.DatabaseWatcher/watchers/databasemo3ej9ih",
+ "name": "databasemo3ej9ih",
+ "type": "microsoft.databasewatcher/watchers",
+ "location": "westus",
+ "properties": {
+ "status": "Starting",
+ "provisioningState": "Succeeded",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ }
+ },
+ "identity": {
+ "type": "SystemAssignedIdentity",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ ],
+ "nextLink": "https://microsoft.com/a"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Start_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Start_MaximumSet_Gen.json
new file mode 100644
index 000000000000..d58103544eb8
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Start_MaximumSet_Gen.json
@@ -0,0 +1,54 @@
+{
+ "title": "Watchers_Start_MaximumSet",
+ "operationId": "Watchers_Start",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Stop_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Stop_MaximumSet_Gen.json
new file mode 100644
index 000000000000..1f68a5d218b4
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Stop_MaximumSet_Gen.json
@@ -0,0 +1,54 @@
+{
+ "title": "Watchers_Stop_MaximumSet",
+ "operationId": "Watchers_Stop",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "myWatcher"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Azure-AsyncOperation": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Update_MaximumSet_Gen.json b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Update_MaximumSet_Gen.json
new file mode 100644
index 000000000000..c397bc528188
--- /dev/null
+++ b/specification/databasewatcher/resource-manager/Microsoft.DatabaseWatcher/stable/2025-01-02/examples/Watchers_Update_MaximumSet_Gen.json
@@ -0,0 +1,72 @@
+{
+ "title": "Watchers_Update_MaximumSet",
+ "operationId": "Watchers_Update",
+ "parameters": {
+ "api-version": "2025-01-02",
+ "subscriptionId": "A76F9850-996B-40B3-94D4-C98110A0EEC9",
+ "resourceGroupName": "rgWatcher",
+ "watcherName": "testWatcher",
+ "properties": {
+ "identity": {
+ "type": "SystemAssigned"
+ },
+ "properties": {
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/newtest"
+ },
+ "tags": {}
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "status": "Starting",
+ "defaultAlertRuleIdentityResourceId": "/subscriptions/469DD77C-C8DB-47B7-B9E1-72D29F8C878B/resourceGroups/rgWatcher/providers/Microsoft.ManagedIdentity/userAssignedIdentities/3pmtest",
+ "datastore": {
+ "adxClusterResourceId": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/apiTest/providers/Microsoft.Kusto/clusters/apiTestKusto",
+ "kustoClusterUri": "https://kustouri-adx.eastus.kusto.windows.net",
+ "kustoClusterDisplayName": "kustoUri-adx",
+ "kustoDataIngestionUri": "https://ingest-kustouri-adx.eastus.kusto.windows.net",
+ "kustoDatabaseName": "kustoDatabaseName1",
+ "kustoManagementUrl": "https://portal.azure.com/",
+ "kustoOfferingType": "adx"
+ },
+ "provisioningState": "Succeeded"
+ },
+ "identity": {
+ "type": "SystemAssigned",
+ "userAssignedIdentities": {},
+ "principalId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d",
+ "tenantId": "49e0fbd3-75e8-44e7-96fd-5b64d9ad818d"
+ },
+ "tags": {},
+ "location": "eastus2",
+ "id": "/subscriptions/49e0fbd3-75e8-44e7-96fd-5b64d9ad818d/resourceGroups/dummyrg/providers/Microsoft.DatabaseWatcher/watchers/myWatcher",
+ "name": "myWatcher",
+ "type": "microsoft.databasewatcher/watchers",
+ "systemData": {
+ "createdBy": "enbpvlpqbwd",
+ "createdByType": "User",
+ "createdAt": "2024-07-25T15:38:47.092Z",
+ "lastModifiedBy": "mxp",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2024-07-25T15:38:47.092Z"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "location": "https://contoso.com/operationstatus"
+ }
+ }
+ }
+}
diff --git a/specification/databasewatcher/resource-manager/readme.md b/specification/databasewatcher/resource-manager/readme.md
index e8892622fcf9..08851a9f0e5b 100644
--- a/specification/databasewatcher/resource-manager/readme.md
+++ b/specification/databasewatcher/resource-manager/readme.md
@@ -1,8 +1,8 @@
-# databasewatcher
+# database watcher
> see https://aka.ms/autorest
-This is the AutoRest configuration file for databasewatcher.
+This is the AutoRest configuration file for database watcher.
## Getting Started
@@ -22,12 +22,19 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor
### Basic Information
-These are the global settings for the databasewatcher.
+These are the global settings for the database watcher.
```yaml
openapi-type: arm
openapi-subtype: rpaas
-tag: package-2024-10-01-preview
+tag: package-2025-01-02
+```
+
+### Tag: package-2025-01-02
+These settings apply only when `--tag=package-2025-01-02` is specified on the command line.
+```yaml $(tag) == 'package-2025-01-02'
+input-file:
+ - Microsoft.DatabaseWatcher/stable/2025-01-02/Watcher.json
```
### Tag: package-2024-10-01-preview
From 9be3ccf5b1729cb1e5f41438fe6d7a6308aab50a Mon Sep 17 00:00:00 2001
From: Libba Lawrence
Date: Fri, 10 Jan 2025 12:19:07 -0800
Subject: [PATCH 089/128] [eg] make req/optional more explicit in readme
(#32079)
* update
* update for clarity
---
.../Azure.Messaging.EventGrid.SystemEvents/README.md | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md
index fbbaa2816aba..6a18958f5fff 100644
--- a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md
+++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md
@@ -13,15 +13,18 @@ In order to automate the mapping of event definition with event type, please fol
Under the `Azure.Messaging.EventGrid.SystemEvents` folder find or create your service's `.tsp` file. This is where you will add your new event. For help with typespec conventions refer to [this doc](https://microsoft.github.io/typespec/) about typespec basics. Each new event will be represented as a typespec `model`. After you create your new event, in the `client.tsp` file, you need to add `@@usage(EventGrid.YourEventName, Usage.output)` and `@@access(EventGrid.YourEventName, Access.public)`.
-A sample valid event definition is shown below:
+A sample valid event definition is shown below with `required` and `optional` properties:
~~~ markdown
/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event. */
model AcsChatMessageReceivedEventData {
...AcsChatMessageEventBaseProperties;
- /** The body of the chat message. */
- messageBody : string;
+ /** Required. Field is always present in the event. */
+ requiredProperty : string;
+
+ /** Optional. Field may not be present in some events. */
+ optionalProperty ?: string;
}
~~~
From 0433add0f397d35c79bd27a2a86318dbdc7b829b Mon Sep 17 00:00:00 2001
From: MJ <71822730+mjmadhu@users.noreply.github.com>
Date: Sat, 11 Jan 2025 06:54:03 +0530
Subject: [PATCH 090/128] PlaywrightTesting -Bringing common model in shared
namespace (#32019)
* Created PlaywrightTesting.Shared namespace
* tsp format fixed
---
cSpell.json | 7 +
.../PlaywrightTesting.AuthManager/main.tsp | 100 +---------
.../tspconfig.yaml | 4 +
.../PlaywrightTesting.Shared/main.tsp | 116 +++++++++++
.../stable/2024-12-01/playwrighttesting.json | 186 +++++++++---------
5 files changed, 223 insertions(+), 190 deletions(-)
create mode 100644 specification/playwrighttesting/PlaywrightTesting.Shared/main.tsp
diff --git a/cSpell.json b/cSpell.json
index 724a935881f0..d3b7119221a9 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -50,6 +50,13 @@
"typescript"
],
"overrides": [
+ {
+ "filename": "**/specification/playwrighttesting/**/*",
+ "words": [
+ "microsoftplaywrighttesting",
+ "playwrighttesting",
+ ]
+ },
{
"filename": "**/specification/azurearcdata/resource-manager/Microsoft.AzureArcData/**/*.json",
"words": [
diff --git a/specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp b/specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp
index a70813099688..7ee1e26f125f 100644
--- a/specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/main.tsp
@@ -5,12 +5,14 @@ import "@typespec/http";
import "@typespec/rest";
import "@typespec/versioning";
import "@azure-tools/typespec-azure-core";
+import "../PlaywrightTesting.Shared";
using TypeSpec.Http;
using TypeSpec.Rest;
using TypeSpec.Versioning;
using Azure.Core;
using Azure.Core.Traits;
+using Microsoft.PlaywrightTesting.Shared;
@server(
"{endpoint}",
@@ -54,97 +56,12 @@ namespace Microsoft.PlaywrightTesting.AuthManager;
enum Versions {
@doc("Version 2024-12-01")
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
+ @useDependency(Microsoft.PlaywrightTesting.Shared.Versions.v1_0)
`2024-12-01`,
}
// Models ////////////////////
-@doc("An account is a parent resource for most of the other service resources. It's directly mapped to an Azure resource.")
-@resource("accounts")
-model Account {
- @key("accountId")
- @doc("The account id.")
- @maxLength(64)
- @pattern("[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+")
- @visibility("read")
- id: string;
-
- @doc("The fully-qualified Azure resource id for the account.")
- @visibility("read")
- resourceId: string;
-
- @doc("The account name.")
- @visibility("read")
- name: string;
-
- @doc("The state of account - Active | Inactive")
- @visibility("read")
- state: AccountState;
-
- @doc("The Azure subscription id for the account.")
- @visibility("read")
- subscriptionId: uuid;
-
- @doc("The Azure subscription state - Registered | Unregistered | Warned | Suspended | Deleted")
- @visibility("read")
- subscriptionState: SubscriptionState;
-
- @doc("The Azure tenant id of the account.")
- @visibility("read")
- tenantId: uuid;
-
- @doc("The account resource location in Azure, for eg. eastus, southeastasia.")
- @visibility("read")
- location: string;
-
- @doc("This property sets the connection region for Playwright client workers to cloud-hosted browsers. If enabled, workers connect to browsers in the closest Azure region, ensuring lower latency. If disabled, workers connect to browsers in the Azure region in which the workspace was initially created.")
- @visibility("read")
- regionalAffinity?: EnablementStatus = EnablementStatus.Enabled;
-
- @doc("When enabled, Playwright client workers can connect to cloud-hosted browsers. This can increase the number of parallel workers for a test run, significantly minimizing test completion durations.")
- @visibility("read")
- scalableExecution?: EnablementStatus = EnablementStatus.Enabled;
-
- @doc("When enabled, this feature allows the workspace to upload and display test results, including artifacts like traces and screenshots, in the Playwright portal. This enables faster and more efficient troubleshooting.")
- @visibility("read")
- reporting?: EnablementStatus = EnablementStatus.Enabled;
-
- @doc("When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations.")
- @visibility("read")
- localAuth?: EnablementStatus = EnablementStatus.Disabled;
-}
-
-@doc("The account state.")
-union AccountState {
- string,
-
- @doc("The account is Active.")
- "Active",
-
- @doc("The account is Inactive.")
- "Inactive",
-}
-
-@doc("The Azure subscription state.")
-union SubscriptionState {
- string,
-
- @doc("The subscription state is Registered.")
- "Registered",
-
- @doc("The subscription state is Warned.")
- "Warned",
-
- @doc("The subscription state is Suspended.")
- "Suspended",
-
- @doc("The subscription state is Deleted.")
- "Deleted",
-
- @doc("The subscription state is Unregistered.")
- "Unregistered",
-}
-
@doc("Model of an access-token linked to an account.")
@resource("access-tokens")
@parentResource(Account)
@@ -191,17 +108,6 @@ union AccessTokenState {
Expired: "Expired",
}
-@doc("The enablement status of a feature.")
-union EnablementStatus {
- string,
-
- @doc("The feature is Enabled.")
- Enabled: "Enabled",
-
- @doc("The feature is Disabled.")
- Disabled: "Disabled",
-}
-
@doc("The os to configure for remote test runs.")
union OS {
string,
diff --git a/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml b/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml
index 5b3209eec885..6873e72af011 100644
--- a/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml
+++ b/specification/playwrighttesting/PlaywrightTesting.AuthManager/tspconfig.yaml
@@ -6,6 +6,10 @@ linter:
parameters:
"service-dir":
default: "sdk/playwrighttesting"
+ "dependencies":
+ "additionalDirectories":
+ - "specification/playwrighttesting/PlaywrightTesting.Shared/"
+ default: ""
options:
"@azure-tools/typespec-autorest":
azure-resource-provider-folder: "data-plane"
diff --git a/specification/playwrighttesting/PlaywrightTesting.Shared/main.tsp b/specification/playwrighttesting/PlaywrightTesting.Shared/main.tsp
new file mode 100644
index 000000000000..b45ff810de7a
--- /dev/null
+++ b/specification/playwrighttesting/PlaywrightTesting.Shared/main.tsp
@@ -0,0 +1,116 @@
+// cheat-sheet - https://microsoft.github.io/typespec/standard-library/http/cheat-sheet
+// tsp compile main.tsp --emit @azure-tools/typespec-autorest
+
+import "@typespec/versioning";
+import "@azure-tools/typespec-azure-core";
+
+using TypeSpec.Versioning;
+using TypeSpec.Rest;
+using Azure.Core;
+
+@versioned(Microsoft.PlaywrightTesting.Shared.Versions)
+namespace Microsoft.PlaywrightTesting.Shared;
+
+@doc("The PlaywrightTesting Accounts Model Version.")
+enum Versions {
+ @doc("Version 1.0")
+ @useDependency(Azure.Core.Versions.v1_0_Preview_2)
+ v1_0,
+}
+
+@doc("An account is a parent resource for most of the other service resources. It's directly mapped to an Azure resource.")
+@resource("accounts")
+model Account {
+ @key("accountId")
+ @doc("The account id.")
+ @maxLength(64)
+ @pattern("[A-Za-z0-9]+(_[A-Za-z0-9]+)*(-[A-Za-z0-9]+)+")
+ @visibility("read")
+ id: string;
+
+ @doc("The fully-qualified Azure resource id for the account.")
+ @visibility("read")
+ resourceId: string;
+
+ @doc("The account name.")
+ @visibility("read")
+ name: string;
+
+ @doc("The state of account - Active | Inactive")
+ @visibility("read")
+ state: AccountState;
+
+ @doc("The Azure subscription id for the account.")
+ @visibility("read")
+ subscriptionId: uuid;
+
+ @doc("The Azure subscription state - Registered | Unregistered | Warned | Suspended | Deleted")
+ @visibility("read")
+ subscriptionState: SubscriptionState;
+
+ @doc("The Azure tenant id of the account.")
+ @visibility("read")
+ tenantId: uuid;
+
+ @doc("The account resource location in Azure, for eg. eastus, southeastasia.")
+ @visibility("read")
+ location: string;
+
+ @doc("This property sets the connection region for Playwright client workers to cloud-hosted browsers. If enabled, workers connect to browsers in the closest Azure region, ensuring lower latency. If disabled, workers connect to browsers in the Azure region in which the workspace was initially created.")
+ @visibility("read")
+ regionalAffinity?: EnablementStatus = EnablementStatus.Enabled;
+
+ @doc("When enabled, Playwright client workers can connect to cloud-hosted browsers. This can increase the number of parallel workers for a test run, significantly minimizing test completion durations.")
+ @visibility("read")
+ scalableExecution?: EnablementStatus = EnablementStatus.Enabled;
+
+ @doc("When enabled, this feature allows the workspace to upload and display test results, including artifacts like traces and screenshots, in the Playwright portal. This enables faster and more efficient troubleshooting.")
+ @visibility("read")
+ reporting?: EnablementStatus = EnablementStatus.Enabled;
+
+ @doc("When enabled, this feature allows the workspace to use local auth (through service access token) for executing operations.")
+ @visibility("read")
+ localAuth?: EnablementStatus = EnablementStatus.Disabled;
+}
+
+@doc("The account state.")
+union AccountState {
+ string,
+
+ @doc("The account is Active.")
+ "Active",
+
+ @doc("The account is Inactive.")
+ "Inactive",
+}
+
+@doc("The Azure subscription state.")
+union SubscriptionState {
+ string,
+
+ @doc("The subscription state is Registered.")
+ "Registered",
+
+ @doc("The subscription state is Warned.")
+ "Warned",
+
+ @doc("The subscription state is Suspended.")
+ "Suspended",
+
+ @doc("The subscription state is Deleted.")
+ "Deleted",
+
+ @doc("The subscription state is Unregistered.")
+ "Unregistered",
+}
+
+@doc("The enablement status of a feature.")
+union EnablementStatus {
+ string,
+
+ @doc("The feature is Enabled.")
+ Enabled: "Enabled",
+
+ @doc("The feature is Disabled.")
+ Disabled: "Disabled",
+}
diff --git a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
index 450c73579f07..5aa973ac936e 100644
--- a/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
+++ b/specification/playwrighttesting/data-plane/Microsoft.PlaywrightTesting.AuthManager/stable/2024-12-01/playwrighttesting.json
@@ -76,7 +76,7 @@
"200": {
"description": "The request has succeeded.",
"schema": {
- "$ref": "#/definitions/Account"
+ "$ref": "#/definitions/Microsoft.PlaywrightTesting.Shared.Account"
},
"headers": {
"x-ms-client-request-id": {
@@ -546,7 +546,73 @@
]
}
},
- "Account": {
+ "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.uuid": {
+ "type": "string",
+ "format": "uuid",
+ "description": "Universally Unique Identifier"
+ },
+ "Microsoft.PlaywrightTesting.Shared.Account": {
"type": "object",
"description": "An account is a parent resource for most of the other service resources. It's directly mapped to an Azure resource.",
"properties": {
@@ -568,7 +634,7 @@
"readOnly": true
},
"state": {
- "$ref": "#/definitions/AccountState",
+ "$ref": "#/definitions/Microsoft.PlaywrightTesting.Shared.AccountState",
"description": "The state of account - Active | Inactive",
"readOnly": true
},
@@ -578,7 +644,7 @@
"readOnly": true
},
"subscriptionState": {
- "$ref": "#/definitions/SubscriptionState",
+ "$ref": "#/definitions/Microsoft.PlaywrightTesting.Shared.SubscriptionState",
"description": "The Azure subscription state - Registered | Unregistered | Warned | Suspended | Deleted",
"readOnly": true
},
@@ -708,7 +774,7 @@
"location"
]
},
- "AccountState": {
+ "Microsoft.PlaywrightTesting.Shared.AccountState": {
"type": "string",
"description": "The account state.",
"enum": [
@@ -732,94 +798,7 @@
]
}
},
- "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.uuid": {
- "type": "string",
- "format": "uuid",
- "description": "Universally Unique Identifier"
- },
- "PagedAccessToken": {
- "type": "object",
- "description": "Paged collection of AccessToken items",
- "properties": {
- "value": {
- "type": "array",
- "description": "The AccessToken items on this page",
- "items": {
- "$ref": "#/definitions/AccessToken"
- }
- },
- "nextLink": {
- "type": "string",
- "format": "uri",
- "description": "The link to the next page of items"
- }
- },
- "required": [
- "value"
- ]
- },
- "SubscriptionState": {
+ "Microsoft.PlaywrightTesting.Shared.SubscriptionState": {
"type": "string",
"description": "The Azure subscription state.",
"enum": [
@@ -860,6 +839,27 @@
}
]
}
+ },
+ "PagedAccessToken": {
+ "type": "object",
+ "description": "Paged collection of AccessToken items",
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "The AccessToken items on this page",
+ "items": {
+ "$ref": "#/definitions/AccessToken"
+ }
+ },
+ "nextLink": {
+ "type": "string",
+ "format": "uri",
+ "description": "The link to the next page of items"
+ }
+ },
+ "required": [
+ "value"
+ ]
}
},
"parameters": {
From b92fe44fbb8e415302342ecd6c2c5bb764da7949 Mon Sep 17 00:00:00 2001
From: Fernando Rauseo <73549810+FRL200@users.noreply.github.com>
Date: Mon, 13 Jan 2025 12:18:03 -0500
Subject: [PATCH 091/128] Update default values and descriptions for Key Vault
on API Version 2024-11-01 (#31713)
* Copy files from stable/2023-07-01
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to stable/2024-11-01
Updated the API version from stable/2023-07-01 to stable/2024-11-01.
* Added tag for 2024-11-01 in readme file
* Removed unnecessary folder
* Update default values and descriptions for Key Vault (#31683)
* Initial Changes to Spec
* Prettier ran
* Ran prettier
---------
Co-authored-by: Fernando Rauseo Landa
* Ran prettier
* Ran prettier on all files
* Update managedHsm.json (#31732)
* typo fix
---------
Co-authored-by: Fernando Rauseo Landa
Co-authored-by: Daniel Cherrett <49488952+Cherrett@users.noreply.github.com>
---
.../stable/2024-11-01/common.json | 94 +
.../examples/DeletedManagedHsm_Get.json | 28 +
.../examples/DeletedManagedHsm_List.json | 47 +
.../examples/DeletedManagedHsm_Purge.json | 15 +
.../examples/ManagedHsm_CreateOrUpdate.json | 89 +
.../examples/ManagedHsm_Delete.json | 17 +
.../2024-11-01/examples/ManagedHsm_Get.json | 39 +
.../ManagedHsm_ListByResourceGroup.json | 68 +
.../ManagedHsm_ListBySubscription.json | 67 +
...tPrivateEndpointConnectionsByResource.json | 51 +
.../ManagedHsm_ListRegionsByResource.json | 27 +
.../examples/ManagedHsm_Update.json | 78 +
.../ManagedHsm_checkMhsmNameAvailability.json | 16 +
...edHsm_deletePrivateEndpointConnection.json | 27 +
...nagedHsm_getPrivateEndpointConnection.json | 30 +
.../ManagedHsm_listPrivateLinkResources.json | 30 +
...nagedHsm_putPrivateEndpointConnection.json | 37 +
.../examples/checkVaultNameAvailability.json | 17 +
.../stable/2024-11-01/examples/createKey.json | 53 +
.../2024-11-01/examples/createSecret.json | 50 +
.../2024-11-01/examples/createVault.json | 273 +++
.../examples/createVaultWithNetworkAcls.json | 132 ++
.../deletePrivateEndpointConnection.json | 28 +
.../2024-11-01/examples/deleteVault.json | 16 +
.../2024-11-01/examples/getDeletedVault.json | 26 +
.../stable/2024-11-01/examples/getKey.json | 48 +
.../2024-11-01/examples/getKeyVersion.json | 49 +
.../getPrivateEndpointConnection.json | 33 +
.../stable/2024-11-01/examples/getSecret.json | 28 +
.../stable/2024-11-01/examples/getVault.json | 93 +
.../examples/listDeletedVaults.json | 29 +
.../2024-11-01/examples/listKeyVersions.json | 58 +
.../stable/2024-11-01/examples/listKeys.json | 55 +
.../2024-11-01/examples/listOperations.json | 332 +++
.../listPrivateEndpointConnection.json | 51 +
.../examples/listPrivateLinkResources.json | 30 +
.../2024-11-01/examples/listSecrets.json | 46 +
.../stable/2024-11-01/examples/listVault.json | 24 +
.../examples/listVaultByResourceGroup.json | 98 +
.../examples/listVaultBySubscription.json | 97 +
.../examples/managedHsmCreateKey.json | 52 +
.../2024-11-01/examples/managedHsmGetKey.json | 47 +
.../examples/managedHsmGetKeyVersion.json | 48 +
.../examples/managedHsmListKeyVersions.json | 56 +
.../examples/managedHsmListKeys.json | 53 +
.../examples/purgeDeletedVault.json | 18 +
.../putPrivateEndpointConnection.json | 39 +
.../examples/updateAccessPoliciesAdd.json | 82 +
.../2024-11-01/examples/updateSecret.json | 50 +
.../2024-11-01/examples/updateVault.json | 271 +++
.../stable/2024-11-01/keys.json | 672 ++++++
.../stable/2024-11-01/keysManagedHsm.json | 651 +++++
.../stable/2024-11-01/keyvault.json | 2084 +++++++++++++++++
.../stable/2024-11-01/managedHsm.json | 1740 ++++++++++++++
.../stable/2024-11-01/providers.json | 288 +++
.../stable/2024-11-01/secrets.json | 491 ++++
.../keyvault/resource-manager/readme.md | 19 +-
57 files changed, 9085 insertions(+), 2 deletions(-)
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/common.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Get.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_List.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Purge.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_CreateOrUpdate.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Delete.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Get.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListByResourceGroup.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListBySubscription.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListRegionsByResource.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Update.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_checkMhsmNameAvailability.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_deletePrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_getPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_listPrivateLinkResources.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_putPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/checkVaultNameAvailability.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createSecret.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVaultWithNetworkAcls.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deletePrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deleteVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getDeletedVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKeyVersion.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getSecret.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listDeletedVaults.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeyVersions.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeys.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listOperations.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateLinkResources.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listSecrets.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultByResourceGroup.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultBySubscription.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmCreateKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKeyVersion.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeyVersions.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeys.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/purgeDeletedVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/putPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateAccessPoliciesAdd.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateSecret.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keys.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keysManagedHsm.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keyvault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/managedHsm.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/providers.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/secrets.json
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/common.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/common.json
new file mode 100644
index 000000000000..d8726219f55f
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/common.json
@@ -0,0 +1,94 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-01",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "paths": {},
+ "definitions": {
+ "CloudError": {
+ "description": "An error response from Key Vault resource provider",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/CloudErrorBody"
+ }
+ },
+ "x-ms-external": true,
+ "type": "object"
+ },
+ "CloudErrorBody": {
+ "description": "An error response from Key Vault resource provider",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "Error code. This is a mnemonic that can be consumed programmatically."
+ },
+ "message": {
+ "type": "string",
+ "description": "User friendly error message. The message is typically localized and may vary with service version."
+ }
+ },
+ "x-ms-external": true,
+ "type": "object"
+ },
+ "SystemData": {
+ "description": "Metadata pertaining to creation and last modification of the key vault resource.",
+ "readOnly": true,
+ "properties": {
+ "createdBy": {
+ "type": "string",
+ "description": "The identity that created the key vault resource."
+ },
+ "createdByType": {
+ "description": "The type of identity that created the key vault resource.",
+ "$ref": "#/definitions/IdentityType"
+ },
+ "createdAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp of the key vault resource creation (UTC)."
+ },
+ "lastModifiedBy": {
+ "type": "string",
+ "description": "The identity that last modified the key vault resource."
+ },
+ "lastModifiedByType": {
+ "description": "The type of identity that last modified the key vault resource.",
+ "$ref": "#/definitions/IdentityType"
+ },
+ "lastModifiedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp of the key vault resource last modification (UTC)."
+ }
+ },
+ "type": "object"
+ },
+ "IdentityType": {
+ "type": "string",
+ "description": "The type of identity.",
+ "enum": [
+ "User",
+ "Application",
+ "ManagedIdentity",
+ "Key"
+ ],
+ "x-ms-enum": {
+ "name": "identityType",
+ "modelAsString": true
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Get.json
new file mode 100644
index 000000000000..19d32323a532
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Get.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "name": "hsm1",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm1",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedManagedHSMs",
+ "properties": {
+ "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "location": "westus",
+ "deletionDate": "2021-04-01T00:00:59Z",
+ "scheduledPurgeDate": "2021-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true,
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_List.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_List.json
new file mode 100644
index 000000000000..a60e63befa0a
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_List.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm1",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedManagedHSMs",
+ "properties": {
+ "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "location": "westus",
+ "deletionDate": "2021-04-01T00:00:59Z",
+ "scheduledPurgeDate": "2021-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true,
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm2",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedManagedHSMs",
+ "properties": {
+ "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2",
+ "location": "westus",
+ "deletionDate": "2021-04-01T00:00:59Z",
+ "scheduledPurgeDate": "2021-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true,
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/deletedManagedHSMs?api-version=2024-11-01&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Purge.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Purge.json
new file mode 100644
index 000000000000..b96022346a6c
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/DeletedManagedHsm_Purge.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "name": "hsm1",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_CreateOrUpdate.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_CreateOrUpdate.json
new file mode 100644
index 000000000000..d43b5a48dbd2
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_CreateOrUpdate.json
@@ -0,0 +1,89 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false
+ },
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ },
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": null,
+ "provisioningState": "Provisioning",
+ "statusMessage": "Allocating hardware"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Delete.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Delete.json
new file mode 100644
index 000000000000..d2315cfc323f
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Get.json
new file mode 100644
index 000000000000..380edd73cab4
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Get.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListByResourceGroup.json
new file mode 100644
index 000000000000..54af88a9fa0e
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListByResourceGroup.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ },
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm2.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2",
+ "name": "hsm2",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs?api-version=2024-11-01&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListBySubscription.json
new file mode 100644
index 000000000000..2c6f7a77d66b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListBySubscription.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ },
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm2.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2",
+ "name": "hsm2",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/managedHSMs?api-version=2024-11-01&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json
new file mode 100644
index 000000000000..51d3f6d482d9
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec1",
+ "name": "sample-pec1",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe1"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec2",
+ "name": "sample-pec2",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListRegionsByResource.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListRegionsByResource.json
new file mode 100644
index 000000000000..c8ee2d751404
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_ListRegionsByResource.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "sample-region1",
+ "provisioningState": "Succeeded",
+ "isPrimary": true
+ },
+ {
+ "name": "sample-region2",
+ "provisioningState": "Succeeded",
+ "isPrimary": false
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Update.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Update.json
new file mode 100644
index 000000000000..7a3aa0ea6ba3
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_Update.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood",
+ "Slice": "A"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood",
+ "Slice": "A"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ },
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Updating",
+ "statusMessage": "ManagedHsm is updating."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood",
+ "Slice": "A"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_checkMhsmNameAvailability.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_checkMhsmNameAvailability.json
new file mode 100644
index 000000000000..59497bd54199
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_checkMhsmNameAvailability.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "mhsmName": {
+ "name": "sample-mhsm"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_deletePrivateEndpointConnection.json
new file mode 100644
index 000000000000..2798a64366df
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_deletePrivateEndpointConnection.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Disconnected"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec?operationid=25334578"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_getPrivateEndpointConnection.json
new file mode 100644
index 000000000000..e1400de86ccc
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_getPrivateEndpointConnection.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_listPrivateLinkResources.json
new file mode 100644
index 000000000000..54973dc7fbee
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_listPrivateLinkResources.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateLinkResources/managedhsm",
+ "name": "managedhsm",
+ "type": "Microsoft.KeyVault/managedhsms/privateLinkResources",
+ "properties": {
+ "groupId": "managedhsms",
+ "requiredMembers": [
+ "default"
+ ],
+ "requiredZoneNames": [
+ "privatelink.managedhsm.azure.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_putPrivateEndpointConnection.json
new file mode 100644
index 000000000000..b2b9c5d7c1db
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/ManagedHsm_putPrivateEndpointConnection.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-11-01",
+ "properties": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this."
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this.",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/checkVaultNameAvailability.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/checkVaultNameAvailability.json
new file mode 100644
index 000000000000..56466f2e3494
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/checkVaultNameAvailability.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "vaultName": {
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createKey.json
new file mode 100644
index 000000000000..fbdd8bdace61
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createKey.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "kty": "RSA"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createSecret.json
new file mode 100644
index 000000000000..e53f167ce556
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createSecret.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "secretName": "secret-name",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "value": "secret-value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514938738,
+ "updated": 1514938738
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https:/sample-vault.vault.azure.net/secrets/secret-name/baf6de32c4774c7c81345f6476cf90a4"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514938738,
+ "updated": 1514938738
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https:/sample-vault.vault.azure.net/secrets/secret-name/baf6de32c4774c7c81345f6476cf90a4"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVault.json
new file mode 100644
index 000000000000..460365db878e
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVault.json
@@ -0,0 +1,273 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "bypass": "AzureServices",
+ "defaultAction": "Deny",
+ "ipRules": [
+ {
+ "value": ""
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "",
+ "ignoreMissingVnetServiceEndpoint": false
+ }
+ ]
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "privateEndpointConnections": [
+ {
+ "id": "",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": ""
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVaultWithNetworkAcls.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVaultWithNetworkAcls.json
new file mode 100644
index 000000000000..18fcc7bf1f42
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/createVaultWithNetworkAcls.json
@@ -0,0 +1,132 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "networkAcls": {
+ "defaultAction": "Deny",
+ "bypass": "AzureServices",
+ "ipRules": [
+ {
+ "value": "124.56.78.91"
+ },
+ {
+ "value": "'10.91.4.0/24'"
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1"
+ }
+ ]
+ },
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "defaultAction": "Deny",
+ "bypass": "AzureServices",
+ "ipRules": [
+ {
+ "value": "124.56.78.91/32"
+ },
+ {
+ "value": "'10.91.4.0/24'"
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.network/virtualnetworks/test-vnet/subnets/subnet1"
+ }
+ ]
+ },
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "defaultAction": "Deny",
+ "bypass": "AzureServices",
+ "ipRules": [
+ {
+ "value": "124.56.78.91/32"
+ },
+ {
+ "value": "'10.91.4.0/24'"
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.network/virtualnetworks/test-vnet/subnets/subnet1"
+ }
+ ]
+ },
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deletePrivateEndpointConnection.json
new file mode 100644
index 000000000000..bf110aa4219a
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deletePrivateEndpointConnection.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Disconnected"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "60",
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deleteVault.json
new file mode 100644
index 000000000000..7fddeaabd86b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/deleteVault.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ },
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getDeletedVault.json
new file mode 100644
index 000000000000..75a01f6761a4
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getDeletedVault.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "vaultName": "sample-vault",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedVaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "location": "westus",
+ "tags": {},
+ "deletionDate": "2017-01-01T00:00:59Z",
+ "scheduledPurgeDate": "2017-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKey.json
new file mode 100644
index 000000000000..f4fb51f21f36
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKey.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKeyVersion.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKeyVersion.json
new file mode 100644
index 000000000000..1b7916eae0b5
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getKeyVersion.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "keyVersion": "fd618d9519b74f9aae94ade66b876acc",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/fd618d9519b74f9aae94ade66b876acc",
+ "name": "fd618d9519b74f9aae94ade66b876acc",
+ "type": "Microsoft.KeyVault/vaults/keys/versions",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getPrivateEndpointConnection.json
new file mode 100644
index 000000000000..918ec825dba1
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getPrivateEndpointConnection.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ },
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getSecret.json
new file mode 100644
index 000000000000..5e6b31430b87
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getSecret.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "secretName": "secret-name",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514940950,
+ "updated": 1514940950
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/77445834f7de41bab81d0723bf996860"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getVault.json
new file mode 100644
index 000000000000..85a8bd58e400
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/getVault.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listDeletedVaults.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listDeletedVaults.json
new file mode 100644
index 000000000000..75d603c1b880
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listDeletedVaults.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedVaults/sample-vault",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "location": "westus",
+ "tags": {},
+ "deletionDate": "2017-01-01T00:00:59Z",
+ "scheduledPurgeDate": "2017-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/deletedVaults?api-version=2024-11-01&%24skiptoken=HY3RaoMwAEX%2fRcbeYhJrnRXKYNWOuqpME0sfNcYui0Yxade19N8ne7hcDlzOvVuKX81eKKmt4G4dooLQwgqsL2NGHUDYV6o68Z4rY1e388RtNvRQn2vNJjEaMSgNvcbneMUcsKg8BFwft8DndQ0w9hu2QOiFLRs4TsNFNHzSMBFsGvTQGvuD%2f5bVuTOw4R03vPkH%2fVqNAlzm5SxfOwh7ACOA8POTlvPjILlaU1ke8jImOc23JCppQVfZnna0DXc4ISc3vSVuRo5zJE6%2bj25C3vwk2v2kEV2mMn7PyOc1DbtNGkonnzuLym1G400uI5QRZj0efw%3d%3d"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeyVersions.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeyVersions.json
new file mode 100644
index 000000000000..767329ccb648
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeyVersions.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/c2296aa24acf4daf86942bff5aca73dd",
+ "name": "c2296aa24acf4daf86942bff5aca73dd",
+ "type": "Microsoft.KeyVault/vaults/keys/versions",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641074,
+ "updated": 1598641074,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/c2296aa24acf4daf86942bff5aca73dd"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/d5a04667b6f44b0ca62825f5eae93da6",
+ "name": "d5a04667b6f44b0ca62825f5eae93da6",
+ "type": "Microsoft.KeyVault/vaults/keys/versions",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641295,
+ "updated": 1598641295,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/d5a04667b6f44b0ca62825f5eae93da6"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeys.json
new file mode 100644
index 000000000000..2994538e9b7f
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listKeys.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-1",
+ "name": "sample-key-name-1",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493796,
+ "updated": 1596493796,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-1"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-2",
+ "name": "sample-key-name-2",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493797,
+ "updated": 1596493797,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-2"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listOperations.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listOperations.json
new file mode 100644
index 000000000000..c82d4e6441f7
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listOperations.json
@@ -0,0 +1,332 @@
+{
+ "parameters": {
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.KeyVault/vaults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "View Key Vault",
+ "description": "View the properties of a key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "Update Key Vault",
+ "description": "Create a new key vault or update the properties of an existing key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/delete",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "Delete Key Vault",
+ "description": "Delete a key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/deploy/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "Use Vault for Azure Deployments",
+ "description": "Enables access to secrets in a key vault when deploying Azure resources"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/secrets/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Secret",
+ "operation": "View Secret Properties",
+ "description": "View the properties of a secret, but not its value"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/secrets/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Secret",
+ "operation": "Update Secret",
+ "description": "Create a new secret or update the value of an existing secret"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/accessPolicies/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Access Policy",
+ "operation": "Update Access Policy",
+ "description": "Update an existing access policy by merging or replacing, or add a new access policy to a vault."
+ },
+ "isDataAction": false
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/logDefinitions/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Log Definition",
+ "operation": "Read log definition",
+ "description": "Gets the available logs for a key vault"
+ },
+ "isDataAction": false,
+ "properties": {
+ "serviceSpecification": {
+ "logSpecifications": [
+ {
+ "name": "AuditEvent",
+ "displayName": "Audit Logs",
+ "blobDuration": "PT1H"
+ }
+ ],
+ "metricSpecifications": [
+ {
+ "name": "ServiceApiHit",
+ "displayName": "",
+ "displayDescription": "",
+ "unit": "",
+ "aggregationType": "",
+ "supportedAggregationTypes": [
+ ""
+ ],
+ "supportedTimeGrainTypes": [
+ ""
+ ],
+ "lockAggregationType": "",
+ "dimensions": [
+ {
+ "name": "ActivityType",
+ "displayName": "",
+ "toBeExportedForShoebox": true
+ },
+ {
+ "name": "ActivityName",
+ "displayName": "",
+ "toBeExportedForShoebox": true
+ }
+ ],
+ "fillGapWithZero": false,
+ "internalMetricName": "AuditEvent"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/diagnosticSettings/Read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Diagnostic Settings",
+ "operation": "Read diagnostic setting",
+ "description": "Gets the diagnostic setting for the resource"
+ },
+ "isDataAction": false
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/diagnosticSettings/Write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Diagnostic Settings",
+ "operation": "Write diagnostic setting",
+ "description": "Creates or updates the diagnostic setting for the resource"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/register/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Subscription",
+ "operation": "Register Subscription",
+ "description": "Registers a subscription"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/unregister/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Subscription",
+ "operation": "Unregister Subscription",
+ "description": "Unregisters a subscription"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/operations/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Operations",
+ "operation": "Available Key Vault Operations",
+ "description": "Lists operations available on Microsoft.KeyVault resource provider"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/checkNameAvailability/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Name Availability",
+ "operation": "Check Name Availability",
+ "description": "Checks that a key vault name is valid and is not in use"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/deletedVaults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Soft Deleted Key Vault",
+ "operation": "View Soft Deleted Vaults",
+ "description": "View the properties of soft deleted key vaults"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/locations/deletedVaults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Soft Deleted Key Vault",
+ "operation": "View Soft Deleted Key Vault",
+ "description": "View the properties of a soft deleted key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/locations/deletedVaults/purge/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Soft Deleted Key Vault",
+ "operation": "Purge Soft Deleted Key Vault",
+ "description": "Purge a soft deleted key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/locations/operationResults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Long Run Operation Result",
+ "operation": "Check Operation Result",
+ "description": "Check the result of a long run operation"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "View HSM pool",
+ "description": "View the properties of an HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "Create or Update HSM pool",
+ "description": "Create a new HSM pool of update the properties of an existing HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/delete",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "Delete HSM pool",
+ "description": "Delete an HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/joinVault/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "Join KeyVault to HSM pool",
+ "description": "Join a key vault to an HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/managedHSMs/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Managed HSM",
+ "operation": "View Managed HSM",
+ "description": "View the properties of a Managed HSM"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/managedHSMs/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Managed HSM",
+ "operation": "Create or Update Managed HSM",
+ "description": "Create a new Managed HSM of update the properties of an existing Managed HSM"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/managedHSMs/delete",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Managed HSM",
+ "operation": "Delete Managed HSM",
+ "description": "Delete a Managed HSM"
+ },
+ "isDataAction": false
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/metricDefinitions/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Metric Definition",
+ "operation": "Read metric definition",
+ "description": "Gets the available metrics for a key vault"
+ },
+ "isDataAction": false,
+ "properties": {
+ "serviceSpecification": {}
+ }
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/locations/deleteVirtualNetworkOrSubnets/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Location",
+ "operation": "Modify Network ACLs containing the deleted Vitual Network or Subnet ",
+ "description": "Notifies Microsoft.KeyVault that a virtual network or subnet is being deleted"
+ },
+ "isDataAction": false
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateEndpointConnection.json
new file mode 100644
index 000000000000..fb7db94f5a20
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateEndpointConnection.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateLinkResources.json
new file mode 100644
index 000000000000..796732d56b93
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listPrivateLinkResources.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault",
+ "name": "vault",
+ "type": "Microsoft.KeyVault/vaults/privateLinkResources",
+ "properties": {
+ "groupId": "vault",
+ "requiredMembers": [
+ "default"
+ ],
+ "requiredZoneNames": [
+ "privatelink.vaultcore.azure.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listSecrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listSecrets.json
new file mode 100644
index 000000000000..5a61926ade00
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listSecrets.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514941476,
+ "updated": 1514941476
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/40af42fbc10047f8a756a73211492f56"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name2",
+ "name": "secret-name2",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514941476,
+ "updated": 1514941476
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name2",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name2/cd7264a6f56c44d1b594423c80609aae"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVault.json
new file mode 100644
index 000000000000..3397baaa9f83
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVault.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "$filter": "resourceType eq 'Microsoft.KeyVault/vaults'",
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2015-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {}
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?%24filter=resourceType+eq+%27Microsoft.KeyVault%2fvaults%27&%24top=4&api-version=2015-11-01&%24skiptoken=eyJuZXh0UGFydGl0aW9uS2V5IjoiMSE4IVEwTTJNVGMtIiwibmV4dFJvd0tleSI6IjEhMTMyIU5rUTRSVEU1UXpJelFUWXdORGd4UmpoRlFrSXhNVGhFUXpNd01EZEROVVJmVkVkT1RDMU5TVU5TVDFOUFJsUTZNa1ZMUlZsV1FWVk1WRG95UmxaQlZVeFVVeTFUVTFKSExVcEpUVG95UkZSRlUxUTZNa1JXUVZWTVZDMVhSVk5VVlZNLSJ9"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultByResourceGroup.json
new file mode 100644
index 000000000000..929707544c36
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultByResourceGroup.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "premium"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "enableSoftDelete": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net/",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults?api-version=2024-11-01&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultBySubscription.json
new file mode 100644
index 000000000000..d7822e60ffa7
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/listVaultBySubscription.json
@@ -0,0 +1,97 @@
+{
+ "parameters": {
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "premium"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "enableSoftDelete": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net/",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?api-version=22024-11-01&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmCreateKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmCreateKey.json
new file mode 100644
index 000000000000..5ad097af5ae8
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmCreateKey.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "kty": "RSA"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKey.json
new file mode 100644
index 000000000000..a4560459e86d
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKey.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKeyVersion.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKeyVersion.json
new file mode 100644
index 000000000000..5dffb98ee0d7
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmGetKeyVersion.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "keyVersion": "fd618d9519b74f9aae94ade66b876acc",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name/versions/fd618d9519b74f9aae94ade66b876acc",
+ "name": "fd618d9519b74f9aae94ade66b876acc",
+ "type": "Microsoft.KeyVault/managedHSMs/keys/versions",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeyVersions.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeyVersions.json
new file mode 100644
index 000000000000..ec232c119afd
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeyVersions.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name/versions/c2296aa24acf4daf86942bff5aca73dd",
+ "name": "c2296aa24acf4daf86942bff5aca73dd",
+ "type": "Microsoft.KeyVault/managedHSMs/keys/versions",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641074,
+ "updated": 1598641074,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/c2296aa24acf4daf86942bff5aca73dd"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name/versions/d5a04667b6f44b0ca62825f5eae93da6",
+ "name": "d5a04667b6f44b0ca62825f5eae93da6",
+ "type": "Microsoft.KeyVault/managedHSMs/keys/versions",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641295,
+ "updated": 1598641295,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/d5a04667b6f44b0ca62825f5eae93da6"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeys.json
new file mode 100644
index 000000000000..776ed42a78f6
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/managedHsmListKeys.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name-1",
+ "name": "sample-key-name-1",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493796,
+ "updated": 1596493796,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name-1"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name-2",
+ "name": "sample-key-name-2",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493797,
+ "updated": 1596493797,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name-2"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/purgeDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/purgeDeletedVault.json
new file mode 100644
index 000000000000..109280f8c6c6
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/purgeDeletedVault.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "vaultName": "sample-vault",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01"
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ },
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kv-group/providers/Microsoft.KeyVault/vaults/vault1?api-version=2024-11-01"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/putPrivateEndpointConnection.json
new file mode 100644
index 000000000000..b2262351f4b0
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/putPrivateEndpointConnection.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-11-01",
+ "properties": {
+ "etag": "",
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this."
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this.",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateAccessPoliciesAdd.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateAccessPoliciesAdd.json
new file mode 100644
index 000000000000..7e522e9a201d
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateAccessPoliciesAdd.json
@@ -0,0 +1,82 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "operationKind": "add",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt"
+ ],
+ "secrets": [
+ "get"
+ ],
+ "certificates": [
+ "get"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/accessPolicies/",
+ "type": "Microsoft.KeyVault/vaults/accessPolicies",
+ "properties": {
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt"
+ ],
+ "secrets": [
+ "get"
+ ],
+ "certificates": [
+ "get"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/accessPolicies/",
+ "type": "Microsoft.KeyVault/vaults/accessPolicies",
+ "properties": {
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt"
+ ],
+ "secrets": [
+ "get"
+ ],
+ "certificates": [
+ "get"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateSecret.json
new file mode 100644
index 000000000000..38f167ea31eb
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateSecret.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "secretName": "secret-name",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "value": "secret-value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514940684,
+ "updated": 1514940698
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/b8c802f549764f2d97885d152f92ee9d"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514940684,
+ "updated": 1514940698
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/b8c802f549764f2d97885d152f92ee9d"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateVault.json
new file mode 100644
index 000000000000..692c46470c92
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/examples/updateVault.json
@@ -0,0 +1,271 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-11-01",
+ "parameters": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "bypass": "AzureServices",
+ "defaultAction": "Deny",
+ "ipRules": [
+ {
+ "value": ""
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "",
+ "ignoreMissingVnetServiceEndpoint": false
+ }
+ ]
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "privateEndpointConnections": [
+ {
+ "id": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": ""
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keys.json
new file mode 100644
index 000000000000..b1770ba5a1cf
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keys.json
@@ -0,0 +1,672 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-01",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}": {
+ "put": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_CreateIfNotExist",
+ "description": "Creates the first version of a new key if it does not exist. If it already exists, then the existing key is returned without any write operations being performed. This API does not create subsequent versions, and does not update existing keys.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the key vault which contains the key to be created."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key to be created. The value you provide may be copied globally for the purpose of running the service. The value provided should not include personally identifiable or sensitive information."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/KeyCreateParameters"
+ },
+ "description": "The parameters used to create the specified key."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The created key.",
+ "schema": {
+ "$ref": "#/definitions/Key"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a key": {
+ "$ref": "./examples/createKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_Get",
+ "description": "Gets the current version of the specified key from the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the key to be retrieved."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key.",
+ "schema": {
+ "$ref": "#/definitions/Key"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key": {
+ "$ref": "./examples/getKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys": {
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_List",
+ "description": "Lists the keys in the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the keys to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of keys.",
+ "schema": {
+ "$ref": "#/definitions/KeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List keys in the vault": {
+ "$ref": "./examples/listKeys.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions/{keyVersion}": {
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_GetVersion",
+ "description": "Gets the specified version of the specified key in the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the key version to be retrieved."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key version to be retrieved."
+ },
+ {
+ "name": "keyVersion",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-fA-F0-9]{32}$",
+ "description": "The version of the key to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key version.",
+ "schema": {
+ "$ref": "#/definitions/Key"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key version": {
+ "$ref": "./examples/getKeyVersion.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions": {
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_ListVersions",
+ "description": "Lists the versions of the specified key in the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the key versions to be retrieved."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key versions to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of key versions.",
+ "schema": {
+ "$ref": "#/definitions/KeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List key versions in the vault": {
+ "$ref": "./examples/listKeyVersions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "KeyProperties": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/KeyAttributes",
+ "description": "The attributes of the key."
+ },
+ "kty": {
+ "type": "string",
+ "minLength": 1,
+ "description": "The type of the key. For valid values, see JsonWebKeyType.",
+ "enum": [
+ "EC",
+ "EC-HSM",
+ "RSA",
+ "RSA-HSM"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyType",
+ "modelAsString": true
+ }
+ },
+ "keyOps": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The permitted JSON web key operations of the key. For more information, see JsonWebKeyOperation.",
+ "enum": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey",
+ "import",
+ "release"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyOperation",
+ "modelAsString": true
+ }
+ }
+ },
+ "keySize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA. Default for RSA and RSA-HSM keys is 2048. Exception made for bring your own key (BYOK), key exchange keys default to 4096."
+ },
+ "curveName": {
+ "type": "string",
+ "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName. Default for EC and EC-HSM keys is P-256",
+ "enum": [
+ "P-256",
+ "P-384",
+ "P-521",
+ "P-256K"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyCurveName",
+ "modelAsString": true
+ }
+ },
+ "keyUri": {
+ "type": "string",
+ "description": "The URI to retrieve the current version of the key.",
+ "readOnly": true
+ },
+ "keyUriWithVersion": {
+ "type": "string",
+ "description": "The URI to retrieve the specific version of the key.",
+ "readOnly": true
+ },
+ "rotationPolicy": {
+ "$ref": "#/definitions/RotationPolicy",
+ "description": "Key rotation policy in response. It will be used for both output and input. Omitted if empty"
+ },
+ "release_policy": {
+ "$ref": "#/definitions/KeyReleasePolicy",
+ "description": "Key release policy in response. It will be used for both output and input. Omitted if empty"
+ }
+ },
+ "description": "The properties of the key.",
+ "type": "object"
+ },
+ "KeyAttributes": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Determines whether or not the object is enabled."
+ },
+ "nbf": {
+ "x-ms-client-name": "NotBefore",
+ "type": "integer",
+ "format": "int64",
+ "description": "Not before date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "exp": {
+ "x-ms-client-name": "Expires",
+ "type": "integer",
+ "format": "int64",
+ "description": "Expiry date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "recoveryLevel": {
+ "type": "string",
+ "description": "The deletion recovery level currently in effect for the object. If it contains 'Purgeable', then the object can be permanently deleted by a privileged user; otherwise, only the system can purge the object at the end of the retention interval.",
+ "enum": [
+ "Purgeable",
+ "Recoverable+Purgeable",
+ "Recoverable",
+ "Recoverable+ProtectedSubscription"
+ ],
+ "x-ms-enum": {
+ "name": "DeletionRecoveryLevel",
+ "modelAsString": true
+ },
+ "readOnly": true,
+ "x-nullable": false
+ },
+ "exportable": {
+ "type": "boolean",
+ "description": "Indicates if the private key can be exported.",
+ "default": false
+ }
+ },
+ "description": "The object attributes managed by the Azure Key Vault service.",
+ "type": "object"
+ },
+ "KeyCreateParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key."
+ },
+ "properties": {
+ "$ref": "#/definitions/KeyProperties",
+ "description": "The properties of the key to be created."
+ }
+ },
+ "description": "The parameters used to create a key.",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "Key": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/KeyProperties",
+ "description": "The properties of the key."
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "./keyvault.json#/definitions/Resource"
+ }
+ ],
+ "description": "The key resource.",
+ "type": "object"
+ },
+ "KeyListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Key"
+ },
+ "description": "The key resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next page of keys."
+ }
+ },
+ "description": "The page of keys.",
+ "type": "object"
+ },
+ "RotationPolicy": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/KeyRotationPolicyAttributes",
+ "description": "The attributes of key rotation policy."
+ },
+ "lifetimeActions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifetimeAction"
+ },
+ "x-ms-identifiers": [],
+ "description": "The lifetimeActions for key rotation action."
+ }
+ },
+ "type": "object"
+ },
+ "KeyRotationPolicyAttributes": {
+ "properties": {
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "expiryTime": {
+ "type": "string",
+ "description": "The expiration time for the new key version. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "LifetimeAction": {
+ "properties": {
+ "trigger": {
+ "$ref": "#/definitions/Trigger",
+ "description": "The trigger of key rotation policy lifetimeAction."
+ },
+ "action": {
+ "$ref": "#/definitions/Action",
+ "description": "The action of key rotation policy lifetimeAction."
+ }
+ },
+ "type": "object"
+ },
+ "Trigger": {
+ "properties": {
+ "timeAfterCreate": {
+ "type": "string",
+ "description": "The time duration after key creation to rotate the key. It only applies to rotate. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ },
+ "timeBeforeExpiry": {
+ "type": "string",
+ "description": "The time duration before key expiring to rotate or notify. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "Action": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of action.",
+ "enum": [
+ "rotate",
+ "notify"
+ ],
+ "x-ms-enum": {
+ "name": "KeyRotationPolicyActionType",
+ "modelAsString": false
+ }
+ }
+ },
+ "type": "object"
+ },
+ "KeyReleasePolicy": {
+ "properties": {
+ "contentType": {
+ "description": "Content type and version of key release policy",
+ "type": "string",
+ "default": "application/json; charset=utf-8"
+ },
+ "data": {
+ "description": "Blob encoding the policy rules under which the key can be released.",
+ "type": "string",
+ "format": "base64url"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keysManagedHsm.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keysManagedHsm.json
new file mode 100644
index 000000000000..bfaab1090f0b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keysManagedHsm.json
@@ -0,0 +1,651 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-01",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}": {
+ "put": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_CreateIfNotExist",
+ "description": "Creates the first version of a new key if it does not exist. If it already exists, then the existing key is returned without any write operations being performed. This API does not create subsequent versions, and does not update existing keys.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKeyCreateParameters"
+ },
+ "description": "The parameters used to create the specified key."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The created key.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a key": {
+ "$ref": "./examples/managedHsmCreateKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_Get",
+ "description": "Gets the current version of the specified key from the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key": {
+ "$ref": "./examples/managedHsmGetKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys": {
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_List",
+ "description": "Lists the keys in the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of keys.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List keys in the managed HSM": {
+ "$ref": "./examples/managedHsmListKeys.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}/versions/{keyVersion}": {
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_GetVersion",
+ "description": "Gets the specified version of the specified key in the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyVersion"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key version.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key version": {
+ "$ref": "./examples/managedHsmGetKeyVersion.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}/versions": {
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_ListVersions",
+ "description": "Lists the versions of the specified key in the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of key versions.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List key versions in the managed HSM": {
+ "$ref": "./examples/managedHsmListKeyVersions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "ManagedHsmKeyProperties": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/ManagedHsmKeyAttributes",
+ "description": "The attributes of the key."
+ },
+ "kty": {
+ "type": "string",
+ "minLength": 1,
+ "description": "The type of the key. For valid values, see JsonWebKeyType.",
+ "enum": [
+ "EC",
+ "EC-HSM",
+ "RSA",
+ "RSA-HSM"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyType",
+ "modelAsString": true
+ }
+ },
+ "keyOps": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The permitted JSON web key operations of the key. For more information, see JsonWebKeyOperation.",
+ "enum": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey",
+ "import",
+ "release"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyOperation",
+ "modelAsString": true
+ }
+ }
+ },
+ "keySize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA. Default for RSA and RSA-HSM keys is 2048. Exception made for bring your own key (BYOK), key exchange keys default to 4096."
+ },
+ "curveName": {
+ "type": "string",
+ "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName. Default for EC and EC-HSM keys is P-256",
+ "enum": [
+ "P-256",
+ "P-384",
+ "P-521",
+ "P-256K"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyCurveName",
+ "modelAsString": true
+ }
+ },
+ "keyUri": {
+ "type": "string",
+ "description": "The URI to retrieve the current version of the key.",
+ "readOnly": true
+ },
+ "keyUriWithVersion": {
+ "type": "string",
+ "description": "The URI to retrieve the specific version of the key.",
+ "readOnly": true
+ },
+ "rotationPolicy": {
+ "$ref": "#/definitions/ManagedHsmRotationPolicy",
+ "description": "Key rotation policy in response. It will be used for both output and input. Omitted if empty"
+ },
+ "release_policy": {
+ "$ref": "#/definitions/ManagedHsmKeyReleasePolicy",
+ "description": "Key release policy in response. It will be used for both output and input. Omitted if empty"
+ }
+ },
+ "description": "The properties of the key.",
+ "type": "object"
+ },
+ "ManagedHsmKeyAttributes": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Determines whether or not the object is enabled."
+ },
+ "nbf": {
+ "x-ms-client-name": "NotBefore",
+ "type": "integer",
+ "format": "int64",
+ "description": "Not before date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "exp": {
+ "x-ms-client-name": "Expires",
+ "type": "integer",
+ "format": "int64",
+ "description": "Expiry date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "recoveryLevel": {
+ "type": "string",
+ "description": "The deletion recovery level currently in effect for the object. If it contains 'Purgeable', then the object can be permanently deleted by a privileged user; otherwise, only the system can purge the object at the end of the retention interval.",
+ "enum": [
+ "Purgeable",
+ "Recoverable+Purgeable",
+ "Recoverable",
+ "Recoverable+ProtectedSubscription"
+ ],
+ "x-ms-enum": {
+ "name": "DeletionRecoveryLevel",
+ "modelAsString": true
+ },
+ "readOnly": true,
+ "x-nullable": false
+ },
+ "exportable": {
+ "type": "boolean",
+ "description": "Indicates if the private key can be exported."
+ }
+ },
+ "description": "The object attributes managed by the Azure Key Vault service.",
+ "type": "object"
+ },
+ "ManagedHsmKeyCreateParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key."
+ },
+ "properties": {
+ "$ref": "#/definitions/ManagedHsmKeyProperties",
+ "description": "The properties of the key to be created."
+ }
+ },
+ "description": "The parameters used to create a key.",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "ManagedHsmKey": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ManagedHsmKeyProperties",
+ "description": "The properties of the key."
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResourceWithoutSystemData"
+ }
+ ],
+ "description": "The key resource.",
+ "type": "object"
+ },
+ "ManagedHsmKeyListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ },
+ "description": "The key resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next page of keys."
+ }
+ },
+ "description": "The page of keys.",
+ "type": "object"
+ },
+ "ManagedHsmRotationPolicy": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/ManagedHsmKeyRotationPolicyAttributes",
+ "description": "The attributes of key rotation policy."
+ },
+ "lifetimeActions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedHsmLifetimeAction"
+ },
+ "x-ms-identifiers": [],
+ "description": "The lifetimeActions for key rotation action."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmKeyRotationPolicyAttributes": {
+ "properties": {
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "expiryTime": {
+ "type": "string",
+ "description": "The expiration time for the new key version. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmLifetimeAction": {
+ "properties": {
+ "trigger": {
+ "$ref": "#/definitions/ManagedHsmTrigger",
+ "description": "The trigger of key rotation policy lifetimeAction."
+ },
+ "action": {
+ "$ref": "#/definitions/ManagedHsmAction",
+ "description": "The action of key rotation policy lifetimeAction."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmTrigger": {
+ "properties": {
+ "timeAfterCreate": {
+ "type": "string",
+ "description": "The time duration after key creation to rotate the key. It only applies to rotate. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ },
+ "timeBeforeExpiry": {
+ "type": "string",
+ "description": "The time duration before key expiring to rotate or notify. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmAction": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of action.",
+ "enum": [
+ "rotate",
+ "notify"
+ ],
+ "x-ms-enum": {
+ "name": "KeyRotationPolicyActionType",
+ "modelAsString": false
+ }
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmKeyReleasePolicy": {
+ "properties": {
+ "contentType": {
+ "description": "Content type and version of key release policy",
+ "type": "string",
+ "default": "application/json; charset=utf-8"
+ },
+ "data": {
+ "description": "Blob encoding the policy rules under which the key can be released.",
+ "type": "string",
+ "format": "base64url"
+ }
+ },
+ "type": "object"
+ },
+ "ProxyResourceWithoutSystemData": {
+ "title": "Resource",
+ "description": "Common fields that are returned in the response for all Azure Resource Manager resources",
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the resource"
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\""
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ],
+ "description": "Resource tags."
+ }
+ },
+ "x-ms-azure-resource": true
+ }
+ },
+ "parameters": {
+ "ManagedHSMName": {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Managed HSM Pool within the specified resource group.",
+ "pattern": "^[A-Za-z]([A-Za-z0-9]|\\-[A-Za-z0-9])+$",
+ "maxLength": 24,
+ "minLength": 3,
+ "x-ms-parameter-location": "method"
+ },
+ "ManagedHSMKeyName": {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key to be created. The value you provide may be copied globally for the purpose of running the service. The value provided should not include personally identifiable or sensitive information.",
+ "x-ms-parameter-location": "method"
+ },
+ "ManagedHSMKeyVersion": {
+ "name": "keyVersion",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-fA-F0-9]{32}$",
+ "description": "The version of the key to be retrieved.",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keyvault.json
new file mode 100644
index 000000000000..c5693bab469b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/keyvault.json
@@ -0,0 +1,2084 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-01",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}": {
+ "put": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_CreateOrUpdate",
+ "x-ms-long-running-operation": true,
+ "description": "Create or update a key vault in the specified subscription.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the server belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultCreateOrUpdateParameters"
+ },
+ "description": "Parameters to create or update the vault"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created or updated vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "200": {
+ "description": "Created or updated vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a new vault or update an existing vault": {
+ "$ref": "./examples/createVault.json"
+ },
+ "Create or update a vault with network acls": {
+ "$ref": "./examples/createVaultWithNetworkAcls.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "patch": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_Update",
+ "description": "Update a key vault in the specified subscription.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the server belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultPatchParameters"
+ },
+ "description": "Parameters to patch the vault"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Patched vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "200": {
+ "description": "Patched vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update an existing vault": {
+ "$ref": "./examples/updateVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "delete": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_Delete",
+ "description": "Deletes the specified Azure key vault.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault to delete"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK Response."
+ },
+ "204": {
+ "description": "No Content."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a vault": {
+ "$ref": "./examples/deleteVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_Get",
+ "description": "Gets the specified Azure key vault.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a vault": {
+ "$ref": "./examples/getVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/accessPolicies/{operationKind}": {
+ "put": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_UpdateAccessPolicy",
+ "description": "Update access policies in a key vault in the specified subscription.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "name": "operationKind",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "add",
+ "replace",
+ "remove"
+ ],
+ "x-ms-enum": {
+ "name": "AccessPolicyUpdateKind",
+ "modelAsString": false
+ },
+ "description": "Name of the operation"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultAccessPolicyParameters"
+ },
+ "description": "Access policy to merge into the vault"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "The updated access policies",
+ "schema": {
+ "$ref": "#/definitions/VaultAccessPolicyParameters"
+ }
+ },
+ "200": {
+ "description": "The updated access policies",
+ "schema": {
+ "$ref": "#/definitions/VaultAccessPolicyParameters"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Add an access policy, or update an access policy with new permissions": {
+ "$ref": "./examples/updateAccessPoliciesAdd.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_ListByResourceGroup",
+ "description": "The List operation gets information about the vaults associated with the subscription and within the specified resource group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all key vaults in the specified resource group.",
+ "schema": {
+ "$ref": "#/definitions/VaultListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List vaults in the specified resource group": {
+ "$ref": "./examples/listVaultByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/vaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_ListBySubscription",
+ "description": "The List operation gets information about the vaults associated with the subscription.",
+ "parameters": [
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all key vaults in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/VaultListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List vaults in the specified subscription": {
+ "$ref": "./examples/listVaultBySubscription.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/deletedVaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_ListDeleted",
+ "description": "Gets information about the deleted vaults in a subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about all deleted key vaults in a subscription.",
+ "schema": {
+ "$ref": "#/definitions/DeletedVaultListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List deleted vaults in the specified subscription": {
+ "$ref": "./examples/listDeletedVaults.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedVaults/{vaultName}": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_GetDeleted",
+ "description": "Gets the deleted Azure key vault.",
+ "parameters": [
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the deleted vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about the deleted vault.",
+ "schema": {
+ "$ref": "#/definitions/DeletedVault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a deleted vault": {
+ "$ref": "./examples/getDeletedVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedVaults/{vaultName}/purge": {
+ "post": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_PurgeDeleted",
+ "x-ms-long-running-operation": true,
+ "description": "Permanently deletes the specified vault. aka Purges the deleted Azure key vault.",
+ "parameters": [
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the soft-deleted vault."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the soft-deleted vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The vault is purged."
+ },
+ "202": {
+ "description": "Vault is being purged."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Purge a deleted vault": {
+ "$ref": "./examples/purgeDeletedVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resources": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_List",
+ "description": "The List operation gets information about the vaults associated with the subscription.",
+ "parameters": [
+ {
+ "name": "$filter",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "resourceType eq 'Microsoft.KeyVault/vaults'"
+ ],
+ "x-ms-enum": {
+ "name": "VaultListFilterTypes",
+ "modelAsString": false
+ },
+ "description": "The filter to apply on the operation."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "x-ms-api-version": false,
+ "type": "string",
+ "enum": [
+ "2015-11-01"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceManagerApiVersions",
+ "modelAsString": false
+ },
+ "description": "Azure Resource Manager Api Version."
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all key vaults in the subscription.",
+ "schema": {
+ "$ref": "#/definitions/ResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List vaults in the specified subscription": {
+ "$ref": "./examples/listVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_CheckNameAvailability",
+ "description": "Checks that the vault name is valid and is not already in use.",
+ "parameters": [
+ {
+ "name": "vaultName",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultCheckNameAvailabilityParameters"
+ },
+ "description": "The name of the vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK -- Operation to check the vault name availability was successful.",
+ "schema": {
+ "$ref": "#/definitions/CheckNameAvailabilityResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validate a vault name": {
+ "$ref": "./examples/checkVaultNameAvailability.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Get",
+ "description": "Gets the specified private endpoint connection associated with the key vault.",
+ "x-ms-examples": {
+ "KeyVaultGetPrivateEndpointConnection": {
+ "$ref": "./examples/getPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Private endpoint connection successfully returned.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Put",
+ "description": "Updates the specified private endpoint connection associated with the key vault.",
+ "x-ms-examples": {
+ "KeyVaultPutPrivateEndpointConnection": {
+ "$ref": "./examples/putPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The intended state of private endpoint connection."
+ }
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The state of private endpoint connection was updated successfully.",
+ "headers": {
+ "Retry-After": {
+ "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Azure-AsyncOperation": {
+ "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Delete",
+ "description": "Deletes the specified private endpoint connection associated with the key vault.",
+ "x-ms-examples": {
+ "KeyVaultDeletePrivateEndpointConnection": {
+ "$ref": "./examples/deletePrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The private endpoint connection was successfully deleted.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "202": {
+ "description": "The private endpoint connection is being deleted.",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in the location header.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_ListByResource",
+ "description": "The List operation gets information about the private endpoint connections associated with the vault.",
+ "x-ms-examples": {
+ "KeyVaultListPrivateEndpointConnection": {
+ "$ref": "./examples/listPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all private endpoint connections in the specified resource group.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "PrivateLinkResources"
+ ],
+ "operationId": "PrivateLinkResources_ListByVault",
+ "description": "Gets the private link resources supported for the key vault.",
+ "x-ms-examples": {
+ "KeyVaultListPrivateLinkResources": {
+ "$ref": "./examples/listPrivateLinkResources.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully retrieved private link resources.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Sku": {
+ "properties": {
+ "family": {
+ "type": "string",
+ "description": "SKU family name",
+ "enum": [
+ "A"
+ ],
+ "x-ms-client-default": "A",
+ "x-ms-enum": {
+ "name": "SkuFamily",
+ "modelAsString": true
+ }
+ },
+ "name": {
+ "type": "string",
+ "description": "SKU name to specify whether the key vault is a standard vault or a premium vault.",
+ "enum": [
+ "standard",
+ "premium"
+ ],
+ "x-ms-enum": {
+ "name": "SkuName",
+ "modelAsString": false
+ }
+ }
+ },
+ "description": "SKU details",
+ "required": [
+ "name",
+ "family"
+ ],
+ "type": "object"
+ },
+ "AccessPolicyEntry": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault."
+ },
+ "objectId": {
+ "type": "string",
+ "description": "The object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID must be unique for the list of access policies."
+ },
+ "applicationId": {
+ "type": "string",
+ "format": "uuid",
+ "description": " Application ID of the client making request on behalf of a principal"
+ },
+ "permissions": {
+ "$ref": "#/definitions/Permissions",
+ "description": "Permissions the identity has for keys, secrets and certificates."
+ }
+ },
+ "description": "An identity that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID.",
+ "required": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "type": "object"
+ },
+ "Permissions": {
+ "properties": {
+ "keys": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge",
+ "release",
+ "rotate",
+ "getrotationpolicy",
+ "setrotationpolicy"
+ ],
+ "x-ms-enum": {
+ "name": "KeyPermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to keys"
+ },
+ "secrets": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "x-ms-enum": {
+ "name": "SecretPermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to secrets"
+ },
+ "certificates": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge",
+ "backup",
+ "restore"
+ ],
+ "x-ms-enum": {
+ "name": "CertificatePermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to certificates"
+ },
+ "storage": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "get",
+ "list",
+ "delete",
+ "set",
+ "update",
+ "regeneratekey",
+ "recover",
+ "purge",
+ "backup",
+ "restore",
+ "setsas",
+ "listsas",
+ "getsas",
+ "deletesas"
+ ],
+ "x-ms-enum": {
+ "name": "StoragePermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to storage accounts"
+ }
+ },
+ "description": "Permissions the identity has for keys, secrets, certificates and storage.",
+ "type": "object"
+ },
+ "VaultProperties": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault."
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "SKU details"
+ },
+ "accessPolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AccessPolicyEntry"
+ },
+ "x-ms-identifiers": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required."
+ },
+ "vaultUri": {
+ "type": "string",
+ "description": "The URI of the vault for performing operations on keys and secrets."
+ },
+ "hsmPoolResourceId": {
+ "type": "string",
+ "description": "The resource id of HSM Pool.",
+ "readOnly": true
+ },
+ "enabledForDeployment": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault."
+ },
+ "enabledForDiskEncryption": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys."
+ },
+ "enabledForTemplateDeployment": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault."
+ },
+ "enableSoftDelete": {
+ "type": "boolean",
+ "default": true,
+ "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once set to true, it cannot be reverted to false."
+ },
+ "softDeleteRetentionInDays": {
+ "type": "integer",
+ "format": "int32",
+ "default": 90,
+ "description": "softDelete data retention days. It accepts >=7 and <=90."
+ },
+ "enableRbacAuthorization": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored. When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the vault is created with the default value of false. Note that management actions are always authorized with RBAC."
+ },
+ "createMode": {
+ "type": "string",
+ "description": "The vault's create mode to indicate whether the vault need to be recovered or not.",
+ "enum": [
+ "recover",
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMode",
+ "modelAsString": false
+ },
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "enablePurgeProtection": {
+ "type": "boolean",
+ "description": "Property specifying whether protection against purge is enabled for this vault. Setting this property to true activates protection against purge for this vault and its content - only the Key Vault service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible - that is, the property does not accept false as its value."
+ },
+ "networkAcls": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "Rules governing the accessibility of the key vault from specific network locations."
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the vault.",
+ "enum": [
+ "Succeeded",
+ "RegisteringDns"
+ ],
+ "x-ms-enum": {
+ "name": "VaultProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpointConnections": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnectionItem"
+ },
+ "description": "List of private endpoint connections associated with the key vault."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "default": "enabled",
+ "description": "Property to specify whether the vault will accept traffic from public internet. If set to 'disabled' all traffic except private endpoint traffic and that that originates from trusted services will be blocked. This will override the set firewall rules, meaning that even if the firewall rules are present we will not honor the rules."
+ }
+ },
+ "required": [
+ "tenantId",
+ "sku"
+ ],
+ "description": "Properties of the vault",
+ "type": "object"
+ },
+ "VaultPatchProperties": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault."
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "SKU details"
+ },
+ "accessPolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AccessPolicyEntry"
+ },
+ "x-ms-identifiers": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID."
+ },
+ "enabledForDeployment": {
+ "type": "boolean",
+ "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault."
+ },
+ "enabledForDiskEncryption": {
+ "type": "boolean",
+ "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys."
+ },
+ "enabledForTemplateDeployment": {
+ "type": "boolean",
+ "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault."
+ },
+ "enableSoftDelete": {
+ "type": "boolean",
+ "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. Once set to true, it cannot be reverted to false."
+ },
+ "enableRbacAuthorization": {
+ "type": "boolean",
+ "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored. When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the value of this property will not change."
+ },
+ "softDeleteRetentionInDays": {
+ "type": "integer",
+ "format": "int32",
+ "description": "softDelete data retention days. It accepts >=7 and <=90."
+ },
+ "createMode": {
+ "type": "string",
+ "description": "The vault's create mode to indicate whether the vault need to be recovered or not.",
+ "enum": [
+ "recover",
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMode",
+ "modelAsString": false
+ }
+ },
+ "enablePurgeProtection": {
+ "type": "boolean",
+ "description": "Property specifying whether protection against purge is enabled for this vault. Setting this property to true activates protection against purge for this vault and its content - only the Key Vault service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible - that is, the property does not accept false as its value."
+ },
+ "networkAcls": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "A collection of rules governing the accessibility of the vault from specific network locations."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "description": "Property to specify whether the vault will accept traffic from public internet. If set to 'disabled' all traffic except private endpoint traffic and that that originates from trusted services will be blocked. This will override the set firewall rules, meaning that even if the firewall rules are present we will not honor the rules."
+ }
+ },
+ "description": "Properties of the vault",
+ "type": "object"
+ },
+ "VaultAccessPolicyProperties": {
+ "properties": {
+ "accessPolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AccessPolicyEntry"
+ },
+ "x-ms-identifiers": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID."
+ }
+ },
+ "required": [
+ "accessPolicies"
+ ],
+ "description": "Properties of the vault access policy",
+ "type": "object"
+ },
+ "DeletedVaultProperties": {
+ "properties": {
+ "vaultId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource id of the original vault."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The location of the original vault."
+ },
+ "deletionDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The deleted date."
+ },
+ "scheduledPurgeDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The scheduled purged date."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags of the original vault."
+ },
+ "purgeProtectionEnabled": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Purge protection status of the original vault."
+ }
+ },
+ "description": "Properties of the deleted vault.",
+ "type": "object"
+ },
+ "VaultCreateOrUpdateParameters": {
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "The supported Azure location where the key vault should be created."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key vault."
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "description": "Parameters for creating or updating a vault",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "VaultPatchParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key vault. "
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultPatchProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "description": "Parameters for creating or updating a vault",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "VaultAccessPolicyParameters": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource id of the access policy."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource name of the access policy."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource name of the access policy."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the access policy."
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultAccessPolicyProperties",
+ "description": "Properties of the access policy"
+ }
+ },
+ "description": "Parameters for updating the access policy in a vault",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "Vault": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Fully qualified identifier of the key vault resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Name of the key vault resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type of the key vault resource."
+ },
+ "location": {
+ "type": "string",
+ "description": "Azure location of the key vault resource."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags assigned to the key vault resource."
+ },
+ "systemData": {
+ "description": "System metadata for the key vault.",
+ "$ref": "common.json#/definitions/SystemData"
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "Resource information with extended details.",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "DeletedVault": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource ID for the deleted key vault."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the key vault."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the key vault."
+ },
+ "properties": {
+ "$ref": "#/definitions/DeletedVaultProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "description": "Deleted vault information with extended details.",
+ "type": "object"
+ },
+ "VaultListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Vault"
+ },
+ "description": "The list of vaults."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of vaults."
+ }
+ },
+ "description": "List of vaults",
+ "type": "object"
+ },
+ "DeletedVaultListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DeletedVault"
+ },
+ "description": "The list of deleted vaults."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of deleted vaults."
+ }
+ },
+ "description": "List of vaults",
+ "type": "object"
+ },
+ "ResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Resource"
+ },
+ "description": "The list of vault resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of vault resources."
+ }
+ },
+ "description": "List of vault resources.",
+ "type": "object"
+ },
+ "Resource": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Fully qualified identifier of the key vault resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Name of the key vault resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type of the key vault resource."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Azure location of the key vault resource."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags assigned to the key vault resource."
+ }
+ },
+ "description": "Key Vault resource",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "VaultCheckNameAvailabilityParameters": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The vault name."
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "Microsoft.KeyVault/vaults"
+ ],
+ "x-ms-enum": {
+ "name": "Type",
+ "modelAsString": false
+ },
+ "description": "The type of resource, Microsoft.KeyVault/vaults"
+ }
+ },
+ "required": [
+ "name",
+ "type"
+ ],
+ "description": "The parameters used to check the availability of the vault name.",
+ "type": "object"
+ },
+ "CheckNameAvailabilityResult": {
+ "properties": {
+ "nameAvailable": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "A boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used."
+ },
+ "reason": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The reason that a vault name could not be used. The Reason element is only returned if NameAvailable is false.",
+ "enum": [
+ "AccountNameInvalid",
+ "AlreadyExists"
+ ],
+ "x-ms-enum": {
+ "name": "Reason",
+ "modelAsString": false
+ }
+ },
+ "message": {
+ "readOnly": true,
+ "type": "string",
+ "description": "An error message explaining the Reason value in more detail."
+ }
+ },
+ "description": "The CheckNameAvailability operation response.",
+ "type": "object"
+ },
+ "NetworkRuleSet": {
+ "properties": {
+ "bypass": {
+ "type": "string",
+ "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "defaultAction": {
+ "type": "string",
+ "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleAction",
+ "modelAsString": true
+ }
+ },
+ "ipRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IPRule"
+ },
+ "description": "The list of IP address rules."
+ },
+ "virtualNetworkRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualNetworkRule"
+ },
+ "x-ms-identifiers": [
+ "id"
+ ],
+ "description": "The list of virtual network rules."
+ }
+ },
+ "description": "A set of rules governing the network accessibility of a vault.",
+ "type": "object"
+ },
+ "IPRule": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "A rule governing the accessibility of a vault from a specific ip address or ip range.",
+ "type": "object"
+ },
+ "VirtualNetworkRule": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'."
+ },
+ "ignoreMissingVnetServiceEndpoint": {
+ "type": "boolean",
+ "description": "Property to specify whether NRP will ignore the check if parent subnet has serviceEndpoints configured."
+ }
+ },
+ "required": [
+ "id"
+ ],
+ "description": "A rule governing the accessibility of a vault from a specific virtual network.",
+ "type": "object"
+ },
+ "PrivateEndpointConnectionItem": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Id of private endpoint connection."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Private endpoint connection properties."
+ }
+ },
+ "description": "Private endpoint connection item.",
+ "type": "object"
+ },
+ "PrivateEndpointConnection": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Resource properties."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "description": "Private endpoint connection resource.",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "PrivateEndpointConnectionListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The list of private endpoint connections."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of private endpoint connections."
+ }
+ },
+ "description": "List of private endpoint connections.",
+ "type": "object"
+ },
+ "PrivateEndpointConnectionProperties": {
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "Properties of the private endpoint object."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "Approval state of the private link connection."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState",
+ "description": "Provisioning state of the private endpoint connection."
+ }
+ },
+ "description": "Properties of the private endpoint connection resource.",
+ "type": "object"
+ },
+ "PrivateEndpoint": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Full identifier of the private endpoint resource."
+ }
+ },
+ "description": "Private endpoint object properties.",
+ "type": "object"
+ },
+ "PrivateLinkServiceConnectionState": {
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus",
+ "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner."
+ },
+ "description": {
+ "type": "string",
+ "description": "The reason for approval or rejection."
+ },
+ "actionsRequired": {
+ "type": "string",
+ "description": "A message indicating if changes on the service provider require any updates on the consumer.",
+ "enum": [
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ActionsRequired",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "An object that represents the approval state of the private link connection.",
+ "type": "object"
+ },
+ "PrivateEndpointServiceConnectionStatus": {
+ "type": "string",
+ "description": "The private endpoint connection status.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointServiceConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "PrivateEndpointConnectionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Failed",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "PrivateLinkResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Array of private link resources",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ }
+ },
+ "description": "A list of private link resources",
+ "type": "object"
+ },
+ "PrivateLinkResource": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "Resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "description": "A private link resource",
+ "type": "object"
+ },
+ "PrivateLinkResourceProperties": {
+ "properties": {
+ "groupId": {
+ "description": "Group identifier of private link resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "requiredMembers": {
+ "description": "Required member names of private link resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "requiredZoneNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Required DNS zone names of the the private link resource."
+ }
+ },
+ "description": "Properties of a private link resource.",
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the resource group that contains the key vault.",
+ "x-ms-parameter-location": "method"
+ },
+ "VaultName": {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the key vault.",
+ "x-ms-parameter-location": "method"
+ },
+ "PrivateEndpointConnectionName": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the private endpoint connection associated with the key vault.",
+ "x-ms-parameter-location": "method"
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/managedHsm.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/managedHsm.json
new file mode 100644
index 000000000000..3a2bf70f14a0
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/managedHsm.json
@@ -0,0 +1,1740 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault.",
+ "version": "2024-11-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.KeyVault/managedHSMs/{name}": {
+ "put": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_CreateOrUpdate",
+ "x-ms-long-running-operation": true,
+ "description": "Create or update a managed HSM Pool in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ },
+ "description": "Parameters to create or update the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "200": {
+ "description": "Created or updated managed HSM Pool",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a new managed HSM Pool or update an existing managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_CreateOrUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_Update",
+ "x-ms-long-running-operation": true,
+ "description": "Update a managed HSM Pool in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ },
+ "description": "Parameters to patch the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "200": {
+ "description": "Patched managed HSM Pool",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update an existing managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_Delete",
+ "x-ms-long-running-operation": true,
+ "description": "Deletes the specified managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool to delete"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Request successful. Resource does not exist."
+ },
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "Delete successful."
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_Get",
+ "description": "Gets the specified managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved managed HSM Pool",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "204": {
+ "description": "Request successful. Resource does not exist."
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_ListByResourceGroup",
+ "description": "The List operation gets information about the managed HSM Pools associated with the subscription and within the specified resource group.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified resource group.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a resource group": {
+ "$ref": "./examples/ManagedHsm_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/managedHSMs": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_ListBySubscription",
+ "description": "The List operation gets information about the managed HSM Pools associated with the subscription.",
+ "parameters": [
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a subscription": {
+ "$ref": "./examples/ManagedHsm_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "MHSMListPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_ListByResource",
+ "description": "The List operation gets information about the private endpoint connections associated with the managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionsListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a subscription": {
+ "$ref": "./examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/deletedManagedHSMs": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_ListDeleted",
+ "description": "The List operation gets information about the deleted managed HSMs associated with the subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about all managed HSMs in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/DeletedManagedHsmListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List deleted managed HSMs in the specified subscription": {
+ "$ref": "./examples/DeletedManagedHsm_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedManagedHSMs/{name}": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_GetDeleted",
+ "description": "Gets the specified deleted managed HSM.",
+ "parameters": [
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the deleted managed HSM."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the deleted managed HSM."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about the specified deleted managed HSM.",
+ "schema": {
+ "$ref": "#/definitions/DeletedManagedHsm"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a deleted managed HSM": {
+ "$ref": "./examples/DeletedManagedHsm_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedManagedHSMs/{name}/purge": {
+ "post": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_PurgeDeleted",
+ "x-ms-long-running-operation": true,
+ "description": "Permanently deletes the specified managed HSM.",
+ "parameters": [
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the soft-deleted managed HSM."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the soft-deleted managed HSM."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Purge a managed HSM Pool": {
+ "$ref": "./examples/DeletedManagedHsm_Purge.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "MHSMPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_Get",
+ "description": "Gets the specified private endpoint connection associated with the managed HSM Pool.",
+ "x-ms-examples": {
+ "ManagedHsmGetPrivateEndpointConnection": {
+ "$ref": "./examples/ManagedHsm_getPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/MHSMPrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Private endpoint connection successfully returned.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MHSMPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_Put",
+ "description": "Updates the specified private endpoint connection associated with the managed hsm pool.",
+ "x-ms-examples": {
+ "ManagedHsmPutPrivateEndpointConnection": {
+ "$ref": "./examples/ManagedHsm_putPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/MHSMPrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ },
+ "description": "The intended state of private endpoint connection."
+ }
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The state of private endpoint connection was updated successfully.",
+ "headers": {
+ "Retry-After": {
+ "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Azure-AsyncOperation": {
+ "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MHSMPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_Delete",
+ "x-ms-long-running-operation": true,
+ "description": "Deletes the specified private endpoint connection associated with the managed hsm pool.",
+ "x-ms-examples": {
+ "ManagedHsmDeletePrivateEndpointConnection": {
+ "$ref": "./examples/ManagedHsm_deletePrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/MHSMPrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The private endpoint connection was successfully deleted.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ }
+ },
+ "202": {
+ "description": "The private endpoint connection is being deleted.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "MHSMPrivateLinkResources"
+ ],
+ "operationId": "MHSMPrivateLinkResources_ListByMHSMResource",
+ "description": "Gets the private link resources supported for the managed hsm pool.",
+ "x-ms-examples": {
+ "KeyVaultListPrivateLinkResources": {
+ "$ref": "./examples/ManagedHsm_listPrivateLinkResources.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully retrieved private link resources.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateLinkResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/regions": {
+ "get": {
+ "tags": [
+ "MHSMListRegions"
+ ],
+ "operationId": "MHSMRegions_ListByResource",
+ "description": "The List operation gets information about the regions associated with the managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/MHSMRegionsListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a subscription": {
+ "$ref": "./examples/ManagedHsm_ListRegionsByResource.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/checkMhsmNameAvailability": {
+ "post": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_CheckMhsmNameAvailability",
+ "description": "Checks that the managed hsm name is valid and is not already in use.",
+ "parameters": [
+ {
+ "name": "mhsmName",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CheckMhsmNameAvailabilityParameters"
+ },
+ "description": "The name of the managed hsm."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK -- Operation to check the mhsm name availability was successful.",
+ "schema": {
+ "$ref": "#/definitions/CheckMhsmNameAvailabilityResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validate a managed hsm name": {
+ "$ref": "./examples/ManagedHsm_checkMhsmNameAvailability.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "ManagedHsmSku": {
+ "properties": {
+ "family": {
+ "type": "string",
+ "description": "SKU Family of the managed HSM Pool",
+ "enum": [
+ "B",
+ "C"
+ ],
+ "x-ms-client-default": "B",
+ "x-ms-enum": {
+ "name": "ManagedHsmSkuFamily",
+ "modelAsString": true
+ }
+ },
+ "name": {
+ "type": "string",
+ "description": "SKU of the managed HSM Pool",
+ "enum": [
+ "Standard_B1",
+ "Custom_B32",
+ "Custom_B6",
+ "Custom_C42",
+ "Custom_C10"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedHsmSkuName",
+ "modelAsString": false
+ }
+ }
+ },
+ "description": "SKU details",
+ "required": [
+ "name",
+ "family"
+ ],
+ "type": "object"
+ },
+ "ManagedHsmProperties": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM pool."
+ },
+ "initialAdminObjectIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Array of initial administrators object ids for this managed hsm pool."
+ },
+ "hsmUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The URI of the managed hsm pool for performing operations on keys."
+ },
+ "enableSoftDelete": {
+ "type": "boolean",
+ "default": true,
+ "description": "Property to specify whether the 'soft delete' functionality is enabled for this managed HSM pool. Soft delete is enabled by default for all managed HSMs and is immutable."
+ },
+ "softDeleteRetentionInDays": {
+ "type": "integer",
+ "format": "int32",
+ "default": 90,
+ "description": "Soft deleted data retention days. When you delete an HSM or a key, it will remain recoverable for the configured retention period or for a default period of 90 days. It accepts values between 7 and 90."
+ },
+ "enablePurgeProtection": {
+ "type": "boolean",
+ "default": true,
+ "description": "Property specifying whether protection against purge is enabled for this managed HSM pool. Setting this property to true activates protection against purge for this managed HSM pool and its content - only the Managed HSM service may initiate a hard, irrecoverable deletion. Enabling this functionality is irreversible."
+ },
+ "createMode": {
+ "type": "string",
+ "description": "The create mode to indicate whether the resource is being created or is being recovered from a deleted resource.",
+ "enum": [
+ "recover",
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMode",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "recover",
+ "description": "Recover the managed HSM pool from a soft-deleted resource."
+ },
+ {
+ "value": "default",
+ "description": "Create a new managed HSM pool. This is the default option."
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "statusMessage": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource Status Message."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Provisioning",
+ "Failed",
+ "Updating",
+ "Deleting",
+ "Activated",
+ "SecurityDomainRestore",
+ "Restoring"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Succeeded",
+ "description": "The managed HSM Pool has been full provisioned."
+ },
+ {
+ "value": "Provisioning",
+ "description": "The managed HSM Pool is currently being provisioned."
+ },
+ {
+ "value": "Failed",
+ "description": "Provisioning of the managed HSM Pool has failed."
+ },
+ {
+ "value": "Updating",
+ "description": "The managed HSM Pool is currently being updated."
+ },
+ {
+ "value": "Deleting",
+ "description": "The managed HSM Pool is currently being deleted."
+ },
+ {
+ "value": "Activated",
+ "description": "The managed HSM pool is ready for normal use."
+ },
+ {
+ "value": "SecurityDomainRestore",
+ "description": "The managed HSM pool is waiting for a security domain restore action."
+ },
+ {
+ "value": "Restoring",
+ "description": "The managed HSM pool is being restored from full HSM backup."
+ }
+ ]
+ }
+ },
+ "networkAcls": {
+ "$ref": "#/definitions/MHSMNetworkRuleSet",
+ "description": "Rules governing the accessibility of the key vault from specific network locations."
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMGeoReplicatedRegion"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "List of all regions associated with the managed hsm pool."
+ },
+ "privateEndpointConnections": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionItem"
+ },
+ "description": "List of private endpoint connections associated with the managed hsm pool."
+ },
+ "publicNetworkAccess": {
+ "description": "Control permission to the managed HSM from public networks.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "default": "Enabled",
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "scheduledPurgeDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The scheduled purge date in UTC."
+ },
+ "securityDomainProperties": {
+ "readOnly": true,
+ "$ref": "#/definitions/ManagedHSMSecurityDomainProperties",
+ "description": "Managed HSM security domain properties."
+ }
+ },
+ "description": "Properties of the managed HSM Pool",
+ "type": "object"
+ },
+ "ManagedHsm": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ManagedHsmProperties",
+ "description": "Properties of the managed HSM"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedHsmResource"
+ }
+ ],
+ "description": "Resource information with extended details.",
+ "type": "object"
+ },
+ "ManagedHsmResource": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The Azure Resource Manager resource ID for the managed HSM Pool."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the managed HSM Pool."
+ },
+ "location": {
+ "type": "string",
+ "description": "The supported Azure location where the managed HSM Pool should be created.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "sku": {
+ "$ref": "#/definitions/ManagedHsmSku",
+ "description": "SKU details"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ },
+ "systemData": {
+ "$ref": "common.json#/definitions/SystemData"
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity"
+ }
+ },
+ "description": "Managed HSM resource",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "ManagedHsmListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedHsm"
+ },
+ "description": "The list of managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed HSM Pools."
+ }
+ },
+ "description": "List of managed HSM Pools",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnectionsListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ },
+ "description": "The private endpoint connection associated with a managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed HSM Pools."
+ }
+ },
+ "description": "List of private endpoint connections associated with a managed HSM Pools",
+ "type": "object"
+ },
+ "MHSMRegionsListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMGeoReplicatedRegion"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The region associated with a managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed HSM Pools."
+ }
+ },
+ "description": "List of regions associated with a managed HSM Pools"
+ },
+ "ManagedHsmError": {
+ "properties": {
+ "error": {
+ "readOnly": true,
+ "description": "The server error.",
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "description": "The error exception.",
+ "type": "object"
+ },
+ "Error": {
+ "properties": {
+ "code": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The error code."
+ },
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The error message."
+ },
+ "innererror": {
+ "x-ms-client-name": "innerError",
+ "readOnly": true,
+ "description": "The inner error, contains a more specific error code.",
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "description": "The server error.",
+ "type": "object"
+ },
+ "DeletedManagedHsm": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The Azure Resource Manager resource ID for the deleted managed HSM Pool."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the managed HSM Pool."
+ },
+ "properties": {
+ "$ref": "#/definitions/DeletedManagedHsmProperties",
+ "description": "Properties of the deleted managed HSM"
+ }
+ },
+ "type": "object"
+ },
+ "DeletedManagedHsmProperties": {
+ "properties": {
+ "mhsmId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource id of the original managed HSM."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The location of the original managed HSM."
+ },
+ "deletionDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The deleted date."
+ },
+ "scheduledPurgeDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The scheduled purged date."
+ },
+ "purgeProtectionEnabled": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Purge protection status of the original managed HSM."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags of the original managed HSM."
+ }
+ },
+ "description": "Properties of the deleted managed HSM.",
+ "type": "object"
+ },
+ "DeletedManagedHsmListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DeletedManagedHsm"
+ },
+ "description": "The list of deleted managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of deleted managed HSM Pools."
+ }
+ },
+ "description": "List of deleted managed HSM Pools",
+ "type": "object"
+ },
+ "MHSMGeoReplicatedRegion": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of the geo replicated region."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/MHSMGeoReplicationRegionProvisioningState",
+ "description": "Provisioning state of the geo replicated region."
+ },
+ "isPrimary": {
+ "type": "boolean",
+ "description": "A boolean value that indicates whether the region is the primary region or a secondary region."
+ }
+ },
+ "description": "A region that this managed HSM Pool has been extended to."
+ },
+ "MHSMNetworkRuleSet": {
+ "properties": {
+ "bypass": {
+ "type": "string",
+ "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "defaultAction": {
+ "type": "string",
+ "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleAction",
+ "modelAsString": true
+ }
+ },
+ "ipRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMIPRule"
+ },
+ "x-ms-identifiers": [
+ "value"
+ ],
+ "description": "The list of IP address rules."
+ },
+ "virtualNetworkRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMVirtualNetworkRule"
+ },
+ "description": "The list of virtual network rules."
+ }
+ },
+ "description": "A set of rules governing the network accessibility of a managed hsm pool.",
+ "type": "object"
+ },
+ "MHSMIPRule": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "A rule governing the accessibility of a managed HSM pool from a specific IP address or IP range.",
+ "type": "object"
+ },
+ "MHSMVirtualNetworkRule": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'."
+ }
+ },
+ "required": [
+ "id"
+ ],
+ "description": "A rule governing the accessibility of a managed hsm pool from a specific virtual network.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnectionItem": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Id of private endpoint connection."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ },
+ "properties": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Private endpoint connection properties."
+ }
+ },
+ "description": "Private endpoint connection item.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnection": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Resource properties."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedHsmResource"
+ }
+ ],
+ "description": "Private endpoint connection resource.",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnectionProperties": {
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/MHSMPrivateEndpoint",
+ "description": "Properties of the private endpoint object."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/MHSMPrivateLinkServiceConnectionState",
+ "description": "Approval state of the private link connection."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionProvisioningState",
+ "description": "Provisioning state of the private endpoint connection."
+ }
+ },
+ "description": "Properties of the private endpoint connection resource.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpoint": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Full identifier of the private endpoint resource."
+ }
+ },
+ "description": "Private endpoint object properties.",
+ "type": "object"
+ },
+ "MHSMPrivateLinkServiceConnectionState": {
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/MHSMPrivateEndpointServiceConnectionStatus",
+ "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner."
+ },
+ "description": {
+ "type": "string",
+ "description": "The reason for approval or rejection."
+ },
+ "actionsRequired": {
+ "type": "string",
+ "description": "A message indicating if changes on the service provider require any updates on the consumer.",
+ "enum": [
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ActionsRequired",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "An object that represents the approval state of the private link connection.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointServiceConnectionStatus": {
+ "type": "string",
+ "description": "The private endpoint connection status.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointServiceConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "MHSMPrivateEndpointConnectionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Failed",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "MHSMPrivateLinkResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Array of private link resources",
+ "items": {
+ "$ref": "#/definitions/MHSMPrivateLinkResource"
+ }
+ }
+ },
+ "description": "A list of private link resources",
+ "type": "object"
+ },
+ "MHSMPrivateLinkResource": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MHSMPrivateLinkResourceProperties",
+ "description": "Resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedHsmResource"
+ }
+ ],
+ "description": "A private link resource",
+ "type": "object"
+ },
+ "MHSMPrivateLinkResourceProperties": {
+ "properties": {
+ "groupId": {
+ "description": "Group identifier of private link resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "requiredMembers": {
+ "description": "Required member names of private link resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "requiredZoneNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Required DNS zone names of the the private link resource."
+ }
+ },
+ "description": "Properties of a private link resource.",
+ "type": "object"
+ },
+ "MHSMGeoReplicationRegionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Preprovisioning",
+ "Provisioning",
+ "Succeeded",
+ "Failed",
+ "Deleting",
+ "Cleanup"
+ ],
+ "x-ms-enum": {
+ "name": "GeoReplicationRegionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "CheckMhsmNameAvailabilityParameters": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The managed hsm name."
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "The parameters used to check the availability of the managed hsm name."
+ },
+ "CheckMhsmNameAvailabilityResult": {
+ "type": "object",
+ "properties": {
+ "nameAvailable": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "A boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used."
+ },
+ "reason": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The reason that a managed hsm name could not be used. The reason element is only returned if NameAvailable is false.",
+ "enum": [
+ "AccountNameInvalid",
+ "AlreadyExists"
+ ],
+ "x-ms-enum": {
+ "name": "Reason",
+ "modelAsString": true
+ }
+ },
+ "message": {
+ "readOnly": true,
+ "type": "string",
+ "description": "An error message explaining the Reason value in more detail."
+ }
+ },
+ "description": "The CheckMhsmNameAvailability operation response."
+ },
+ "ManagedHSMSecurityDomainProperties": {
+ "type": "object",
+ "properties": {
+ "activationStatus": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Activation Status",
+ "enum": [
+ "Active",
+ "NotActivated",
+ "Unknown",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "ActivationStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Active",
+ "description": "The managed HSM Pool is active."
+ },
+ {
+ "value": "NotActivated",
+ "description": "The managed HSM Pool is not yet activated."
+ },
+ {
+ "value": "Unknown",
+ "description": "An unknown error occurred while activating managed hsm."
+ },
+ {
+ "value": "Failed",
+ "description": "Failed to activate managed hsm."
+ }
+ ]
+ }
+ },
+ "activationStatusMessage": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Activation Status Message."
+ }
+ },
+ "description": "The security domain properties of the managed hsm."
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ },
+ "ManagedHsmResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the resource group that contains the managed HSM pool.",
+ "x-ms-parameter-location": "method"
+ },
+ "MHSMPrivateEndpointConnectionName": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the private endpoint connection associated with the managed hsm pool.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/providers.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/providers.json
new file mode 100644
index 000000000000..c41109238d7b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/providers.json
@@ -0,0 +1,288 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-01",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "paths": {
+ "/providers/Microsoft.KeyVault/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "Lists all of the available Key Vault Rest API operations.",
+ "operationId": "Operations_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Lists available Rest API operations.": {
+ "$ref": "./examples/listOperations.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "OperationListResult": {
+ "description": "Result of the request to list Storage operations. It contains a list of operations and a URL link to get the next set of results.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Operation"
+ },
+ "x-ms-identifiers": [],
+ "description": "List of Storage operations supported by the Storage resource provider."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of operations."
+ }
+ },
+ "type": "object"
+ },
+ "Operation": {
+ "description": "Key Vault REST API operation definition.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}",
+ "type": "string"
+ },
+ "display": {
+ "description": "Display metadata associated with the operation.",
+ "properties": {
+ "provider": {
+ "description": "Service provider: Microsoft Key Vault.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Resource on which the operation is performed etc.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Type of operation: get, read, delete, etc.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of operation.",
+ "type": "string"
+ }
+ }
+ },
+ "origin": {
+ "type": "string",
+ "description": "The origin of operations."
+ },
+ "properties": {
+ "description": "Properties of operation, include metric specifications.",
+ "x-ms-client-flatten": true,
+ "x-ms-client-name": "OperationProperties",
+ "$ref": "#/definitions/OperationProperties"
+ },
+ "isDataAction": {
+ "type": "boolean",
+ "description": "Property to specify whether the action is a data action."
+ }
+ }
+ },
+ "OperationProperties": {
+ "description": "Properties of operation, include metric specifications.",
+ "properties": {
+ "serviceSpecification": {
+ "$ref": "#/definitions/ServiceSpecification",
+ "description": "One property of operation, include metric specifications."
+ }
+ },
+ "type": "object"
+ },
+ "ServiceSpecification": {
+ "description": "One property of operation, include log specifications.",
+ "properties": {
+ "logSpecifications": {
+ "description": "Log specifications of operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LogSpecification"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "metricSpecifications": {
+ "description": "Metric specifications of operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetricSpecification"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "type": "object"
+ },
+ "LogSpecification": {
+ "description": "Log specification of operation.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of log specification."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Display name of log specification."
+ },
+ "blobDuration": {
+ "type": "string",
+ "description": "Blob duration of specification."
+ }
+ },
+ "type": "object"
+ },
+ "MetricSpecification": {
+ "description": "Metric specification of operation.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of metric specification."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Display name of metric specification."
+ },
+ "displayDescription": {
+ "type": "string",
+ "description": "Display description of metric specification."
+ },
+ "unit": {
+ "type": "string",
+ "description": "The metric unit. Possible values include: 'Bytes', 'Count', 'Milliseconds'."
+ },
+ "aggregationType": {
+ "type": "string",
+ "description": "The metric aggregation type. Possible values include: 'Average', 'Count', 'Total'."
+ },
+ "supportedAggregationTypes": {
+ "type": "array",
+ "description": "The supported aggregation types for the metrics.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "supportedTimeGrainTypes": {
+ "type": "array",
+ "description": "The supported time grain types for the metrics.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lockAggregationType": {
+ "type": "string",
+ "description": "The metric lock aggregation type."
+ },
+ "dimensions": {
+ "type": "array",
+ "description": "The dimensions of metric",
+ "items": {
+ "$ref": "#/definitions/DimensionProperties"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "fillGapWithZero": {
+ "type": "boolean",
+ "description": "Property to specify whether to fill gap with zero."
+ },
+ "internalMetricName": {
+ "type": "string",
+ "description": "The internal metric name."
+ }
+ },
+ "type": "object"
+ },
+ "DimensionProperties": {
+ "description": "Type of operation: get, read, delete, etc.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of dimension."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Display name of dimension."
+ },
+ "toBeExportedForShoebox": {
+ "type": "boolean",
+ "description": "Property to specify whether the dimension should be exported for Shoebox."
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/secrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/secrets.json
new file mode 100644
index 000000000000..ed2fdc267039
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2024-11-01/secrets.json
@@ -0,0 +1,491 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-11-01",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/secrets/{secretName}": {
+ "put": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_CreateOrUpdate",
+ "description": "Create or update a secret in a key vault in the specified subscription. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "name": "secretName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "Name of the secret. The value you provide may be copied globally for the purpose of running the service. The value provided should not include personally identifiable or sensitive information."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecretCreateOrUpdateParameters"
+ },
+ "description": "Parameters to create or update the secret"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created or updated vault",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "200": {
+ "description": "Created or updated secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a secret": {
+ "$ref": "./examples/createSecret.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "patch": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_Update",
+ "description": "Update a secret in the specified subscription. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "name": "secretName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "Name of the secret"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecretPatchParameters"
+ },
+ "description": "Parameters to patch the secret"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Patched secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "200": {
+ "description": "Patched secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a secret": {
+ "$ref": "./examples/updateSecret.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_Get",
+ "description": "Gets the specified secret. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "name": "secretName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the secret."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a secret": {
+ "$ref": "./examples/getSecret.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/secrets": {
+ "get": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_List",
+ "description": "The List operation gets information about the secrets in a vault. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about secrets in the specified vault.",
+ "schema": {
+ "$ref": "#/definitions/SecretListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List secrets in the vault": {
+ "$ref": "./examples/listSecrets.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "Attributes": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Determines whether the object is enabled."
+ },
+ "nbf": {
+ "x-ms-client-name": "NotBefore",
+ "type": "integer",
+ "format": "unixtime",
+ "description": "Not before date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "exp": {
+ "x-ms-client-name": "Expires",
+ "type": "integer",
+ "format": "unixtime",
+ "description": "Expiry date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "unixtime",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ }
+ },
+ "description": "The object attributes managed by the KeyVault service.",
+ "type": "object"
+ },
+ "SecretProperties": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "The value of the secret. NOTE: 'value' will never be returned from the service, as APIs using this model are is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets."
+ },
+ "contentType": {
+ "type": "string",
+ "description": "The content type of the secret."
+ },
+ "attributes": {
+ "$ref": "#/definitions/SecretAttributes",
+ "description": "The attributes of the secret."
+ },
+ "secretUri": {
+ "type": "string",
+ "description": "The URI to retrieve the current version of the secret.",
+ "readOnly": true
+ },
+ "secretUriWithVersion": {
+ "type": "string",
+ "description": "The URI to retrieve the specific version of the secret.",
+ "readOnly": true
+ }
+ },
+ "description": "Properties of the secret",
+ "type": "object"
+ },
+ "SecretPatchProperties": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "The value of the secret."
+ },
+ "contentType": {
+ "type": "string",
+ "description": "The content type of the secret."
+ },
+ "attributes": {
+ "$ref": "#/definitions/SecretAttributes",
+ "description": "The attributes of the secret."
+ }
+ },
+ "description": "Properties of the secret",
+ "type": "object"
+ },
+ "SecretAttributes": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Attributes"
+ }
+ ],
+ "description": "The secret management attributes.",
+ "type": "object"
+ },
+ "SecretCreateOrUpdateParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the secret. "
+ },
+ "properties": {
+ "$ref": "#/definitions/SecretProperties",
+ "description": "Properties of the secret"
+ }
+ },
+ "description": "Parameters for creating or updating a secret",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "SecretPatchParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the secret. "
+ },
+ "properties": {
+ "$ref": "#/definitions/SecretPatchProperties",
+ "description": "Properties of the secret"
+ }
+ },
+ "description": "Parameters for patching a secret",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "Secret": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SecretProperties",
+ "description": "Properties of the secret"
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "./keyvault.json#/definitions/Resource"
+ }
+ ],
+ "description": "Resource information with extended details.",
+ "type": "object"
+ },
+ "SecretListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Secret"
+ },
+ "description": "The list of secrets."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of secrets."
+ }
+ },
+ "description": "List of secrets",
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/readme.md b/specification/keyvault/resource-manager/readme.md
index fae54df7a2ee..492452774df3 100644
--- a/specification/keyvault/resource-manager/readme.md
+++ b/specification/keyvault/resource-manager/readme.md
@@ -26,7 +26,22 @@ These are the global settings for the KeyVault API.
``` yaml
openapi-type: arm
-tag: package-2023-07
+tag: package-2024-11-01
+```
+
+### Tag: package-2024-11-01
+
+These settings apply only when `--tag=package-2024-11-01` is specified on the command line.
+
+```yaml $(tag) == 'package-2024-11-01'
+input-file:
+ - Microsoft.KeyVault/stable/2024-11-01/common.json
+ - Microsoft.KeyVault/stable/2024-11-01/keys.json
+ - Microsoft.KeyVault/stable/2024-11-01/keysManagedHsm.json
+ - Microsoft.KeyVault/stable/2024-11-01/keyvault.json
+ - Microsoft.KeyVault/stable/2024-11-01/managedHsm.json
+ - Microsoft.KeyVault/stable/2024-11-01/providers.json
+ - Microsoft.KeyVault/stable/2024-11-01/secrets.json
```
### Tag: package-preview-2024-04
@@ -281,7 +296,7 @@ directive:
- R3026 # The 'PrivateEndpointConnection' and 'PrivateLinkResource' sub-resources don't define PATCH as per Network Team's specification.
- R3025 # The 'PrivateLinkResource' is only accessible via List operation; does not define GET as per Network Team's specification.
- R4015 # The 'MHSMPrivateEndpointConnection' sub-resource doesn't define List as per Network Team's specification.
- - R2005 # The 'ManagedHsms_PurgeDeleted' operation should not return a mix of 202 and syncronous return types (200, 201, 204) as directed by SDK team.
+ - R2005 # The 'ManagedHsms_PurgeDeleted' operation should not return a mix of 202 and synchronous return types (200, 201, 204) as directed by SDK team.
- R4009 # Vault object is the only one that need to be tracked with SystemData
- suppress: DefinitionsPropertiesNamesCamelCase
From 4ae5cdc221660762336d5a899495b2b4941ea486 Mon Sep 17 00:00:00 2001
From: Fernando Rauseo <73549810+FRL200@users.noreply.github.com>
Date: Mon, 13 Jan 2025 12:18:16 -0500
Subject: [PATCH 092/128] Release keyvault microsoft.key vault preview/2024 12
01 preview (#31796)
* Copy files from preview/2024-04-01-preview
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
* Update version to preview/2024-12-01-preview
Updated the API version from preview/2024-04-01-preview to preview/2024-12-01-preview.
* Added tag for 2024-12-01-preview in readme file
* Added Azure Managed HSM C SKUs to preview version (#31733)
* Update managedHsm.json
* Update managedHsm.json
* Changes to update default values and description and prettier ran (#31718)
Co-authored-by: Fernando Rauseo Landa
* Update readme
* misc fix
* update tag
* resolve ci issue
* fixed typos and override words
---------
Co-authored-by: Fernando Rauseo Landa
Co-authored-by: Daniel Cherrett <49488952+Cherrett@users.noreply.github.com>
Co-authored-by: Chenjie Shi
---
cSpell.json | 6 +
.../preview/2024-12-01-preview/common.json | 94 +
.../examples/DeletedManagedHsm_Get.json | 28 +
.../examples/DeletedManagedHsm_List.json | 47 +
.../examples/DeletedManagedHsm_Purge.json | 15 +
.../examples/ManagedHsm_CreateOrUpdate.json | 89 +
.../examples/ManagedHsm_Delete.json | 17 +
.../examples/ManagedHsm_Get.json | 39 +
.../ManagedHsm_ListByResourceGroup.json | 68 +
.../ManagedHsm_ListBySubscription.json | 67 +
...tPrivateEndpointConnectionsByResource.json | 51 +
.../ManagedHsm_ListRegionsByResource.json | 27 +
.../examples/ManagedHsm_Update.json | 78 +
.../ManagedHsm_checkMhsmNameAvailability.json | 16 +
...edHsm_deletePrivateEndpointConnection.json | 27 +
...nagedHsm_getPrivateEndpointConnection.json | 30 +
.../ManagedHsm_listPrivateLinkResources.json | 30 +
...nagedHsm_putPrivateEndpointConnection.json | 37 +
.../examples/checkVaultNameAvailability.json | 17 +
.../examples/createKey.json | 53 +
.../examples/createSecret.json | 50 +
.../examples/createVault.json | 273 ++
.../examples/createVaultWithNetworkAcls.json | 132 +
.../deletePrivateEndpointConnection.json | 28 +
.../examples/deleteVault.json | 16 +
.../examples/getDeletedVault.json | 26 +
.../2024-12-01-preview/examples/getKey.json | 48 +
.../examples/getKeyVersion.json | 49 +
...rityPerimeterAssociationConfiguration.json | 89 +
.../getPrivateEndpointConnection.json | 33 +
.../examples/getSecret.json | 28 +
.../2024-12-01-preview/examples/getVault.json | 93 +
.../examples/listDeletedVaults.json | 29 +
.../examples/listKeyVersions.json | 58 +
.../2024-12-01-preview/examples/listKeys.json | 55 +
...rityPerimeterAssociationConfiguration.json | 92 +
.../examples/listOperations.json | 332 +++
.../listPrivateEndpointConnection.json | 51 +
.../examples/listPrivateLinkResources.json | 30 +
.../examples/listSecrets.json | 46 +
.../examples/listVault.json | 24 +
.../examples/listVaultByResourceGroup.json | 98 +
.../examples/listVaultBySubscription.json | 97 +
.../examples/managedHsmCreateKey.json | 52 +
.../examples/managedHsmGetKey.json | 47 +
.../examples/managedHsmGetKeyVersion.json | 48 +
.../examples/managedHsmListKeyVersions.json | 56 +
.../examples/managedHsmListKeys.json | 53 +
.../examples/purgeDeletedVault.json | 18 +
.../putPrivateEndpointConnection.json | 39 +
.../examples/updateAccessPoliciesAdd.json | 82 +
.../examples/updateSecret.json | 50 +
.../examples/updateVault.json | 271 ++
.../preview/2024-12-01-preview/keys.json | 672 +++++
.../2024-12-01-preview/keysManagedHsm.json | 651 +++++
.../preview/2024-12-01-preview/keyvault.json | 2189 +++++++++++++++++
.../2024-12-01-preview/managedHsm.json | 1740 +++++++++++++
.../preview/2024-12-01-preview/providers.json | 288 +++
.../preview/2024-12-01-preview/secrets.json | 491 ++++
.../keyvault/resource-manager/readme.go.md | 2 +
.../keyvault/resource-manager/readme.md | 15 +
61 files changed, 9377 insertions(+)
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/common.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Get.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_List.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Purge.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_CreateOrUpdate.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Delete.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Get.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListByResourceGroup.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListBySubscription.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListRegionsByResource.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Update.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_checkMhsmNameAvailability.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_listPrivateLinkResources.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/checkVaultNameAvailability.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createSecret.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVaultWithNetworkAcls.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deletePrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deleteVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getDeletedVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKeyVersion.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getNetworkSecurityPerimeterAssociationConfiguration.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getSecret.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listDeletedVaults.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeyVersions.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeys.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listNetworkSecurityPerimeterAssociationConfiguration.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listOperations.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateLinkResources.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listSecrets.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultByResourceGroup.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultBySubscription.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmCreateKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKey.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKeyVersion.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeyVersions.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeys.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/purgeDeletedVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/putPrivateEndpointConnection.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateAccessPoliciesAdd.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateSecret.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateVault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keys.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keysManagedHsm.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keyvault.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/managedHsm.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/providers.json
create mode 100644 specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/secrets.json
diff --git a/cSpell.json b/cSpell.json
index d3b7119221a9..28b0332d4e25 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -414,6 +414,12 @@
"Regenerte"
]
},
+ {
+ "filename": "**/specification/keyvault/resource-manager/readme.go.md",
+ "words": [
+ "modelerfour"
+ ]
+ },
{
"filename": "**/specification/eventgrid/data-plane/Microsoft.Communication/stable/2018-01-01/AzureCommunicationServices.json",
"words": [
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/common.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/common.json
new file mode 100644
index 000000000000..e7afbdc1e7ce
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/common.json
@@ -0,0 +1,94 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "paths": {},
+ "definitions": {
+ "CloudError": {
+ "description": "An error response from Key Vault resource provider",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/CloudErrorBody"
+ }
+ },
+ "x-ms-external": true,
+ "type": "object"
+ },
+ "CloudErrorBody": {
+ "description": "An error response from Key Vault resource provider",
+ "properties": {
+ "code": {
+ "type": "string",
+ "description": "Error code. This is a mnemonic that can be consumed programmatically."
+ },
+ "message": {
+ "type": "string",
+ "description": "User friendly error message. The message is typically localized and may vary with service version."
+ }
+ },
+ "x-ms-external": true,
+ "type": "object"
+ },
+ "SystemData": {
+ "description": "Metadata pertaining to creation and last modification of the key vault resource.",
+ "readOnly": true,
+ "properties": {
+ "createdBy": {
+ "type": "string",
+ "description": "The identity that created the key vault resource."
+ },
+ "createdByType": {
+ "description": "The type of identity that created the key vault resource.",
+ "$ref": "#/definitions/IdentityType"
+ },
+ "createdAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp of the key vault resource creation (UTC)."
+ },
+ "lastModifiedBy": {
+ "type": "string",
+ "description": "The identity that last modified the key vault resource."
+ },
+ "lastModifiedByType": {
+ "description": "The type of identity that last modified the key vault resource.",
+ "$ref": "#/definitions/IdentityType"
+ },
+ "lastModifiedAt": {
+ "type": "string",
+ "format": "date-time",
+ "description": "The timestamp of the key vault resource last modification (UTC)."
+ }
+ },
+ "type": "object"
+ },
+ "IdentityType": {
+ "type": "string",
+ "description": "The type of identity.",
+ "enum": [
+ "User",
+ "Application",
+ "ManagedIdentity",
+ "Key"
+ ],
+ "x-ms-enum": {
+ "name": "identityType",
+ "modelAsString": true
+ }
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Get.json
new file mode 100644
index 000000000000..123cfe9914ab
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Get.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "name": "hsm1",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm1",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedManagedHSMs",
+ "properties": {
+ "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "location": "westus",
+ "deletionDate": "2021-04-01T00:00:59Z",
+ "scheduledPurgeDate": "2021-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true,
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_List.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_List.json
new file mode 100644
index 000000000000..11c1f89932d0
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_List.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm1",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedManagedHSMs",
+ "properties": {
+ "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "location": "westus",
+ "deletionDate": "2021-04-01T00:00:59Z",
+ "scheduledPurgeDate": "2021-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true,
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedManagedHSMs/hsm2",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedManagedHSMs",
+ "properties": {
+ "mhsmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2",
+ "location": "westus",
+ "deletionDate": "2021-04-01T00:00:59Z",
+ "scheduledPurgeDate": "2021-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true,
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/deletedManagedHSMs?api-version=2024-12-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Purge.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Purge.json
new file mode 100644
index 000000000000..bfe66622ad60
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/DeletedManagedHsm_Purge.json
@@ -0,0 +1,15 @@
+{
+ "parameters": {
+ "name": "hsm1",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_CreateOrUpdate.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_CreateOrUpdate.json
new file mode 100644
index 000000000000..429a4a8352aa
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_CreateOrUpdate.json
@@ -0,0 +1,89 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false
+ },
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ },
+ "responses": {
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ },
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": null,
+ "provisioningState": "Provisioning",
+ "statusMessage": "Allocating hardware"
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ },
+ "200": {
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Delete.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Delete.json
new file mode 100644
index 000000000000..2d4e85380bb0
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Delete.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {},
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Get.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Get.json
new file mode 100644
index 000000000000..e316a28eb43e
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Get.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListByResourceGroup.json
new file mode 100644
index 000000000000..dd3002d6c815
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListByResourceGroup.json
@@ -0,0 +1,68 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ },
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm2.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2",
+ "name": "hsm2",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs?api-version=2024-12-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListBySubscription.json
new file mode 100644
index 000000000000..8b1b8f0a1da6
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListBySubscription.json
@@ -0,0 +1,67 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood"
+ }
+ },
+ {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm2.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm2",
+ "name": "hsm2",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "production"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/managedHSMs?api-version=2024-12-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json
new file mode 100644
index 000000000000..2df09a55f6e4
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec1",
+ "name": "sample-pec1",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe1"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec2",
+ "name": "sample-pec2",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe2"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListRegionsByResource.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListRegionsByResource.json
new file mode 100644
index 000000000000..ed9b825bd8e0
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_ListRegionsByResource.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "sample-region1",
+ "provisioningState": "Succeeded",
+ "isPrimary": true
+ },
+ {
+ "name": "sample-region2",
+ "provisioningState": "Succeeded",
+ "isPrimary": false
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Update.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Update.json
new file mode 100644
index 000000000000..a9f791095ad6
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_Update.json
@@ -0,0 +1,78 @@
+{
+ "parameters": {
+ "resourceGroupName": "hsm-group",
+ "name": "hsm1",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood",
+ "Slice": "A"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Succeeded",
+ "statusMessage": "ManagedHsm is functional."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood",
+ "Slice": "A"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/managedHsmOperationResults/00000000-0000-0000-0000-000000000000"
+ },
+ "body": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "initialAdminObjectIds": [
+ "00000000-0000-0000-0000-000000000000"
+ ],
+ "enableSoftDelete": true,
+ "softDeleteRetentionInDays": 90,
+ "enablePurgeProtection": false,
+ "hsmUri": "https://westus.hsm1.managedhsm.azure.net",
+ "provisioningState": "Updating",
+ "statusMessage": "ManagedHsm is updating."
+ },
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/hsm-group/providers/Microsoft.KeyVault/managedHSMs/hsm1",
+ "name": "hsm1",
+ "type": "Microsoft.KeyVault/managedHSMs",
+ "location": "westus",
+ "sku": {
+ "family": "B",
+ "name": "Standard_B1"
+ },
+ "tags": {
+ "Dept": "hsm",
+ "Environment": "dogfood",
+ "Slice": "A"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_checkMhsmNameAvailability.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_checkMhsmNameAvailability.json
new file mode 100644
index 000000000000..6fb4aaee55d7
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_checkMhsmNameAvailability.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "mhsmName": {
+ "name": "sample-mhsm"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json
new file mode 100644
index 000000000000..b089ab676eb2
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_deletePrivateEndpointConnection.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Disconnected"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec?operationid=25334578"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json
new file mode 100644
index 000000000000..3f76662c6d05
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_getPrivateEndpointConnection.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_listPrivateLinkResources.json
new file mode 100644
index 000000000000..94b08930725c
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_listPrivateLinkResources.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateLinkResources/managedhsm",
+ "name": "managedhsm",
+ "type": "Microsoft.KeyVault/managedhsms/privateLinkResources",
+ "properties": {
+ "groupId": "managedhsms",
+ "requiredMembers": [
+ "default"
+ ],
+ "requiredZoneNames": [
+ "privatelink.managedhsm.azure.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json
new file mode 100644
index 000000000000..266de1a63ff2
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/ManagedHsm_putPrivateEndpointConnection.json
@@ -0,0 +1,37 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-mhsm",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-12-01-preview",
+ "properties": {
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this."
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedhsms/sample-mhsm/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/managedhsms/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this.",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/checkVaultNameAvailability.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/checkVaultNameAvailability.json
new file mode 100644
index 000000000000..43c23ffea80d
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/checkVaultNameAvailability.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "vaultName": {
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "nameAvailable": true
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createKey.json
new file mode 100644
index 000000000000..864ae4035f4c
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createKey.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "kty": "RSA"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createSecret.json
new file mode 100644
index 000000000000..4fee16ebdad8
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createSecret.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "secretName": "secret-name",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "value": "secret-value"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514938738,
+ "updated": 1514938738
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https:/sample-vault.vault.azure.net/secrets/secret-name/baf6de32c4774c7c81345f6476cf90a4"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514938738,
+ "updated": 1514938738
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https:/sample-vault.vault.azure.net/secrets/secret-name/baf6de32c4774c7c81345f6476cf90a4"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVault.json
new file mode 100644
index 000000000000..b23f4e16c40a
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVault.json
@@ -0,0 +1,273 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "bypass": "AzureServices",
+ "defaultAction": "Deny",
+ "ipRules": [
+ {
+ "value": ""
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "",
+ "ignoreMissingVnetServiceEndpoint": false
+ }
+ ]
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "privateEndpointConnections": [
+ {
+ "id": "",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": ""
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVaultWithNetworkAcls.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVaultWithNetworkAcls.json
new file mode 100644
index 000000000000..051f2ac62ca2
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/createVaultWithNetworkAcls.json
@@ -0,0 +1,132 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "networkAcls": {
+ "defaultAction": "Deny",
+ "bypass": "AzureServices",
+ "ipRules": [
+ {
+ "value": "124.56.78.91"
+ },
+ {
+ "value": "'10.91.4.0/24'"
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1"
+ }
+ ]
+ },
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "defaultAction": "Deny",
+ "bypass": "AzureServices",
+ "ipRules": [
+ {
+ "value": "124.56.78.91/32"
+ },
+ {
+ "value": "'10.91.4.0/24'"
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.network/virtualnetworks/test-vnet/subnets/subnet1"
+ }
+ ]
+ },
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "defaultAction": "Deny",
+ "bypass": "AzureServices",
+ "ipRules": [
+ {
+ "value": "124.56.78.91/32"
+ },
+ {
+ "value": "'10.91.4.0/24'"
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "/subscriptions/subid/resourcegroups/rg1/providers/microsoft.network/virtualnetworks/test-vnet/subnets/subnet1"
+ }
+ ]
+ },
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deletePrivateEndpointConnection.json
new file mode 100644
index 000000000000..a32f717c643e
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deletePrivateEndpointConnection.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "properties": {
+ "provisioningState": "Disconnected"
+ }
+ }
+ },
+ "202": {
+ "headers": {
+ "Retry-After": "60",
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578"
+ }
+ },
+ "204": {}
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deleteVault.json
new file mode 100644
index 000000000000..b29fd98d4011
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/deleteVault.json
@@ -0,0 +1,16 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ },
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getDeletedVault.json
new file mode 100644
index 000000000000..1fdd23d30ee8
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getDeletedVault.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "vaultName": "sample-vault",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {},
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedVaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "location": "westus",
+ "tags": {},
+ "deletionDate": "2017-01-01T00:00:59Z",
+ "scheduledPurgeDate": "2017-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKey.json
new file mode 100644
index 000000000000..49e00c0d9429
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKey.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKeyVersion.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKeyVersion.json
new file mode 100644
index 000000000000..2fc8998fe536
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getKeyVersion.json
@@ -0,0 +1,49 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "keyVersion": "fd618d9519b74f9aae94ade66b876acc",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/fd618d9519b74f9aae94ade66b876acc",
+ "name": "fd618d9519b74f9aae94ade66b876acc",
+ "type": "Microsoft.KeyVault/vaults/keys/versions",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getNetworkSecurityPerimeterAssociationConfiguration.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getNetworkSecurityPerimeterAssociationConfiguration.json
new file mode 100644
index 000000000000..1c6b7e989863
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getNetworkSecurityPerimeterAssociationConfiguration.json
@@ -0,0 +1,89 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2022-02-01-preview",
+ "associationProxy": "sample-association-name"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "0838c45c-28cb-4328-b120-8feb4a7e8699.sample-vault-eaa00d67-42fa-449a-a43f-0635227f6940",
+ "id": "/subscriptions/7331e83f-5157-4da5-bc69-75eac9c13958/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/networkSecurityPerimeterConfigurations/0838c45c-28cb-4328-b120-8feb4a7e8699.sample-vault-name-eaa00d67-42fa-449a-a43f-0635227f6940",
+ "type": "Microsoft.KeyVault/vaults/networkSecurityPerimeterConfigurations",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "networkSecurityPerimeter": {
+ "id": "/subscriptions/7331e83f-5157-4da5-bc69-75eac9c13958/resourcegroups/sample-group/providers/microsoft.network/networksecurityperimeters/sample-perimeter",
+ "perimeterGuid": "0838c45c-28cb-4328-b120-8feb4a7e8699",
+ "location": "centraluseuap"
+ },
+ "resourceAssociation": {
+ "name": "sample-vault-name-eaa00d67-42fa-449a-a43f-0635227f6940",
+ "accessMode": "Learning"
+ },
+ "profile": {
+ "name": "sample-profile",
+ "accessRulesVersion": 1,
+ "accessRules": [
+ {
+ "name": "ipRules",
+ "properties": {
+ "direction": "Inbound",
+ "addressPrefixes": [
+ "148.1.0.0/16"
+ ],
+ "fullyQualifiedDomainNames": [],
+ "subscriptions": [],
+ "networkSecurityPerimeters": []
+ }
+ },
+ {
+ "name": "subscriptionId",
+ "properties": {
+ "direction": "Inbound",
+ "addressPrefixes": [],
+ "fullyQualifiedDomainNames": [],
+ "subscriptions": [
+ {
+ "id": "/subscriptions/7331e83f-5157-4da5-bc69-75eac9c13958"
+ }
+ ],
+ "networkSecurityPerimeters": []
+ }
+ },
+ {
+ "name": "fqdn",
+ "properties": {
+ "direction": "Outbound",
+ "addressPrefixes": [],
+ "fullyQualifiedDomainNames": [
+ "www.contoso.com"
+ ],
+ "subscriptions": [],
+ "networkSecurityPerimeters": []
+ }
+ }
+ ],
+ "diagnosticSettingsVersion": 0,
+ "enabledLogCategories": [
+ "category1",
+ "category2"
+ ]
+ }
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getPrivateEndpointConnection.json
new file mode 100644
index 000000000000..e6b036be3940
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getPrivateEndpointConnection.json
@@ -0,0 +1,33 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ },
+ "204": {
+ "headers": {}
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getSecret.json
new file mode 100644
index 000000000000..cb4acf2047c8
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getSecret.json
@@ -0,0 +1,28 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "secretName": "secret-name",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514940950,
+ "updated": 1514940950
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/77445834f7de41bab81d0723bf996860"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getVault.json
new file mode 100644
index 000000000000..43456ac9da55
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/getVault.json
@@ -0,0 +1,93 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listDeletedVaults.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listDeletedVaults.json
new file mode 100644
index 000000000000..429a73150aa7
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listDeletedVaults.json
@@ -0,0 +1,29 @@
+{
+ "parameters": {
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/locations/westus/deletedVaults/sample-vault",
+ "name": "vault-agile-drawer-6404",
+ "type": "Microsoft.KeyVault/deletedVaults",
+ "properties": {
+ "vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "location": "westus",
+ "tags": {},
+ "deletionDate": "2017-01-01T00:00:59Z",
+ "scheduledPurgeDate": "2017-04-01T00:00:59Z",
+ "purgeProtectionEnabled": true
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.KeyVault/deletedVaults?api-version=2024-12-01-preview&%24skiptoken=HY3RaoMwAEX%2fRcbeYhJrnRXKYNWOuqpME0sfNcYui0Yxade19N8ne7hcDlzOvVuKX81eKKmt4G4dooLQwgqsL2NGHUDYV6o68Z4rY1e388RtNvRQn2vNJjEaMSgNvcbneMUcsKg8BFwft8DndQ0w9hu2QOiFLRs4TsNFNHzSMBFsGvTQGvuD%2f5bVuTOw4R03vPkH%2fVqNAlzm5SxfOwh7ACOA8POTlvPjILlaU1ke8jImOc23JCppQVfZnna0DXc4ISc3vSVuRo5zJE6%2bj25C3vwk2v2kEV2mMn7PyOc1DbtNGkonnzuLym1G400uI5QRZj0efw%3d%3d"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeyVersions.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeyVersions.json
new file mode 100644
index 000000000000..1594f7c46376
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeyVersions.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/c2296aa24acf4daf86942bff5aca73dd",
+ "name": "c2296aa24acf4daf86942bff5aca73dd",
+ "type": "Microsoft.KeyVault/vaults/keys/versions",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641074,
+ "updated": 1598641074,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/c2296aa24acf4daf86942bff5aca73dd"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name/versions/d5a04667b6f44b0ca62825f5eae93da6",
+ "name": "d5a04667b6f44b0ca62825f5eae93da6",
+ "type": "Microsoft.KeyVault/vaults/keys/versions",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641295,
+ "updated": 1598641295,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name/d5a04667b6f44b0ca62825f5eae93da6"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeys.json
new file mode 100644
index 000000000000..78333ef16956
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listKeys.json
@@ -0,0 +1,55 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-1",
+ "name": "sample-key-name-1",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493796,
+ "updated": 1596493796,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-1"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/keys/sample-key-name-2",
+ "name": "sample-key-name-2",
+ "type": "Microsoft.KeyVault/vaults/keys",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493797,
+ "updated": 1596493797,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-vault-name.vault.azure.net:443/keys/sample-key-name-2"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listNetworkSecurityPerimeterAssociationConfiguration.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listNetworkSecurityPerimeterAssociationConfiguration.json
new file mode 100644
index 000000000000..4805c1c90a90
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listNetworkSecurityPerimeterAssociationConfiguration.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault-name",
+ "keyName": "sample-key-name",
+ "api-version": "2022-02-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "0838c45c-28cb-4328-b120-8feb4a7e8699.sample-vault-eaa00d67-42fa-449a-a43f-0635227f6940",
+ "id": "/subscriptions/7331e83f-5157-4da5-bc69-75eac9c13958/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault-name/networkSecurityPerimeterConfigurations/0838c45c-28cb-4328-b120-8feb4a7e8699.sample-vault-name-eaa00d67-42fa-449a-a43f-0635227f6940",
+ "type": "Microsoft.KeyVault/vaults/networkSecurityPerimeterConfigurations",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "networkSecurityPerimeter": {
+ "id": "/subscriptions/7331e83f-5157-4da5-bc69-75eac9c13958/resourcegroups/sample-group/providers/microsoft.network/networksecurityperimeters/sample-perimeter",
+ "perimeterGuid": "0838c45c-28cb-4328-b120-8feb4a7e8699",
+ "location": "centraluseuap"
+ },
+ "resourceAssociation": {
+ "name": "sample-vault-name-eaa00d67-42fa-449a-a43f-0635227f6940",
+ "accessMode": "Learning"
+ },
+ "profile": {
+ "name": "sample-profile",
+ "accessRulesVersion": 1,
+ "accessRules": [
+ {
+ "name": "ipRules",
+ "properties": {
+ "direction": "Inbound",
+ "addressPrefixes": [
+ "148.1.0.0/16"
+ ],
+ "fullyQualifiedDomainNames": [],
+ "subscriptions": [],
+ "networkSecurityPerimeters": []
+ }
+ },
+ {
+ "name": "subscriptionId",
+ "properties": {
+ "direction": "Inbound",
+ "addressPrefixes": [],
+ "fullyQualifiedDomainNames": [],
+ "subscriptions": [
+ {
+ "id": "/subscriptions/7331e83f-5157-4da5-bc69-75eac9c13958"
+ }
+ ],
+ "networkSecurityPerimeters": []
+ }
+ },
+ {
+ "name": "fqdn",
+ "properties": {
+ "direction": "Outbound",
+ "addressPrefixes": [],
+ "fullyQualifiedDomainNames": [
+ "www.contoso.com"
+ ],
+ "subscriptions": [],
+ "networkSecurityPerimeters": []
+ }
+ }
+ ],
+ "diagnosticSettingsVersion": 0,
+ "enabledLogCategories": [
+ "category1",
+ "category2"
+ ]
+ }
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listOperations.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listOperations.json
new file mode 100644
index 000000000000..3701451a724d
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listOperations.json
@@ -0,0 +1,332 @@
+{
+ "parameters": {
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "Microsoft.KeyVault/vaults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "View Key Vault",
+ "description": "View the properties of a key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "Update Key Vault",
+ "description": "Create a new key vault or update the properties of an existing key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/delete",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "Delete Key Vault",
+ "description": "Delete a key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/deploy/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault",
+ "operation": "Use Vault for Azure Deployments",
+ "description": "Enables access to secrets in a key vault when deploying Azure resources"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/secrets/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Secret",
+ "operation": "View Secret Properties",
+ "description": "View the properties of a secret, but not its value"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/secrets/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Secret",
+ "operation": "Update Secret",
+ "description": "Create a new secret or update the value of an existing secret"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/vaults/accessPolicies/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Access Policy",
+ "operation": "Update Access Policy",
+ "description": "Update an existing access policy by merging or replacing, or add a new access policy to a vault."
+ },
+ "isDataAction": false
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/logDefinitions/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Log Definition",
+ "operation": "Read log definition",
+ "description": "Gets the available logs for a key vault"
+ },
+ "isDataAction": false,
+ "properties": {
+ "serviceSpecification": {
+ "logSpecifications": [
+ {
+ "name": "AuditEvent",
+ "displayName": "Audit Logs",
+ "blobDuration": "PT1H"
+ }
+ ],
+ "metricSpecifications": [
+ {
+ "name": "ServiceApiHit",
+ "displayName": "",
+ "displayDescription": "",
+ "unit": "",
+ "aggregationType": "",
+ "supportedAggregationTypes": [
+ ""
+ ],
+ "supportedTimeGrainTypes": [
+ ""
+ ],
+ "lockAggregationType": "",
+ "dimensions": [
+ {
+ "name": "ActivityType",
+ "displayName": "",
+ "toBeExportedForShoebox": true
+ },
+ {
+ "name": "ActivityName",
+ "displayName": "",
+ "toBeExportedForShoebox": true
+ }
+ ],
+ "fillGapWithZero": false,
+ "internalMetricName": "AuditEvent"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/diagnosticSettings/Read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Diagnostic Settings",
+ "operation": "Read diagnostic setting",
+ "description": "Gets the diagnostic setting for the resource"
+ },
+ "isDataAction": false
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/diagnosticSettings/Write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Diagnostic Settings",
+ "operation": "Write diagnostic setting",
+ "description": "Creates or updates the diagnostic setting for the resource"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/register/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Subscription",
+ "operation": "Register Subscription",
+ "description": "Registers a subscription"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/unregister/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Subscription",
+ "operation": "Unregister Subscription",
+ "description": "Unregisters a subscription"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/operations/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Operations",
+ "operation": "Available Key Vault Operations",
+ "description": "Lists operations available on Microsoft.KeyVault resource provider"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/checkNameAvailability/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Name Availability",
+ "operation": "Check Name Availability",
+ "description": "Checks that a key vault name is valid and is not in use"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/deletedVaults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Soft Deleted Key Vault",
+ "operation": "View Soft Deleted Vaults",
+ "description": "View the properties of soft deleted key vaults"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/locations/deletedVaults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Soft Deleted Key Vault",
+ "operation": "View Soft Deleted Key Vault",
+ "description": "View the properties of a soft deleted key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/locations/deletedVaults/purge/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Soft Deleted Key Vault",
+ "operation": "Purge Soft Deleted Key Vault",
+ "description": "Purge a soft deleted key vault"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/locations/operationResults/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Long Run Operation Result",
+ "operation": "Check Operation Result",
+ "description": "Check the result of a long run operation"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "View HSM pool",
+ "description": "View the properties of an HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "Create or Update HSM pool",
+ "description": "Create a new HSM pool of update the properties of an existing HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/delete",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "Delete HSM pool",
+ "description": "Delete an HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/hsmPools/joinVault/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "HSM pool",
+ "operation": "Join KeyVault to HSM pool",
+ "description": "Join a key vault to an HSM pool"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/managedHSMs/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Managed HSM",
+ "operation": "View Managed HSM",
+ "description": "View the properties of a Managed HSM"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/managedHSMs/write",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Managed HSM",
+ "operation": "Create or Update Managed HSM",
+ "description": "Create a new Managed HSM of update the properties of an existing Managed HSM"
+ },
+ "isDataAction": false
+ },
+ {
+ "name": "Microsoft.KeyVault/managedHSMs/delete",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Managed HSM",
+ "operation": "Delete Managed HSM",
+ "description": "Delete a Managed HSM"
+ },
+ "isDataAction": false
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/vaults/providers/Microsoft.Insights/metricDefinitions/read",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Key Vault Metric Definition",
+ "operation": "Read metric definition",
+ "description": "Gets the available metrics for a key vault"
+ },
+ "isDataAction": false,
+ "properties": {
+ "serviceSpecification": {}
+ }
+ },
+ {
+ "origin": "system",
+ "name": "Microsoft.KeyVault/locations/deleteVirtualNetworkOrSubnets/action",
+ "display": {
+ "provider": "Microsoft Key Vault",
+ "resource": "Location",
+ "operation": "Modify Network ACLs containing the deleted Vitual Network or Subnet ",
+ "description": "Notifies Microsoft.KeyVault that a virtual network or subnet is being deleted"
+ },
+ "isDataAction": false
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateEndpointConnection.json
new file mode 100644
index 000000000000..5ec3fe4b3938
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateEndpointConnection.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "This was automatically approved by user1234@contoso.com",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "nextLink": null
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateLinkResources.json
new file mode 100644
index 000000000000..aa38ea00fb5b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listPrivateLinkResources.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault",
+ "name": "vault",
+ "type": "Microsoft.KeyVault/vaults/privateLinkResources",
+ "properties": {
+ "groupId": "vault",
+ "requiredMembers": [
+ "default"
+ ],
+ "requiredZoneNames": [
+ "privatelink.vaultcore.azure.net"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listSecrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listSecrets.json
new file mode 100644
index 000000000000..d701be494735
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listSecrets.json
@@ -0,0 +1,46 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514941476,
+ "updated": 1514941476
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/40af42fbc10047f8a756a73211492f56"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name2",
+ "name": "secret-name2",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514941476,
+ "updated": 1514941476
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name2",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name2/cd7264a6f56c44d1b594423c80609aae"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVault.json
new file mode 100644
index 000000000000..3397baaa9f83
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVault.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "$filter": "resourceType eq 'Microsoft.KeyVault/vaults'",
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2015-11-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {}
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?%24filter=resourceType+eq+%27Microsoft.KeyVault%2fvaults%27&%24top=4&api-version=2015-11-01&%24skiptoken=eyJuZXh0UGFydGl0aW9uS2V5IjoiMSE4IVEwTTJNVGMtIiwibmV4dFJvd0tleSI6IjEhMTMyIU5rUTRSVEU1UXpJelFUWXdORGd4UmpoRlFrSXhNVGhFUXpNd01EZEROVVJmVkVkT1RDMU5TVU5TVDFOUFJsUTZNa1ZMUlZsV1FWVk1WRG95UmxaQlZVeFVVeTFUVTFKSExVcEpUVG95UkZSRlUxUTZNa1JXUVZWTVZDMVhSVk5VVlZNLSJ9"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultByResourceGroup.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultByResourceGroup.json
new file mode 100644
index 000000000000..0d81f0486b49
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultByResourceGroup.json
@@ -0,0 +1,98 @@
+{
+ "parameters": {
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "premium"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "enableSoftDelete": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net/",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults?api-version=2024-12-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultBySubscription.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultBySubscription.json
new file mode 100644
index 000000000000..051c1bd883ab
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/listVaultBySubscription.json
@@ -0,0 +1,97 @@
+{
+ "parameters": {
+ "$top": 1,
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "premium"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "enableSoftDelete": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net/",
+ "provisioningState": "Succeeded"
+ }
+ }
+ ],
+ "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resources?api-version=22024-12-01-preview&$skiptoken=dmF1bHQtcGVza3ktanVyeS03MzA3Ng=="
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmCreateKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmCreateKey.json
new file mode 100644
index 000000000000..e9c2f53885b7
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmCreateKey.json
@@ -0,0 +1,52 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "kty": "RSA"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKey.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKey.json
new file mode 100644
index 000000000000..16cb0fab51b6
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKey.json
@@ -0,0 +1,47 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name",
+ "name": "sample-key-name",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKeyVersion.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKeyVersion.json
new file mode 100644
index 000000000000..178e810ee0b3
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmGetKeyVersion.json
@@ -0,0 +1,48 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "keyVersion": "fd618d9519b74f9aae94ade66b876acc",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name/versions/fd618d9519b74f9aae94ade66b876acc",
+ "name": "fd618d9519b74f9aae94ade66b876acc",
+ "type": "Microsoft.KeyVault/managedHSMs/keys/versions",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598533051,
+ "updated": 1598533051,
+ "recoveryLevel": "Purgeable"
+ },
+ "kty": "RSA",
+ "keyOps": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey"
+ ],
+ "keySize": 2048,
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/fd618d9519b74f9aae94ade66b876acc"
+ }
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeyVersions.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeyVersions.json
new file mode 100644
index 000000000000..3740c00161f2
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeyVersions.json
@@ -0,0 +1,56 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "keyName": "sample-key-name",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name/versions/c2296aa24acf4daf86942bff5aca73dd",
+ "name": "c2296aa24acf4daf86942bff5aca73dd",
+ "type": "Microsoft.KeyVault/managedHSMs/keys/versions",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641074,
+ "updated": 1598641074,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/c2296aa24acf4daf86942bff5aca73dd"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name/versions/d5a04667b6f44b0ca62825f5eae93da6",
+ "name": "d5a04667b6f44b0ca62825f5eae93da6",
+ "type": "Microsoft.KeyVault/managedHSMs/keys/versions",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1598641295,
+ "updated": 1598641295,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name",
+ "keyUriWithVersion": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name/d5a04667b6f44b0ca62825f5eae93da6"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeys.json
new file mode 100644
index 000000000000..12563bb9a3dc
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/managedHsmListKeys.json
@@ -0,0 +1,53 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "name": "sample-managedhsm-name",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name-1",
+ "name": "sample-key-name-1",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493796,
+ "updated": 1596493796,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name-1"
+ }
+ },
+ {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/managedHSMs/sample-managedhsm-name/keys/sample-key-name-2",
+ "name": "sample-key-name-2",
+ "type": "Microsoft.KeyVault/managedHSMs/keys",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1596493797,
+ "updated": 1596493797,
+ "recoveryLevel": "Purgeable"
+ },
+ "keyUri": "https://sample-managedhsm-name.managedhsm.azure.net:443/keys/sample-key-name-2"
+ }
+ }
+ ]
+ }
+ },
+ "default": {
+ "headers": {},
+ "body": {
+ "error": {
+ "code": "",
+ "message": ""
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/purgeDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/purgeDeletedVault.json
new file mode 100644
index 000000000000..5847a823586b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/purgeDeletedVault.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "vaultName": "sample-vault",
+ "location": "westus",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview"
+ },
+ "responses": {
+ "200": {
+ "headers": {}
+ },
+ "202": {
+ "headers": {
+ "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/kv-group/providers/Microsoft.KeyVault/vaults/vault1?api-version=2024-12-01-preview"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/putPrivateEndpointConnection.json
new file mode 100644
index 000000000000..8a6df99bb1ce
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/putPrivateEndpointConnection.json
@@ -0,0 +1,39 @@
+{
+ "parameters": {
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "privateEndpointConnectionName": "sample-pec",
+ "api-version": "2024-12-01-preview",
+ "properties": {
+ "etag": "",
+ "properties": {
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this."
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec",
+ "name": "sample-pec",
+ "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
+ "etag": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe"
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "description": "My name is Joe and I'm approving this.",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateAccessPoliciesAdd.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateAccessPoliciesAdd.json
new file mode 100644
index 000000000000..6e76588d4a04
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateAccessPoliciesAdd.json
@@ -0,0 +1,82 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "operationKind": "add",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt"
+ ],
+ "secrets": [
+ "get"
+ ],
+ "certificates": [
+ "get"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/accessPolicies/",
+ "type": "Microsoft.KeyVault/vaults/accessPolicies",
+ "properties": {
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt"
+ ],
+ "secrets": [
+ "get"
+ ],
+ "certificates": [
+ "get"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/accessPolicies/",
+ "type": "Microsoft.KeyVault/vaults/accessPolicies",
+ "properties": {
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt"
+ ],
+ "secrets": [
+ "get"
+ ],
+ "certificates": [
+ "get"
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateSecret.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateSecret.json
new file mode 100644
index 000000000000..77ff08c0b91b
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateSecret.json
@@ -0,0 +1,50 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-group",
+ "vaultName": "sample-vault",
+ "secretName": "secret-name",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "value": "secret-value2"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514940684,
+ "updated": 1514940698
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/b8c802f549764f2d97885d152f92ee9d"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/secrets/secret-name",
+ "name": "secret-name",
+ "type": "Microsoft.KeyVault/vaults/secrets",
+ "location": "westus",
+ "properties": {
+ "attributes": {
+ "enabled": true,
+ "created": 1514940684,
+ "updated": 1514940698
+ },
+ "secretUri": "https://sample-vault.vault.azure.net/secrets/secret-name",
+ "secretUriWithVersion": "https://sample-vault.vault.azure.net/secrets/secret-name/b8c802f549764f2d97885d152f92ee9d"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateVault.json
new file mode 100644
index 000000000000..8b926b6a191e
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/examples/updateVault.json
@@ -0,0 +1,271 @@
+{
+ "parameters": {
+ "resourceGroupName": "sample-resource-group",
+ "vaultName": "sample-vault",
+ "subscriptionId": "00000000-0000-0000-0000-000000000000",
+ "api-version": "2024-12-01-preview",
+ "parameters": {
+ "properties": {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "networkAcls": {
+ "bypass": "AzureServices",
+ "defaultAction": "Deny",
+ "ipRules": [
+ {
+ "value": ""
+ }
+ ],
+ "virtualNetworkRules": [
+ {
+ "id": "",
+ "ignoreMissingVnetServiceEndpoint": false
+ }
+ ]
+ },
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "privateEndpointConnections": [
+ {
+ "id": "",
+ "properties": {
+ "provisioningState": "Succeeded",
+ "privateEndpoint": {
+ "id": ""
+ },
+ "privateLinkServiceConnectionState": {
+ "status": "Approved",
+ "actionsRequired": "None"
+ }
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault",
+ "name": "sample-vault",
+ "type": "Microsoft.KeyVault/vaults",
+ "location": "westus",
+ "tags": {},
+ "systemData": {
+ "createdBy": "keyVaultUser1",
+ "createdByType": "User",
+ "createdAt": "2020-01-01T12:00:00.0000000Z",
+ "lastModifiedBy": "keyVaultUser2",
+ "lastModifiedByType": "User",
+ "lastModifiedAt": "2020-01-01T12:00:00.0000000Z"
+ },
+ "properties": {
+ "sku": {
+ "family": "A",
+ "name": "standard"
+ },
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "accessPolicies": [
+ {
+ "tenantId": "00000000-0000-0000-0000-000000000000",
+ "objectId": "00000000-0000-0000-0000-000000000000",
+ "permissions": {
+ "keys": [
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "secrets": [
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "certificates": [
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge"
+ ]
+ }
+ }
+ ],
+ "enabledForDeployment": true,
+ "enabledForDiskEncryption": true,
+ "enabledForTemplateDeployment": true,
+ "hsmPoolResourceId": "00000000-0000-0000-0000-000000000000",
+ "vaultUri": "https://sample-vault.vault.azure.net",
+ "provisioningState": "Succeeded",
+ "publicNetworkAccess": "Enabled"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keys.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keys.json
new file mode 100644
index 000000000000..099e920efc8d
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keys.json
@@ -0,0 +1,672 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}": {
+ "put": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_CreateIfNotExist",
+ "description": "Creates the first version of a new key if it does not exist. If it already exists, then the existing key is returned without any write operations being performed. This API does not create subsequent versions, and does not update existing keys.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the key vault which contains the key to be created."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key to be created. The value you provide may be copied globally for the purpose of running the service. The value provided should not include personally identifiable or sensitive information."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/KeyCreateParameters"
+ },
+ "description": "The parameters used to create the specified key."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The created key.",
+ "schema": {
+ "$ref": "#/definitions/Key"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a key": {
+ "$ref": "./examples/createKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_Get",
+ "description": "Gets the current version of the specified key from the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the key to be retrieved."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key.",
+ "schema": {
+ "$ref": "#/definitions/Key"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key": {
+ "$ref": "./examples/getKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys": {
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_List",
+ "description": "Lists the keys in the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the keys to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of keys.",
+ "schema": {
+ "$ref": "#/definitions/KeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List keys in the vault": {
+ "$ref": "./examples/listKeys.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions/{keyVersion}": {
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_GetVersion",
+ "description": "Gets the specified version of the specified key in the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the key version to be retrieved."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key version to be retrieved."
+ },
+ {
+ "name": "keyVersion",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-fA-F0-9]{32}$",
+ "description": "The version of the key to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key version.",
+ "schema": {
+ "$ref": "#/definitions/Key"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key version": {
+ "$ref": "./examples/getKeyVersion.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/keys/{keyName}/versions": {
+ "get": {
+ "tags": [
+ "Keys"
+ ],
+ "operationId": "Keys_ListVersions",
+ "description": "Lists the versions of the specified key in the specified key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the resource group which contains the specified key vault."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the vault which contains the key versions to be retrieved."
+ },
+ {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key versions to be retrieved."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of key versions.",
+ "schema": {
+ "$ref": "#/definitions/KeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List key versions in the vault": {
+ "$ref": "./examples/listKeyVersions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "KeyProperties": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/KeyAttributes",
+ "description": "The attributes of the key."
+ },
+ "kty": {
+ "type": "string",
+ "minLength": 1,
+ "description": "The type of the key. For valid values, see JsonWebKeyType.",
+ "enum": [
+ "EC",
+ "EC-HSM",
+ "RSA",
+ "RSA-HSM"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyType",
+ "modelAsString": true
+ }
+ },
+ "keyOps": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The permitted JSON web key operations of the key. For more information, see JsonWebKeyOperation.",
+ "enum": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey",
+ "import",
+ "release"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyOperation",
+ "modelAsString": true
+ }
+ }
+ },
+ "keySize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA. Default for RSA and RSA-HSM keys is 2048. Exception made for bring your own key (BYOK), key exchange keys default to 4096."
+ },
+ "curveName": {
+ "type": "string",
+ "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName. Default for EC and EC-HSM keys is P-256",
+ "enum": [
+ "P-256",
+ "P-384",
+ "P-521",
+ "P-256K"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyCurveName",
+ "modelAsString": true
+ }
+ },
+ "keyUri": {
+ "type": "string",
+ "description": "The URI to retrieve the current version of the key.",
+ "readOnly": true
+ },
+ "keyUriWithVersion": {
+ "type": "string",
+ "description": "The URI to retrieve the specific version of the key.",
+ "readOnly": true
+ },
+ "rotationPolicy": {
+ "$ref": "#/definitions/RotationPolicy",
+ "description": "Key rotation policy in response. It will be used for both output and input. Omitted if empty"
+ },
+ "release_policy": {
+ "$ref": "#/definitions/KeyReleasePolicy",
+ "description": "Key release policy in response. It will be used for both output and input. Omitted if empty"
+ }
+ },
+ "description": "The properties of the key.",
+ "type": "object"
+ },
+ "KeyAttributes": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Determines whether or not the object is enabled."
+ },
+ "nbf": {
+ "x-ms-client-name": "NotBefore",
+ "type": "integer",
+ "format": "int64",
+ "description": "Not before date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "exp": {
+ "x-ms-client-name": "Expires",
+ "type": "integer",
+ "format": "int64",
+ "description": "Expiry date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "recoveryLevel": {
+ "type": "string",
+ "description": "The deletion recovery level currently in effect for the object. If it contains 'Purgeable', then the object can be permanently deleted by a privileged user; otherwise, only the system can purge the object at the end of the retention interval.",
+ "enum": [
+ "Purgeable",
+ "Recoverable+Purgeable",
+ "Recoverable",
+ "Recoverable+ProtectedSubscription"
+ ],
+ "x-ms-enum": {
+ "name": "DeletionRecoveryLevel",
+ "modelAsString": true
+ },
+ "readOnly": true,
+ "x-nullable": false
+ },
+ "exportable": {
+ "type": "boolean",
+ "description": "Indicates if the private key can be exported.",
+ "default": false
+ }
+ },
+ "description": "The object attributes managed by the Azure Key Vault service.",
+ "type": "object"
+ },
+ "KeyCreateParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key."
+ },
+ "properties": {
+ "$ref": "#/definitions/KeyProperties",
+ "description": "The properties of the key to be created."
+ }
+ },
+ "description": "The parameters used to create a key.",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "Key": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/KeyProperties",
+ "description": "The properties of the key."
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "./keyvault.json#/definitions/Resource"
+ }
+ ],
+ "description": "The key resource.",
+ "type": "object"
+ },
+ "KeyListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Key"
+ },
+ "description": "The key resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next page of keys."
+ }
+ },
+ "description": "The page of keys.",
+ "type": "object"
+ },
+ "RotationPolicy": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/KeyRotationPolicyAttributes",
+ "description": "The attributes of key rotation policy."
+ },
+ "lifetimeActions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifetimeAction"
+ },
+ "x-ms-identifiers": [],
+ "description": "The lifetimeActions for key rotation action."
+ }
+ },
+ "type": "object"
+ },
+ "KeyRotationPolicyAttributes": {
+ "properties": {
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "expiryTime": {
+ "type": "string",
+ "description": "The expiration time for the new key version. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "LifetimeAction": {
+ "properties": {
+ "trigger": {
+ "$ref": "#/definitions/Trigger",
+ "description": "The trigger of key rotation policy lifetimeAction."
+ },
+ "action": {
+ "$ref": "#/definitions/Action",
+ "description": "The action of key rotation policy lifetimeAction."
+ }
+ },
+ "type": "object"
+ },
+ "Trigger": {
+ "properties": {
+ "timeAfterCreate": {
+ "type": "string",
+ "description": "The time duration after key creation to rotate the key. It only applies to rotate. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ },
+ "timeBeforeExpiry": {
+ "type": "string",
+ "description": "The time duration before key expiring to rotate or notify. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "Action": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of action.",
+ "enum": [
+ "rotate",
+ "notify"
+ ],
+ "x-ms-enum": {
+ "name": "KeyRotationPolicyActionType",
+ "modelAsString": false
+ }
+ }
+ },
+ "type": "object"
+ },
+ "KeyReleasePolicy": {
+ "properties": {
+ "contentType": {
+ "description": "Content type and version of key release policy",
+ "type": "string",
+ "default": "application/json; charset=utf-8"
+ },
+ "data": {
+ "description": "Blob encoding the policy rules under which the key can be released.",
+ "type": "string",
+ "format": "base64url"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keysManagedHsm.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keysManagedHsm.json
new file mode 100644
index 000000000000..aa375c2f7223
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keysManagedHsm.json
@@ -0,0 +1,651 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}": {
+ "put": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_CreateIfNotExist",
+ "description": "Creates the first version of a new key if it does not exist. If it already exists, then the existing key is returned without any write operations being performed. This API does not create subsequent versions, and does not update existing keys.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKeyCreateParameters"
+ },
+ "description": "The parameters used to create the specified key."
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The created key.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a key": {
+ "$ref": "./examples/managedHsmCreateKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_Get",
+ "description": "Gets the current version of the specified key from the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key": {
+ "$ref": "./examples/managedHsmGetKey.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys": {
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_List",
+ "description": "Lists the keys in the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of keys.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List keys in the managed HSM": {
+ "$ref": "./examples/managedHsmListKeys.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}/versions/{keyVersion}": {
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_GetVersion",
+ "description": "Gets the specified version of the specified key in the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyVersion"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved key version.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a key version": {
+ "$ref": "./examples/managedHsmGetKeyVersion.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/keys/{keyName}/versions": {
+ "get": {
+ "tags": [
+ "ManagedHsmKeys"
+ ],
+ "operationId": "ManagedHsmKeys_ListVersions",
+ "description": "Lists the versions of the specified key in the specified managed HSM.",
+ "parameters": [
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMName"
+ },
+ {
+ "$ref": "#/parameters/ManagedHSMKeyName"
+ },
+ {
+ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The retrieved page of key versions.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmKeyListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List key versions in the managed HSM": {
+ "$ref": "./examples/managedHsmListKeyVersions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "ManagedHsmKeyProperties": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/ManagedHsmKeyAttributes",
+ "description": "The attributes of the key."
+ },
+ "kty": {
+ "type": "string",
+ "minLength": 1,
+ "description": "The type of the key. For valid values, see JsonWebKeyType.",
+ "enum": [
+ "EC",
+ "EC-HSM",
+ "RSA",
+ "RSA-HSM"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyType",
+ "modelAsString": true
+ }
+ },
+ "keyOps": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "description": "The permitted JSON web key operations of the key. For more information, see JsonWebKeyOperation.",
+ "enum": [
+ "encrypt",
+ "decrypt",
+ "sign",
+ "verify",
+ "wrapKey",
+ "unwrapKey",
+ "import",
+ "release"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyOperation",
+ "modelAsString": true
+ }
+ }
+ },
+ "keySize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA. Default for RSA and RSA-HSM keys is 2048. Exception made for bring your own key (BYOK), key exchange keys default to 4096."
+ },
+ "curveName": {
+ "type": "string",
+ "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName. Default for EC and EC-HSM keys is P-256",
+ "enum": [
+ "P-256",
+ "P-384",
+ "P-521",
+ "P-256K"
+ ],
+ "x-ms-enum": {
+ "name": "JsonWebKeyCurveName",
+ "modelAsString": true
+ }
+ },
+ "keyUri": {
+ "type": "string",
+ "description": "The URI to retrieve the current version of the key.",
+ "readOnly": true
+ },
+ "keyUriWithVersion": {
+ "type": "string",
+ "description": "The URI to retrieve the specific version of the key.",
+ "readOnly": true
+ },
+ "rotationPolicy": {
+ "$ref": "#/definitions/ManagedHsmRotationPolicy",
+ "description": "Key rotation policy in response. It will be used for both output and input. Omitted if empty"
+ },
+ "release_policy": {
+ "$ref": "#/definitions/ManagedHsmKeyReleasePolicy",
+ "description": "Key release policy in response. It will be used for both output and input. Omitted if empty"
+ }
+ },
+ "description": "The properties of the key.",
+ "type": "object"
+ },
+ "ManagedHsmKeyAttributes": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Determines whether or not the object is enabled."
+ },
+ "nbf": {
+ "x-ms-client-name": "NotBefore",
+ "type": "integer",
+ "format": "int64",
+ "description": "Not before date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "exp": {
+ "x-ms-client-name": "Expires",
+ "type": "integer",
+ "format": "int64",
+ "description": "Expiry date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "recoveryLevel": {
+ "type": "string",
+ "description": "The deletion recovery level currently in effect for the object. If it contains 'Purgeable', then the object can be permanently deleted by a privileged user; otherwise, only the system can purge the object at the end of the retention interval.",
+ "enum": [
+ "Purgeable",
+ "Recoverable+Purgeable",
+ "Recoverable",
+ "Recoverable+ProtectedSubscription"
+ ],
+ "x-ms-enum": {
+ "name": "DeletionRecoveryLevel",
+ "modelAsString": true
+ },
+ "readOnly": true,
+ "x-nullable": false
+ },
+ "exportable": {
+ "type": "boolean",
+ "description": "Indicates if the private key can be exported."
+ }
+ },
+ "description": "The object attributes managed by the Azure Key Vault service.",
+ "type": "object"
+ },
+ "ManagedHsmKeyCreateParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key."
+ },
+ "properties": {
+ "$ref": "#/definitions/ManagedHsmKeyProperties",
+ "description": "The properties of the key to be created."
+ }
+ },
+ "description": "The parameters used to create a key.",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "ManagedHsmKey": {
+ "properties": {
+ "properties": {
+ "x-ms-client-flatten": true,
+ "$ref": "#/definitions/ManagedHsmKeyProperties",
+ "description": "The properties of the key."
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "#/definitions/ProxyResourceWithoutSystemData"
+ }
+ ],
+ "description": "The key resource.",
+ "type": "object"
+ },
+ "ManagedHsmKeyListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedHsmKey"
+ },
+ "description": "The key resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next page of keys."
+ }
+ },
+ "description": "The page of keys.",
+ "type": "object"
+ },
+ "ManagedHsmRotationPolicy": {
+ "properties": {
+ "attributes": {
+ "$ref": "#/definitions/ManagedHsmKeyRotationPolicyAttributes",
+ "description": "The attributes of key rotation policy."
+ },
+ "lifetimeActions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedHsmLifetimeAction"
+ },
+ "x-ms-identifiers": [],
+ "description": "The lifetimeActions for key rotation action."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmKeyRotationPolicyAttributes": {
+ "properties": {
+ "created": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "int64",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "expiryTime": {
+ "type": "string",
+ "description": "The expiration time for the new key version. It should be in ISO8601 format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmLifetimeAction": {
+ "properties": {
+ "trigger": {
+ "$ref": "#/definitions/ManagedHsmTrigger",
+ "description": "The trigger of key rotation policy lifetimeAction."
+ },
+ "action": {
+ "$ref": "#/definitions/ManagedHsmAction",
+ "description": "The action of key rotation policy lifetimeAction."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmTrigger": {
+ "properties": {
+ "timeAfterCreate": {
+ "type": "string",
+ "description": "The time duration after key creation to rotate the key. It only applies to rotate. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ },
+ "timeBeforeExpiry": {
+ "type": "string",
+ "description": "The time duration before key expiring to rotate or notify. It will be in ISO 8601 duration format. Eg: 'P90D', 'P1Y'."
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmAction": {
+ "properties": {
+ "type": {
+ "type": "string",
+ "description": "The type of action.",
+ "enum": [
+ "rotate",
+ "notify"
+ ],
+ "x-ms-enum": {
+ "name": "KeyRotationPolicyActionType",
+ "modelAsString": false
+ }
+ }
+ },
+ "type": "object"
+ },
+ "ManagedHsmKeyReleasePolicy": {
+ "properties": {
+ "contentType": {
+ "description": "Content type and version of key release policy",
+ "type": "string",
+ "default": "application/json; charset=utf-8"
+ },
+ "data": {
+ "description": "Blob encoding the policy rules under which the key can be released.",
+ "type": "string",
+ "format": "base64url"
+ }
+ },
+ "type": "object"
+ },
+ "ProxyResourceWithoutSystemData": {
+ "title": "Resource",
+ "description": "Common fields that are returned in the response for all Azure Resource Manager resources",
+ "type": "object",
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the resource"
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\""
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "x-ms-mutability": [
+ "read",
+ "create",
+ "update"
+ ],
+ "description": "Resource tags."
+ }
+ },
+ "x-ms-azure-resource": true
+ }
+ },
+ "parameters": {
+ "ManagedHSMName": {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Managed HSM Pool within the specified resource group.",
+ "pattern": "^[A-Za-z]([A-Za-z0-9]|\\-[A-Za-z0-9])+$",
+ "maxLength": 24,
+ "minLength": 3,
+ "x-ms-parameter-location": "method"
+ },
+ "ManagedHSMKeyName": {
+ "name": "keyName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "The name of the key to be created. The value you provide may be copied globally for the purpose of running the service. The value provided should not include personally identifiable or sensitive information.",
+ "x-ms-parameter-location": "method"
+ },
+ "ManagedHSMKeyVersion": {
+ "name": "keyVersion",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-fA-F0-9]{32}$",
+ "description": "The version of the key to be retrieved.",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keyvault.json
new file mode 100644
index 000000000000..bf299157a901
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/keyvault.json
@@ -0,0 +1,2189 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}": {
+ "put": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_CreateOrUpdate",
+ "x-ms-long-running-operation": true,
+ "description": "Create or update a key vault in the specified subscription.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the server belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultCreateOrUpdateParameters"
+ },
+ "description": "Parameters to create or update the vault"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created or updated vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "200": {
+ "description": "Created or updated vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a new vault or update an existing vault": {
+ "$ref": "./examples/createVault.json"
+ },
+ "Create or update a vault with network acls": {
+ "$ref": "./examples/createVaultWithNetworkAcls.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "patch": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_Update",
+ "description": "Update a key vault in the specified subscription.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the server belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultPatchParameters"
+ },
+ "description": "Parameters to patch the vault"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Patched vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "200": {
+ "description": "Patched vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update an existing vault": {
+ "$ref": "./examples/updateVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "delete": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_Delete",
+ "description": "Deletes the specified Azure key vault.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault to delete"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK Response."
+ },
+ "204": {
+ "description": "No Content."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a vault": {
+ "$ref": "./examples/deleteVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_Get",
+ "description": "Gets the specified Azure key vault.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved vault",
+ "schema": {
+ "$ref": "#/definitions/Vault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a vault": {
+ "$ref": "./examples/getVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/accessPolicies/{operationKind}": {
+ "put": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_UpdateAccessPolicy",
+ "description": "Update access policies in a key vault in the specified subscription.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "name": "operationKind",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "add",
+ "replace",
+ "remove"
+ ],
+ "x-ms-enum": {
+ "name": "AccessPolicyUpdateKind",
+ "modelAsString": false
+ },
+ "description": "Name of the operation"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultAccessPolicyParameters"
+ },
+ "description": "Access policy to merge into the vault"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "The updated access policies",
+ "schema": {
+ "$ref": "#/definitions/VaultAccessPolicyParameters"
+ }
+ },
+ "200": {
+ "description": "The updated access policies",
+ "schema": {
+ "$ref": "#/definitions/VaultAccessPolicyParameters"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Add an access policy, or update an access policy with new permissions": {
+ "$ref": "./examples/updateAccessPoliciesAdd.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_ListByResourceGroup",
+ "description": "The List operation gets information about the vaults associated with the subscription and within the specified resource group.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all key vaults in the specified resource group.",
+ "schema": {
+ "$ref": "#/definitions/VaultListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List vaults in the specified resource group": {
+ "$ref": "./examples/listVaultByResourceGroup.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/vaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_ListBySubscription",
+ "description": "The List operation gets information about the vaults associated with the subscription.",
+ "parameters": [
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all key vaults in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/VaultListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List vaults in the specified subscription": {
+ "$ref": "./examples/listVaultBySubscription.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/deletedVaults": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_ListDeleted",
+ "description": "Gets information about the deleted vaults in a subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about all deleted key vaults in a subscription.",
+ "schema": {
+ "$ref": "#/definitions/DeletedVaultListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List deleted vaults in the specified subscription": {
+ "$ref": "./examples/listDeletedVaults.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedVaults/{vaultName}": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_GetDeleted",
+ "description": "Gets the deleted Azure key vault.",
+ "parameters": [
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the deleted vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about the deleted vault.",
+ "schema": {
+ "$ref": "#/definitions/DeletedVault"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a deleted vault": {
+ "$ref": "./examples/getDeletedVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedVaults/{vaultName}/purge": {
+ "post": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_PurgeDeleted",
+ "x-ms-long-running-operation": true,
+ "description": "Permanently deletes the specified vault. aka Purges the deleted Azure key vault.",
+ "parameters": [
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the soft-deleted vault."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the soft-deleted vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "The vault is purged."
+ },
+ "202": {
+ "description": "Vault is being purged."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Purge a deleted vault": {
+ "$ref": "./examples/purgeDeletedVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resources": {
+ "get": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_List",
+ "description": "The List operation gets information about the vaults associated with the subscription.",
+ "parameters": [
+ {
+ "name": "$filter",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "enum": [
+ "resourceType eq 'Microsoft.KeyVault/vaults'"
+ ],
+ "x-ms-enum": {
+ "name": "VaultListFilterTypes",
+ "modelAsString": false
+ },
+ "description": "The filter to apply on the operation."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "x-ms-api-version": false,
+ "type": "string",
+ "enum": [
+ "2015-11-01"
+ ],
+ "x-ms-enum": {
+ "name": "ResourceManagerApiVersions",
+ "modelAsString": false
+ },
+ "description": "Azure Resource Manager Api Version."
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all key vaults in the subscription.",
+ "schema": {
+ "$ref": "#/definitions/ResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List vaults in the specified subscription": {
+ "$ref": "./examples/listVault.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/checkNameAvailability": {
+ "post": {
+ "tags": [
+ "Vaults"
+ ],
+ "operationId": "Vaults_CheckNameAvailability",
+ "description": "Checks that the vault name is valid and is not already in use.",
+ "parameters": [
+ {
+ "name": "vaultName",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/VaultCheckNameAvailabilityParameters"
+ },
+ "description": "The name of the vault."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK -- Operation to check the vault name availability was successful.",
+ "schema": {
+ "$ref": "#/definitions/CheckNameAvailabilityResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validate a vault name": {
+ "$ref": "./examples/checkVaultNameAvailability.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Get",
+ "description": "Gets the specified private endpoint connection associated with the key vault.",
+ "x-ms-examples": {
+ "KeyVaultGetPrivateEndpointConnection": {
+ "$ref": "./examples/getPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Private endpoint connection successfully returned.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Put",
+ "description": "Updates the specified private endpoint connection associated with the key vault.",
+ "x-ms-examples": {
+ "KeyVaultPutPrivateEndpointConnection": {
+ "$ref": "./examples/putPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The intended state of private endpoint connection."
+ }
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The state of private endpoint connection was updated successfully.",
+ "headers": {
+ "Retry-After": {
+ "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Azure-AsyncOperation": {
+ "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_Delete",
+ "description": "Deletes the specified private endpoint connection associated with the key vault.",
+ "x-ms-examples": {
+ "KeyVaultDeletePrivateEndpointConnection": {
+ "$ref": "./examples/deletePrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/PrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The private endpoint connection was successfully deleted.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ }
+ },
+ "202": {
+ "description": "The private endpoint connection is being deleted.",
+ "headers": {
+ "Retry-After": {
+ "description": "The recommended number of seconds to wait before calling the URI specified in the location header.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "PrivateEndpointConnections"
+ ],
+ "operationId": "PrivateEndpointConnections_ListByResource",
+ "description": "The List operation gets information about the private endpoint connections associated with the vault.",
+ "x-ms-examples": {
+ "KeyVaultListPrivateEndpointConnection": {
+ "$ref": "./examples/listPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all private endpoint connections in the specified resource group.",
+ "schema": {
+ "$ref": "#/definitions/PrivateEndpointConnectionListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "PrivateLinkResources"
+ ],
+ "operationId": "PrivateLinkResources_ListByVault",
+ "description": "Gets the private link resources supported for the key vault.",
+ "x-ms-examples": {
+ "KeyVaultListPrivateLinkResources": {
+ "$ref": "./examples/listPrivateLinkResources.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully retrieved private link resources.",
+ "schema": {
+ "$ref": "#/definitions/PrivateLinkResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/networkSecurityPerimeterConfigurations": {
+ "get": {
+ "tags": [
+ "NetworkSecurityPerimeterConfiguration"
+ ],
+ "operationId": "NetworkSecurityPerimeter_ListConfiguration",
+ "description": "The List operation gets information about the network security perimeter associations for the key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about the network security perimeter associations of the key vault.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/networksecurityperimeter.json#/definitions/NetworkSecurityPerimeterConfigurationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": null
+ },
+ "x-ms-examples": {
+ "KeyVaultListNetworkSecurityPerimeterAssociationConfigurations": {
+ "$ref": "./examples/listNetworkSecurityPerimeterAssociationConfiguration.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/networkSecurityPerimeterConfigurations/{associationProxyName}": {
+ "get": {
+ "tags": [
+ "NetworkSecurityPerimeterConfiguration"
+ ],
+ "operationId": "NetworkSecurityPerimeter_GetConfiguration",
+ "description": "The Get operation gets information about the network security perimeter associations for the key vault.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ResourceGroupName"
+ },
+ {
+ "$ref": "#/parameters/VaultName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/AssociationProxyNameParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about the network security perimeter associations of the key vault.",
+ "schema": {
+ "$ref": "../../../../../common-types/resource-management/v5/networksecurityperimeter.json#/definitions/NetworkSecurityPerimeterConfiguration"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "KeyVaultGetNetworkSecurityPerimeterAssociationConfiguration": {
+ "$ref": "./examples/getNetworkSecurityPerimeterAssociationConfiguration.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "Sku": {
+ "properties": {
+ "family": {
+ "type": "string",
+ "description": "SKU family name",
+ "enum": [
+ "A"
+ ],
+ "x-ms-client-default": "A",
+ "x-ms-enum": {
+ "name": "SkuFamily",
+ "modelAsString": true
+ }
+ },
+ "name": {
+ "type": "string",
+ "description": "SKU name to specify whether the key vault is a standard vault or a premium vault.",
+ "enum": [
+ "standard",
+ "premium"
+ ],
+ "x-ms-enum": {
+ "name": "SkuName",
+ "modelAsString": false
+ }
+ }
+ },
+ "description": "SKU details",
+ "required": [
+ "name",
+ "family"
+ ],
+ "type": "object"
+ },
+ "AccessPolicyEntry": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault."
+ },
+ "objectId": {
+ "type": "string",
+ "description": "The object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID must be unique for the list of access policies."
+ },
+ "applicationId": {
+ "type": "string",
+ "format": "uuid",
+ "description": " Application ID of the client making request on behalf of a principal"
+ },
+ "permissions": {
+ "$ref": "#/definitions/Permissions",
+ "description": "Permissions the identity has for keys, secrets and certificates."
+ }
+ },
+ "description": "An identity that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID.",
+ "required": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "type": "object"
+ },
+ "Permissions": {
+ "properties": {
+ "keys": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "encrypt",
+ "decrypt",
+ "wrapKey",
+ "unwrapKey",
+ "sign",
+ "verify",
+ "get",
+ "list",
+ "create",
+ "update",
+ "import",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge",
+ "release",
+ "rotate",
+ "getrotationpolicy",
+ "setrotationpolicy"
+ ],
+ "x-ms-enum": {
+ "name": "KeyPermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to keys"
+ },
+ "secrets": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "get",
+ "list",
+ "set",
+ "delete",
+ "backup",
+ "restore",
+ "recover",
+ "purge"
+ ],
+ "x-ms-enum": {
+ "name": "SecretPermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to secrets"
+ },
+ "certificates": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "get",
+ "list",
+ "delete",
+ "create",
+ "import",
+ "update",
+ "managecontacts",
+ "getissuers",
+ "listissuers",
+ "setissuers",
+ "deleteissuers",
+ "manageissuers",
+ "recover",
+ "purge",
+ "backup",
+ "restore"
+ ],
+ "x-ms-enum": {
+ "name": "CertificatePermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to certificates"
+ },
+ "storage": {
+ "type": "array",
+ "items": {
+ "type": "string",
+ "enum": [
+ "all",
+ "get",
+ "list",
+ "delete",
+ "set",
+ "update",
+ "regeneratekey",
+ "recover",
+ "purge",
+ "backup",
+ "restore",
+ "setsas",
+ "listsas",
+ "getsas",
+ "deletesas"
+ ],
+ "x-ms-enum": {
+ "name": "StoragePermissions",
+ "modelAsString": true
+ }
+ },
+ "description": "Permissions to storage accounts"
+ }
+ },
+ "description": "Permissions the identity has for keys, secrets, certificates and storage.",
+ "type": "object"
+ },
+ "VaultProperties": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault."
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "SKU details"
+ },
+ "accessPolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AccessPolicyEntry"
+ },
+ "x-ms-identifiers": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required."
+ },
+ "vaultUri": {
+ "type": "string",
+ "description": "The URI of the vault for performing operations on keys and secrets."
+ },
+ "hsmPoolResourceId": {
+ "type": "string",
+ "description": "The resource id of HSM Pool.",
+ "readOnly": true
+ },
+ "enabledForDeployment": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault."
+ },
+ "enabledForDiskEncryption": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys."
+ },
+ "enabledForTemplateDeployment": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault."
+ },
+ "enableSoftDelete": {
+ "type": "boolean",
+ "default": true,
+ "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once set to true, it cannot be reverted to false."
+ },
+ "softDeleteRetentionInDays": {
+ "type": "integer",
+ "format": "int32",
+ "default": 90,
+ "description": "softDelete data retention days. It accepts >=7 and <=90."
+ },
+ "enableRbacAuthorization": {
+ "type": "boolean",
+ "default": false,
+ "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored. When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the vault is created with the default value of false. Note that management actions are always authorized with RBAC."
+ },
+ "createMode": {
+ "type": "string",
+ "description": "The vault's create mode to indicate whether the vault need to be recovered or not.",
+ "enum": [
+ "recover",
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMode",
+ "modelAsString": false
+ },
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "enablePurgeProtection": {
+ "type": "boolean",
+ "description": "Property specifying whether protection against purge is enabled for this vault. Setting this property to true activates protection against purge for this vault and its content - only the Key Vault service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible - that is, the property does not accept false as its value."
+ },
+ "networkAcls": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "Rules governing the accessibility of the key vault from specific network locations."
+ },
+ "provisioningState": {
+ "type": "string",
+ "description": "Provisioning state of the vault.",
+ "enum": [
+ "Succeeded",
+ "RegisteringDns"
+ ],
+ "x-ms-enum": {
+ "name": "VaultProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "privateEndpointConnections": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnectionItem"
+ },
+ "description": "List of private endpoint connections associated with the key vault."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "default": "enabled",
+ "description": "Property to specify whether the vault will accept traffic from public internet. If set to 'disabled' all traffic except private endpoint traffic and that that originates from trusted services will be blocked. This will override the set firewall rules, meaning that even if the firewall rules are present we will not honor the rules."
+ }
+ },
+ "required": [
+ "tenantId",
+ "sku"
+ ],
+ "description": "Properties of the vault",
+ "type": "object"
+ },
+ "VaultPatchProperties": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault."
+ },
+ "sku": {
+ "$ref": "#/definitions/Sku",
+ "description": "SKU details"
+ },
+ "accessPolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AccessPolicyEntry"
+ },
+ "x-ms-identifiers": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID."
+ },
+ "enabledForDeployment": {
+ "type": "boolean",
+ "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault."
+ },
+ "enabledForDiskEncryption": {
+ "type": "boolean",
+ "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys."
+ },
+ "enabledForTemplateDeployment": {
+ "type": "boolean",
+ "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault."
+ },
+ "enableSoftDelete": {
+ "type": "boolean",
+ "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. Once set to true, it cannot be reverted to false."
+ },
+ "enableRbacAuthorization": {
+ "type": "boolean",
+ "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored. When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the value of this property will not change."
+ },
+ "softDeleteRetentionInDays": {
+ "type": "integer",
+ "format": "int32",
+ "description": "softDelete data retention days. It accepts >=7 and <=90."
+ },
+ "createMode": {
+ "type": "string",
+ "description": "The vault's create mode to indicate whether the vault need to be recovered or not.",
+ "enum": [
+ "recover",
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMode",
+ "modelAsString": false
+ }
+ },
+ "enablePurgeProtection": {
+ "type": "boolean",
+ "description": "Property specifying whether protection against purge is enabled for this vault. Setting this property to true activates protection against purge for this vault and its content - only the Key Vault service may initiate a hard, irrecoverable deletion. The setting is effective only if soft delete is also enabled. Enabling this functionality is irreversible - that is, the property does not accept false as its value."
+ },
+ "networkAcls": {
+ "$ref": "#/definitions/NetworkRuleSet",
+ "description": "A collection of rules governing the accessibility of the vault from specific network locations."
+ },
+ "publicNetworkAccess": {
+ "type": "string",
+ "description": "Property to specify whether the vault will accept traffic from public internet. If set to 'disabled' all traffic except private endpoint traffic and that that originates from trusted services will be blocked. This will override the set firewall rules, meaning that even if the firewall rules are present we will not honor the rules. If set to 'SecuredByPerimeter' then only network security perimeter rules will apply; trusted services will not be allowed through."
+ }
+ },
+ "description": "Properties of the vault",
+ "type": "object"
+ },
+ "VaultAccessPolicyProperties": {
+ "properties": {
+ "accessPolicies": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AccessPolicyEntry"
+ },
+ "x-ms-identifiers": [
+ "tenantId",
+ "objectId",
+ "permissions"
+ ],
+ "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID."
+ }
+ },
+ "required": [
+ "accessPolicies"
+ ],
+ "description": "Properties of the vault access policy",
+ "type": "object"
+ },
+ "DeletedVaultProperties": {
+ "properties": {
+ "vaultId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource id of the original vault."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The location of the original vault."
+ },
+ "deletionDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The deleted date."
+ },
+ "scheduledPurgeDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The scheduled purged date."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags of the original vault."
+ },
+ "purgeProtectionEnabled": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Purge protection status of the original vault."
+ }
+ },
+ "description": "Properties of the deleted vault.",
+ "type": "object"
+ },
+ "VaultCreateOrUpdateParameters": {
+ "properties": {
+ "location": {
+ "type": "string",
+ "description": "The supported Azure location where the key vault should be created."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key vault."
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "description": "Parameters for creating or updating a vault",
+ "required": [
+ "location",
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "VaultPatchParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the key vault. "
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultPatchProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "description": "Parameters for creating or updating a vault",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "VaultAccessPolicyParameters": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource id of the access policy."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource name of the access policy."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource name of the access policy."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the access policy."
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultAccessPolicyProperties",
+ "description": "Properties of the access policy"
+ }
+ },
+ "description": "Parameters for updating the access policy in a vault",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "Vault": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Fully qualified identifier of the key vault resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Name of the key vault resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type of the key vault resource."
+ },
+ "location": {
+ "type": "string",
+ "description": "Azure location of the key vault resource."
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags assigned to the key vault resource."
+ },
+ "systemData": {
+ "description": "System metadata for the key vault.",
+ "$ref": "common.json#/definitions/SystemData"
+ },
+ "properties": {
+ "$ref": "#/definitions/VaultProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "description": "Resource information with extended details.",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "DeletedVault": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource ID for the deleted key vault."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the key vault."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the key vault."
+ },
+ "properties": {
+ "$ref": "#/definitions/DeletedVaultProperties",
+ "description": "Properties of the vault"
+ }
+ },
+ "description": "Deleted vault information with extended details.",
+ "type": "object"
+ },
+ "VaultListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Vault"
+ },
+ "description": "The list of vaults."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of vaults."
+ }
+ },
+ "description": "List of vaults",
+ "type": "object"
+ },
+ "DeletedVaultListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DeletedVault"
+ },
+ "description": "The list of deleted vaults."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of deleted vaults."
+ }
+ },
+ "description": "List of vaults",
+ "type": "object"
+ },
+ "ResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Resource"
+ },
+ "description": "The list of vault resources."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of vault resources."
+ }
+ },
+ "description": "List of vault resources.",
+ "type": "object"
+ },
+ "Resource": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Fully qualified identifier of the key vault resource."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Name of the key vault resource."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource type of the key vault resource."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Azure location of the key vault resource."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags assigned to the key vault resource."
+ }
+ },
+ "description": "Key Vault resource",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "VaultCheckNameAvailabilityParameters": {
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The vault name."
+ },
+ "type": {
+ "type": "string",
+ "enum": [
+ "Microsoft.KeyVault/vaults"
+ ],
+ "x-ms-enum": {
+ "name": "Type",
+ "modelAsString": false
+ },
+ "description": "The type of resource, Microsoft.KeyVault/vaults"
+ }
+ },
+ "required": [
+ "name",
+ "type"
+ ],
+ "description": "The parameters used to check the availability of the vault name.",
+ "type": "object"
+ },
+ "CheckNameAvailabilityResult": {
+ "properties": {
+ "nameAvailable": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "A boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used."
+ },
+ "reason": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The reason that a vault name could not be used. The Reason element is only returned if NameAvailable is false.",
+ "enum": [
+ "AccountNameInvalid",
+ "AlreadyExists"
+ ],
+ "x-ms-enum": {
+ "name": "Reason",
+ "modelAsString": false
+ }
+ },
+ "message": {
+ "readOnly": true,
+ "type": "string",
+ "description": "An error message explaining the Reason value in more detail."
+ }
+ },
+ "description": "The CheckNameAvailability operation response.",
+ "type": "object"
+ },
+ "NetworkRuleSet": {
+ "properties": {
+ "bypass": {
+ "type": "string",
+ "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "defaultAction": {
+ "type": "string",
+ "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleAction",
+ "modelAsString": true
+ }
+ },
+ "ipRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IPRule"
+ },
+ "description": "The list of IP address rules."
+ },
+ "virtualNetworkRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VirtualNetworkRule"
+ },
+ "x-ms-identifiers": [
+ "id"
+ ],
+ "description": "The list of virtual network rules."
+ }
+ },
+ "description": "A set of rules governing the network accessibility of a vault.",
+ "type": "object"
+ },
+ "IPRule": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "A rule governing the accessibility of a vault from a specific ip address or ip range.",
+ "type": "object"
+ },
+ "VirtualNetworkRule": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'."
+ },
+ "ignoreMissingVnetServiceEndpoint": {
+ "type": "boolean",
+ "description": "Property to specify whether NRP will ignore the check if parent subnet has serviceEndpoints configured."
+ }
+ },
+ "required": [
+ "id"
+ ],
+ "description": "A rule governing the accessibility of a vault from a specific virtual network.",
+ "type": "object"
+ },
+ "PrivateEndpointConnectionItem": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Id of private endpoint connection."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ },
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Private endpoint connection properties."
+ }
+ },
+ "description": "Private endpoint connection item.",
+ "type": "object"
+ },
+ "PrivateEndpointConnection": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Resource properties."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "description": "Private endpoint connection resource.",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "PrivateEndpointConnectionListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PrivateEndpointConnection"
+ },
+ "description": "The list of private endpoint connections."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of private endpoint connections."
+ }
+ },
+ "description": "List of private endpoint connections.",
+ "type": "object"
+ },
+ "PrivateEndpointConnectionProperties": {
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/PrivateEndpoint",
+ "description": "Properties of the private endpoint object."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/PrivateLinkServiceConnectionState",
+ "description": "Approval state of the private link connection."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState",
+ "description": "Provisioning state of the private endpoint connection."
+ }
+ },
+ "description": "Properties of the private endpoint connection resource.",
+ "type": "object"
+ },
+ "PrivateEndpoint": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Full identifier of the private endpoint resource."
+ }
+ },
+ "description": "Private endpoint object properties.",
+ "type": "object"
+ },
+ "PrivateLinkServiceConnectionState": {
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus",
+ "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner."
+ },
+ "description": {
+ "type": "string",
+ "description": "The reason for approval or rejection."
+ },
+ "actionsRequired": {
+ "type": "string",
+ "description": "A message indicating if changes on the service provider require any updates on the consumer.",
+ "enum": [
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ActionsRequired",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "An object that represents the approval state of the private link connection.",
+ "type": "object"
+ },
+ "PrivateEndpointServiceConnectionStatus": {
+ "type": "string",
+ "description": "The private endpoint connection status.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointServiceConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "PrivateEndpointConnectionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Failed",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "PrivateLinkResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Array of private link resources",
+ "items": {
+ "$ref": "#/definitions/PrivateLinkResource"
+ }
+ }
+ },
+ "description": "A list of private link resources",
+ "type": "object"
+ },
+ "PrivateLinkResource": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/PrivateLinkResourceProperties",
+ "description": "Resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/Resource"
+ }
+ ],
+ "description": "A private link resource",
+ "type": "object"
+ },
+ "PrivateLinkResourceProperties": {
+ "properties": {
+ "groupId": {
+ "description": "Group identifier of private link resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "requiredMembers": {
+ "description": "Required member names of private link resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "requiredZoneNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Required DNS zone names of the the private link resource."
+ }
+ },
+ "description": "Properties of a private link resource.",
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the resource group that contains the key vault.",
+ "x-ms-parameter-location": "method"
+ },
+ "VaultName": {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "The name of the key vault.",
+ "x-ms-parameter-location": "method"
+ },
+ "PrivateEndpointConnectionName": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the private endpoint connection associated with the key vault.",
+ "x-ms-parameter-location": "method"
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ },
+ "AssociationProxyNameParameter": {
+ "name": "associationProxyName",
+ "in": "path",
+ "required": true,
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\\.[a-z][a-z0-9]*$",
+ "type": "string",
+ "description": "Association proxy name associated with the key vault.",
+ "x-ms-parameter-location": "method"
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/managedHsm.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/managedHsm.json
new file mode 100644
index 000000000000..3543140d95c9
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/managedHsm.json
@@ -0,0 +1,1740 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault.",
+ "version": "2024-12-01-preview"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ },
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}": {
+ "put": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_CreateOrUpdate",
+ "x-ms-long-running-operation": true,
+ "description": "Create or update a managed HSM Pool in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ },
+ "description": "Parameters to create or update the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "200": {
+ "description": "Created or updated managed HSM Pool",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a new managed HSM Pool or update an existing managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_CreateOrUpdate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_Update",
+ "x-ms-long-running-operation": true,
+ "description": "Update a managed HSM Pool in the specified subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ },
+ "description": "Parameters to patch the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "200": {
+ "description": "Patched managed HSM Pool",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update an existing managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_Update.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_Delete",
+ "x-ms-long-running-operation": true,
+ "description": "Deletes the specified managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool to delete"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "204": {
+ "description": "Request successful. Resource does not exist."
+ },
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "200": {
+ "description": "Delete successful."
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Delete a managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_Delete.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_Get",
+ "description": "Gets the specified managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved managed HSM Pool",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsm"
+ }
+ },
+ "204": {
+ "description": "Request successful. Resource does not exist."
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a managed HSM Pool": {
+ "$ref": "./examples/ManagedHsm_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_ListByResourceGroup",
+ "description": "The List operation gets information about the managed HSM Pools associated with the subscription and within the specified resource group.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified resource group.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a resource group": {
+ "$ref": "./examples/ManagedHsm_ListByResourceGroup.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/managedHSMs": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_ListBySubscription",
+ "description": "The List operation gets information about the managed HSM Pools associated with the subscription.",
+ "parameters": [
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a subscription": {
+ "$ref": "./examples/ManagedHsm_ListBySubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateEndpointConnections": {
+ "get": {
+ "tags": [
+ "MHSMListPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_ListByResource",
+ "description": "The List operation gets information about the private endpoint connections associated with the managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionsListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a subscription": {
+ "$ref": "./examples/ManagedHsm_ListPrivateEndpointConnectionsByResource.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/deletedManagedHSMs": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_ListDeleted",
+ "description": "The List operation gets information about the deleted managed HSMs associated with the subscription.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about all managed HSMs in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/DeletedManagedHsmListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "List deleted managed HSMs in the specified subscription": {
+ "$ref": "./examples/DeletedManagedHsm_List.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedManagedHSMs/{name}": {
+ "get": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_GetDeleted",
+ "description": "Gets the specified deleted managed HSM.",
+ "parameters": [
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the deleted managed HSM."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the deleted managed HSM."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved information about the specified deleted managed HSM.",
+ "schema": {
+ "$ref": "#/definitions/DeletedManagedHsm"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Retrieve a deleted managed HSM": {
+ "$ref": "./examples/DeletedManagedHsm_Get.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/locations/{location}/deletedManagedHSMs/{name}/purge": {
+ "post": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_PurgeDeleted",
+ "x-ms-long-running-operation": true,
+ "description": "Permanently deletes the specified managed HSM.",
+ "parameters": [
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the soft-deleted managed HSM."
+ },
+ {
+ "name": "location",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The location of the soft-deleted managed HSM."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "202": {
+ "description": "Accepted and the operation will complete asynchronously.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Purge a managed HSM Pool": {
+ "$ref": "./examples/DeletedManagedHsm_Purge.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateEndpointConnections/{privateEndpointConnectionName}": {
+ "get": {
+ "tags": [
+ "MHSMPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_Get",
+ "description": "Gets the specified private endpoint connection associated with the managed HSM Pool.",
+ "x-ms-examples": {
+ "ManagedHsmGetPrivateEndpointConnection": {
+ "$ref": "./examples/ManagedHsm_getPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/MHSMPrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Private endpoint connection successfully returned.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ }
+ },
+ "put": {
+ "tags": [
+ "MHSMPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_Put",
+ "description": "Updates the specified private endpoint connection associated with the managed hsm pool.",
+ "x-ms-examples": {
+ "ManagedHsmPutPrivateEndpointConnection": {
+ "$ref": "./examples/ManagedHsm_putPrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/MHSMPrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "properties",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ },
+ "description": "The intended state of private endpoint connection."
+ }
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The state of private endpoint connection was updated successfully.",
+ "headers": {
+ "Retry-After": {
+ "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "Azure-AsyncOperation": {
+ "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.",
+ "type": "string"
+ }
+ },
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "MHSMPrivateEndpointConnections"
+ ],
+ "operationId": "MHSMPrivateEndpointConnections_Delete",
+ "x-ms-long-running-operation": true,
+ "description": "Deletes the specified private endpoint connection associated with the managed hsm pool.",
+ "x-ms-examples": {
+ "ManagedHsmDeletePrivateEndpointConnection": {
+ "$ref": "./examples/ManagedHsm_deletePrivateEndpointConnection.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/MHSMPrivateEndpointConnectionName"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "The private endpoint connection was successfully deleted.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ }
+ },
+ "202": {
+ "description": "The private endpoint connection is being deleted.",
+ "headers": {
+ "Location": {
+ "description": "The URI to poll for completion status.",
+ "type": "string"
+ }
+ }
+ },
+ "204": {
+ "description": "The private endpoint connection does not exist."
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/privateLinkResources": {
+ "get": {
+ "tags": [
+ "MHSMPrivateLinkResources"
+ ],
+ "operationId": "MHSMPrivateLinkResources_ListByMHSMResource",
+ "description": "Gets the private link resources supported for the managed hsm pool.",
+ "x-ms-examples": {
+ "KeyVaultListPrivateLinkResources": {
+ "$ref": "./examples/ManagedHsm_listPrivateLinkResources.json"
+ }
+ },
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Successfully retrieved private link resources.",
+ "schema": {
+ "$ref": "#/definitions/MHSMPrivateLinkResourceListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/managedHSMs/{name}/regions": {
+ "get": {
+ "tags": [
+ "MHSMListRegions"
+ ],
+ "operationId": "MHSMRegions_ListByResource",
+ "description": "The List operation gets information about the regions associated with the managed HSM Pool.",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ManagedHsmResourceGroupName"
+ },
+ {
+ "name": "name",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the managed HSM Pool"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about all managed HSM Pools in the specified subscription.",
+ "schema": {
+ "$ref": "#/definitions/MHSMRegionsListResult"
+ }
+ },
+ "default": {
+ "description": "The error response describing why the operation failed.",
+ "schema": {
+ "$ref": "#/definitions/ManagedHsmError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List managed HSM Pools in a subscription": {
+ "$ref": "./examples/ManagedHsm_ListRegionsByResource.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.KeyVault/checkMhsmNameAvailability": {
+ "post": {
+ "tags": [
+ "ManagedHsms"
+ ],
+ "operationId": "ManagedHsms_CheckMhsmNameAvailability",
+ "description": "Checks that the managed hsm name is valid and is not already in use.",
+ "parameters": [
+ {
+ "name": "mhsmName",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/CheckMhsmNameAvailabilityParameters"
+ },
+ "description": "The name of the managed hsm."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK -- Operation to check the mhsm name availability was successful.",
+ "schema": {
+ "$ref": "#/definitions/CheckMhsmNameAvailabilityResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Validate a managed hsm name": {
+ "$ref": "./examples/ManagedHsm_checkMhsmNameAvailability.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "ManagedHsmSku": {
+ "properties": {
+ "family": {
+ "type": "string",
+ "description": "SKU Family of the managed HSM Pool",
+ "enum": [
+ "B",
+ "C"
+ ],
+ "x-ms-client-default": "B",
+ "x-ms-enum": {
+ "name": "ManagedHsmSkuFamily",
+ "modelAsString": true
+ }
+ },
+ "name": {
+ "type": "string",
+ "description": "SKU of the managed HSM Pool",
+ "enum": [
+ "Standard_B1",
+ "Custom_B32",
+ "Custom_B6",
+ "Custom_C42",
+ "Custom_C10"
+ ],
+ "x-ms-enum": {
+ "name": "ManagedHsmSkuName",
+ "modelAsString": false
+ }
+ }
+ },
+ "description": "SKU details",
+ "required": [
+ "name",
+ "family"
+ ],
+ "type": "object"
+ },
+ "ManagedHsmProperties": {
+ "properties": {
+ "tenantId": {
+ "type": "string",
+ "format": "uuid",
+ "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the managed HSM pool."
+ },
+ "initialAdminObjectIds": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Array of initial administrators object ids for this managed hsm pool."
+ },
+ "hsmUri": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The URI of the managed hsm pool for performing operations on keys."
+ },
+ "enableSoftDelete": {
+ "type": "boolean",
+ "default": true,
+ "description": "Property to specify whether the 'soft delete' functionality is enabled for this managed HSM pool. Soft delete is enabled by default for all managed HSMs and is immutable."
+ },
+ "softDeleteRetentionInDays": {
+ "type": "integer",
+ "format": "int32",
+ "default": 90,
+ "description": "Soft deleted data retention days. When you delete an HSM or a key, it will remain recoverable for the configured retention period or for a default period of 90 days. It accepts values between 7 and 90."
+ },
+ "enablePurgeProtection": {
+ "type": "boolean",
+ "default": true,
+ "description": "Property specifying whether protection against purge is enabled for this managed HSM pool. Setting this property to true activates protection against purge for this managed HSM pool and its content - only the Managed HSM service may initiate a hard, irrecoverable deletion. Enabling this functionality is irreversible."
+ },
+ "createMode": {
+ "type": "string",
+ "description": "The create mode to indicate whether the resource is being created or is being recovered from a deleted resource.",
+ "enum": [
+ "recover",
+ "default"
+ ],
+ "x-ms-enum": {
+ "name": "CreateMode",
+ "modelAsString": false,
+ "values": [
+ {
+ "value": "recover",
+ "description": "Recover the managed HSM pool from a soft-deleted resource."
+ },
+ {
+ "value": "default",
+ "description": "Create a new managed HSM pool. This is the default option."
+ }
+ ]
+ },
+ "x-ms-mutability": [
+ "create",
+ "update"
+ ]
+ },
+ "statusMessage": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Resource Status Message."
+ },
+ "provisioningState": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Provisioning",
+ "Failed",
+ "Updating",
+ "Deleting",
+ "Activated",
+ "SecurityDomainRestore",
+ "Restoring"
+ ],
+ "x-ms-enum": {
+ "name": "ProvisioningState",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Succeeded",
+ "description": "The managed HSM Pool has been full provisioned."
+ },
+ {
+ "value": "Provisioning",
+ "description": "The managed HSM Pool is currently being provisioned."
+ },
+ {
+ "value": "Failed",
+ "description": "Provisioning of the managed HSM Pool has failed."
+ },
+ {
+ "value": "Updating",
+ "description": "The managed HSM Pool is currently being updated."
+ },
+ {
+ "value": "Deleting",
+ "description": "The managed HSM Pool is currently being deleted."
+ },
+ {
+ "value": "Activated",
+ "description": "The managed HSM pool is ready for normal use."
+ },
+ {
+ "value": "SecurityDomainRestore",
+ "description": "The managed HSM pool is waiting for a security domain restore action."
+ },
+ {
+ "value": "Restoring",
+ "description": "The managed HSM pool is being restored from full HSM backup."
+ }
+ ]
+ }
+ },
+ "networkAcls": {
+ "$ref": "#/definitions/MHSMNetworkRuleSet",
+ "description": "Rules governing the accessibility of the key vault from specific network locations."
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMGeoReplicatedRegion"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "List of all regions associated with the managed hsm pool."
+ },
+ "privateEndpointConnections": {
+ "readOnly": true,
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionItem"
+ },
+ "description": "List of private endpoint connections associated with the managed hsm pool."
+ },
+ "publicNetworkAccess": {
+ "description": "Control permission to the managed HSM from public networks.",
+ "enum": [
+ "Enabled",
+ "Disabled"
+ ],
+ "default": "Enabled",
+ "type": "string",
+ "x-ms-enum": {
+ "name": "PublicNetworkAccess",
+ "modelAsString": true
+ }
+ },
+ "scheduledPurgeDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The scheduled purge date in UTC."
+ },
+ "securityDomainProperties": {
+ "readOnly": true,
+ "$ref": "#/definitions/ManagedHSMSecurityDomainProperties",
+ "description": "Managed HSM security domain properties."
+ }
+ },
+ "description": "Properties of the managed HSM Pool",
+ "type": "object"
+ },
+ "ManagedHsm": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/ManagedHsmProperties",
+ "description": "Properties of the managed HSM"
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedHsmResource"
+ }
+ ],
+ "description": "Resource information with extended details.",
+ "type": "object"
+ },
+ "ManagedHsmResource": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The Azure Resource Manager resource ID for the managed HSM Pool."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the managed HSM Pool."
+ },
+ "location": {
+ "type": "string",
+ "description": "The supported Azure location where the managed HSM Pool should be created.",
+ "x-ms-mutability": [
+ "create",
+ "read"
+ ]
+ },
+ "sku": {
+ "$ref": "#/definitions/ManagedHsmSku",
+ "description": "SKU details"
+ },
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Resource tags"
+ },
+ "systemData": {
+ "$ref": "common.json#/definitions/SystemData"
+ },
+ "identity": {
+ "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity"
+ }
+ },
+ "description": "Managed HSM resource",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "ManagedHsmListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ManagedHsm"
+ },
+ "description": "The list of managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed HSM Pools."
+ }
+ },
+ "description": "List of managed HSM Pools",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnectionsListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnection"
+ },
+ "description": "The private endpoint connection associated with a managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed HSM Pools."
+ }
+ },
+ "description": "List of private endpoint connections associated with a managed HSM Pools",
+ "type": "object"
+ },
+ "MHSMRegionsListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMGeoReplicatedRegion"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ],
+ "description": "The region associated with a managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of managed HSM Pools."
+ }
+ },
+ "description": "List of regions associated with a managed HSM Pools"
+ },
+ "ManagedHsmError": {
+ "properties": {
+ "error": {
+ "readOnly": true,
+ "description": "The server error.",
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "description": "The error exception.",
+ "type": "object"
+ },
+ "Error": {
+ "properties": {
+ "code": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The error code."
+ },
+ "message": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The error message."
+ },
+ "innererror": {
+ "x-ms-client-name": "innerError",
+ "readOnly": true,
+ "description": "The inner error, contains a more specific error code.",
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "description": "The server error.",
+ "type": "object"
+ },
+ "DeletedManagedHsm": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The Azure Resource Manager resource ID for the deleted managed HSM Pool."
+ },
+ "name": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The name of the managed HSM Pool."
+ },
+ "type": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource type of the managed HSM Pool."
+ },
+ "properties": {
+ "$ref": "#/definitions/DeletedManagedHsmProperties",
+ "description": "Properties of the deleted managed HSM"
+ }
+ },
+ "type": "object"
+ },
+ "DeletedManagedHsmProperties": {
+ "properties": {
+ "mhsmId": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The resource id of the original managed HSM."
+ },
+ "location": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The location of the original managed HSM."
+ },
+ "deletionDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The deleted date."
+ },
+ "scheduledPurgeDate": {
+ "readOnly": true,
+ "type": "string",
+ "format": "date-time",
+ "description": "The scheduled purged date."
+ },
+ "purgeProtectionEnabled": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "Purge protection status of the original managed HSM."
+ },
+ "tags": {
+ "readOnly": true,
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "Tags of the original managed HSM."
+ }
+ },
+ "description": "Properties of the deleted managed HSM.",
+ "type": "object"
+ },
+ "DeletedManagedHsmListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DeletedManagedHsm"
+ },
+ "description": "The list of deleted managed HSM Pools."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of deleted managed HSM Pools."
+ }
+ },
+ "description": "List of deleted managed HSM Pools",
+ "type": "object"
+ },
+ "MHSMGeoReplicatedRegion": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of the geo replicated region."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/MHSMGeoReplicationRegionProvisioningState",
+ "description": "Provisioning state of the geo replicated region."
+ },
+ "isPrimary": {
+ "type": "boolean",
+ "description": "A boolean value that indicates whether the region is the primary region or a secondary region."
+ }
+ },
+ "description": "A region that this managed HSM Pool has been extended to."
+ },
+ "MHSMNetworkRuleSet": {
+ "properties": {
+ "bypass": {
+ "type": "string",
+ "description": "Tells what traffic can bypass network rules. This can be 'AzureServices' or 'None'. If not specified the default is 'AzureServices'.",
+ "enum": [
+ "AzureServices",
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleBypassOptions",
+ "modelAsString": true
+ }
+ },
+ "defaultAction": {
+ "type": "string",
+ "description": "The default action when no rule from ipRules and from virtualNetworkRules match. This is only used after the bypass property has been evaluated.",
+ "enum": [
+ "Allow",
+ "Deny"
+ ],
+ "x-ms-enum": {
+ "name": "NetworkRuleAction",
+ "modelAsString": true
+ }
+ },
+ "ipRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMIPRule"
+ },
+ "x-ms-identifiers": [
+ "value"
+ ],
+ "description": "The list of IP address rules."
+ },
+ "virtualNetworkRules": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MHSMVirtualNetworkRule"
+ },
+ "description": "The list of virtual network rules."
+ }
+ },
+ "description": "A set of rules governing the network accessibility of a managed hsm pool.",
+ "type": "object"
+ },
+ "MHSMIPRule": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "An IPv4 address range in CIDR notation, such as '124.56.78.91' (simple IP address) or '124.56.78.0/24' (all addresses that start with 124.56.78)."
+ }
+ },
+ "required": [
+ "value"
+ ],
+ "description": "A rule governing the accessibility of a managed HSM pool from a specific IP address or IP range.",
+ "type": "object"
+ },
+ "MHSMVirtualNetworkRule": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Full resource id of a vnet subnet, such as '/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1'."
+ }
+ },
+ "required": [
+ "id"
+ ],
+ "description": "A rule governing the accessibility of a managed hsm pool from a specific virtual network.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnectionItem": {
+ "properties": {
+ "id": {
+ "type": "string",
+ "description": "Id of private endpoint connection."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ },
+ "properties": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Private endpoint connection properties."
+ }
+ },
+ "description": "Private endpoint connection item.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnection": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionProperties",
+ "x-ms-client-flatten": true,
+ "description": "Resource properties."
+ },
+ "etag": {
+ "type": "string",
+ "description": "Modified whenever there is a change in the state of private endpoint connection."
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedHsmResource"
+ }
+ ],
+ "description": "Private endpoint connection resource.",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "MHSMPrivateEndpointConnectionProperties": {
+ "properties": {
+ "privateEndpoint": {
+ "$ref": "#/definitions/MHSMPrivateEndpoint",
+ "description": "Properties of the private endpoint object."
+ },
+ "privateLinkServiceConnectionState": {
+ "$ref": "#/definitions/MHSMPrivateLinkServiceConnectionState",
+ "description": "Approval state of the private link connection."
+ },
+ "provisioningState": {
+ "$ref": "#/definitions/MHSMPrivateEndpointConnectionProvisioningState",
+ "description": "Provisioning state of the private endpoint connection."
+ }
+ },
+ "description": "Properties of the private endpoint connection resource.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpoint": {
+ "properties": {
+ "id": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Full identifier of the private endpoint resource."
+ }
+ },
+ "description": "Private endpoint object properties.",
+ "type": "object"
+ },
+ "MHSMPrivateLinkServiceConnectionState": {
+ "properties": {
+ "status": {
+ "$ref": "#/definitions/MHSMPrivateEndpointServiceConnectionStatus",
+ "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner."
+ },
+ "description": {
+ "type": "string",
+ "description": "The reason for approval or rejection."
+ },
+ "actionsRequired": {
+ "type": "string",
+ "description": "A message indicating if changes on the service provider require any updates on the consumer.",
+ "enum": [
+ "None"
+ ],
+ "x-ms-enum": {
+ "name": "ActionsRequired",
+ "modelAsString": true
+ }
+ }
+ },
+ "description": "An object that represents the approval state of the private link connection.",
+ "type": "object"
+ },
+ "MHSMPrivateEndpointServiceConnectionStatus": {
+ "type": "string",
+ "description": "The private endpoint connection status.",
+ "enum": [
+ "Pending",
+ "Approved",
+ "Rejected",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointServiceConnectionStatus",
+ "modelAsString": true
+ }
+ },
+ "MHSMPrivateEndpointConnectionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Succeeded",
+ "Creating",
+ "Updating",
+ "Deleting",
+ "Failed",
+ "Disconnected"
+ ],
+ "x-ms-enum": {
+ "name": "PrivateEndpointConnectionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "MHSMPrivateLinkResourceListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "description": "Array of private link resources",
+ "items": {
+ "$ref": "#/definitions/MHSMPrivateLinkResource"
+ }
+ }
+ },
+ "description": "A list of private link resources",
+ "type": "object"
+ },
+ "MHSMPrivateLinkResource": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/MHSMPrivateLinkResourceProperties",
+ "description": "Resource properties.",
+ "x-ms-client-flatten": true
+ }
+ },
+ "allOf": [
+ {
+ "$ref": "#/definitions/ManagedHsmResource"
+ }
+ ],
+ "description": "A private link resource",
+ "type": "object"
+ },
+ "MHSMPrivateLinkResourceProperties": {
+ "properties": {
+ "groupId": {
+ "description": "Group identifier of private link resource.",
+ "type": "string",
+ "readOnly": true
+ },
+ "requiredMembers": {
+ "description": "Required member names of private link resource.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "requiredZoneNames": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Required DNS zone names of the the private link resource."
+ }
+ },
+ "description": "Properties of a private link resource.",
+ "type": "object"
+ },
+ "MHSMGeoReplicationRegionProvisioningState": {
+ "type": "string",
+ "readOnly": true,
+ "description": "The current provisioning state.",
+ "enum": [
+ "Preprovisioning",
+ "Provisioning",
+ "Succeeded",
+ "Failed",
+ "Deleting",
+ "Cleanup"
+ ],
+ "x-ms-enum": {
+ "name": "GeoReplicationRegionProvisioningState",
+ "modelAsString": true
+ }
+ },
+ "CheckMhsmNameAvailabilityParameters": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "The managed hsm name."
+ }
+ },
+ "required": [
+ "name"
+ ],
+ "description": "The parameters used to check the availability of the managed hsm name."
+ },
+ "CheckMhsmNameAvailabilityResult": {
+ "type": "object",
+ "properties": {
+ "nameAvailable": {
+ "readOnly": true,
+ "type": "boolean",
+ "description": "A boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or is invalid and cannot be used."
+ },
+ "reason": {
+ "readOnly": true,
+ "type": "string",
+ "description": "The reason that a managed hsm name could not be used. The reason element is only returned if NameAvailable is false.",
+ "enum": [
+ "AccountNameInvalid",
+ "AlreadyExists"
+ ],
+ "x-ms-enum": {
+ "name": "Reason",
+ "modelAsString": true
+ }
+ },
+ "message": {
+ "readOnly": true,
+ "type": "string",
+ "description": "An error message explaining the Reason value in more detail."
+ }
+ },
+ "description": "The CheckMhsmNameAvailability operation response."
+ },
+ "ManagedHSMSecurityDomainProperties": {
+ "type": "object",
+ "properties": {
+ "activationStatus": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Activation Status",
+ "enum": [
+ "Active",
+ "NotActivated",
+ "Unknown",
+ "Failed"
+ ],
+ "x-ms-enum": {
+ "name": "ActivationStatus",
+ "modelAsString": true,
+ "values": [
+ {
+ "value": "Active",
+ "description": "The managed HSM Pool is active."
+ },
+ {
+ "value": "NotActivated",
+ "description": "The managed HSM Pool is not yet activated."
+ },
+ {
+ "value": "Unknown",
+ "description": "An unknown error occurred while activating managed hsm."
+ },
+ {
+ "value": "Failed",
+ "description": "Failed to activate managed hsm."
+ }
+ ]
+ }
+ },
+ "activationStatusMessage": {
+ "readOnly": true,
+ "type": "string",
+ "description": "Activation Status Message."
+ }
+ },
+ "description": "The security domain properties of the managed hsm."
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ },
+ "ManagedHsmResourceGroupName": {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the resource group that contains the managed HSM pool.",
+ "x-ms-parameter-location": "method"
+ },
+ "MHSMPrivateEndpointConnectionName": {
+ "name": "privateEndpointConnectionName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Name of the private endpoint connection associated with the managed hsm pool.",
+ "x-ms-parameter-location": "method"
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/providers.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/providers.json
new file mode 100644
index 000000000000..8e13cf831875
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/providers.json
@@ -0,0 +1,288 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "paths": {
+ "/providers/Microsoft.KeyVault/operations": {
+ "get": {
+ "tags": [
+ "Operations"
+ ],
+ "description": "Lists all of the available Key Vault Rest API operations.",
+ "operationId": "Operations_List",
+ "parameters": [
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK. The request has succeeded.",
+ "schema": {
+ "$ref": "#/definitions/OperationListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "x-ms-examples": {
+ "Lists available Rest API operations.": {
+ "$ref": "./examples/listOperations.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "OperationListResult": {
+ "description": "Result of the request to list Storage operations. It contains a list of operations and a URL link to get the next set of results.",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Operation"
+ },
+ "x-ms-identifiers": [],
+ "description": "List of Storage operations supported by the Storage resource provider."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of operations."
+ }
+ },
+ "type": "object"
+ },
+ "Operation": {
+ "description": "Key Vault REST API operation definition.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Operation name: {provider}/{resource}/{operation}",
+ "type": "string"
+ },
+ "display": {
+ "description": "Display metadata associated with the operation.",
+ "properties": {
+ "provider": {
+ "description": "Service provider: Microsoft Key Vault.",
+ "type": "string"
+ },
+ "resource": {
+ "description": "Resource on which the operation is performed etc.",
+ "type": "string"
+ },
+ "operation": {
+ "description": "Type of operation: get, read, delete, etc.",
+ "type": "string"
+ },
+ "description": {
+ "description": "Description of operation.",
+ "type": "string"
+ }
+ }
+ },
+ "origin": {
+ "type": "string",
+ "description": "The origin of operations."
+ },
+ "properties": {
+ "description": "Properties of operation, include metric specifications.",
+ "x-ms-client-flatten": true,
+ "x-ms-client-name": "OperationProperties",
+ "$ref": "#/definitions/OperationProperties"
+ },
+ "isDataAction": {
+ "type": "boolean",
+ "description": "Property to specify whether the action is a data action."
+ }
+ }
+ },
+ "OperationProperties": {
+ "description": "Properties of operation, include metric specifications.",
+ "properties": {
+ "serviceSpecification": {
+ "$ref": "#/definitions/ServiceSpecification",
+ "description": "One property of operation, include metric specifications."
+ }
+ },
+ "type": "object"
+ },
+ "ServiceSpecification": {
+ "description": "One property of operation, include log specifications.",
+ "properties": {
+ "logSpecifications": {
+ "description": "Log specifications of operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LogSpecification"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "metricSpecifications": {
+ "description": "Metric specifications of operation.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetricSpecification"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ }
+ },
+ "type": "object"
+ },
+ "LogSpecification": {
+ "description": "Log specification of operation.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of log specification."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Display name of log specification."
+ },
+ "blobDuration": {
+ "type": "string",
+ "description": "Blob duration of specification."
+ }
+ },
+ "type": "object"
+ },
+ "MetricSpecification": {
+ "description": "Metric specification of operation.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of metric specification."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Display name of metric specification."
+ },
+ "displayDescription": {
+ "type": "string",
+ "description": "Display description of metric specification."
+ },
+ "unit": {
+ "type": "string",
+ "description": "The metric unit. Possible values include: 'Bytes', 'Count', 'Milliseconds'."
+ },
+ "aggregationType": {
+ "type": "string",
+ "description": "The metric aggregation type. Possible values include: 'Average', 'Count', 'Total'."
+ },
+ "supportedAggregationTypes": {
+ "type": "array",
+ "description": "The supported aggregation types for the metrics.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "supportedTimeGrainTypes": {
+ "type": "array",
+ "description": "The supported time grain types for the metrics.",
+ "items": {
+ "type": "string"
+ }
+ },
+ "lockAggregationType": {
+ "type": "string",
+ "description": "The metric lock aggregation type."
+ },
+ "dimensions": {
+ "type": "array",
+ "description": "The dimensions of metric",
+ "items": {
+ "$ref": "#/definitions/DimensionProperties"
+ },
+ "x-ms-identifiers": [
+ "name"
+ ]
+ },
+ "fillGapWithZero": {
+ "type": "boolean",
+ "description": "Property to specify whether to fill gap with zero."
+ },
+ "internalMetricName": {
+ "type": "string",
+ "description": "The internal metric name."
+ }
+ },
+ "type": "object"
+ },
+ "DimensionProperties": {
+ "description": "Type of operation: get, read, delete, etc.",
+ "properties": {
+ "name": {
+ "type": "string",
+ "description": "Name of dimension."
+ },
+ "displayName": {
+ "type": "string",
+ "description": "Display name of dimension."
+ },
+ "toBeExportedForShoebox": {
+ "type": "boolean",
+ "description": "Property to specify whether the dimension should be exported for Shoebox."
+ }
+ },
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/secrets.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/secrets.json
new file mode 100644
index 000000000000..2df4a24dca65
--- /dev/null
+++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2024-12-01-preview/secrets.json
@@ -0,0 +1,491 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "version": "2024-12-01-preview",
+ "title": "KeyVaultManagementClient",
+ "description": "The Azure management API provides a RESTful set of web services that interact with Azure Key Vault."
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/secrets/{secretName}": {
+ "put": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_CreateOrUpdate",
+ "description": "Create or update a secret in a key vault in the specified subscription. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "name": "secretName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "Name of the secret. The value you provide may be copied globally for the purpose of running the service. The value provided should not include personally identifiable or sensitive information."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecretCreateOrUpdateParameters"
+ },
+ "description": "Parameters to create or update the secret"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Created or updated vault",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "200": {
+ "description": "Created or updated secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Create a secret": {
+ "$ref": "./examples/createSecret.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "patch": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_Update",
+ "description": "Update a secret in the specified subscription. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{3,24}$",
+ "description": "Name of the vault"
+ },
+ {
+ "name": "secretName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[a-zA-Z0-9-]{1,127}$",
+ "description": "Name of the secret"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "name": "parameters",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/SecretPatchParameters"
+ },
+ "description": "Parameters to patch the secret"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "201": {
+ "description": "Patched secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "200": {
+ "description": "Patched secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Update a secret": {
+ "$ref": "./examples/updateSecret.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ },
+ "get": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_Get",
+ "description": "Gets the specified secret. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "name": "secretName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the secret."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Retrieved secret",
+ "schema": {
+ "$ref": "#/definitions/Secret"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get a secret": {
+ "$ref": "./examples/getSecret.json"
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/secrets": {
+ "get": {
+ "tags": [
+ "Secrets"
+ ],
+ "operationId": "Secrets_List",
+ "description": "The List operation gets information about the secrets in a vault. NOTE: This API is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets.",
+ "parameters": [
+ {
+ "name": "resourceGroupName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the Resource Group to which the vault belongs."
+ },
+ {
+ "name": "vaultName",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "The name of the vault."
+ },
+ {
+ "name": "$top",
+ "in": "query",
+ "type": "integer",
+ "format": "int32",
+ "description": "Maximum number of results to return."
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "Get information about secrets in the specified vault.",
+ "schema": {
+ "$ref": "#/definitions/SecretListResult"
+ }
+ },
+ "default": {
+ "description": "Error response describing why the operation failed.",
+ "schema": {
+ "$ref": "common.json#/definitions/CloudError"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List secrets in the vault": {
+ "$ref": "./examples/listSecrets.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ },
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ]
+ }
+ }
+ },
+ "definitions": {
+ "Attributes": {
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Determines whether the object is enabled."
+ },
+ "nbf": {
+ "x-ms-client-name": "NotBefore",
+ "type": "integer",
+ "format": "unixtime",
+ "description": "Not before date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "exp": {
+ "x-ms-client-name": "Expires",
+ "type": "integer",
+ "format": "unixtime",
+ "description": "Expiry date in seconds since 1970-01-01T00:00:00Z."
+ },
+ "created": {
+ "type": "integer",
+ "format": "unixtime",
+ "readOnly": true,
+ "description": "Creation time in seconds since 1970-01-01T00:00:00Z."
+ },
+ "updated": {
+ "type": "integer",
+ "format": "unixtime",
+ "readOnly": true,
+ "description": "Last updated time in seconds since 1970-01-01T00:00:00Z."
+ }
+ },
+ "description": "The object attributes managed by the KeyVault service.",
+ "type": "object"
+ },
+ "SecretProperties": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "The value of the secret. NOTE: 'value' will never be returned from the service, as APIs using this model are is intended for internal use in ARM deployments. Users should use the data-plane REST service for interaction with vault secrets."
+ },
+ "contentType": {
+ "type": "string",
+ "description": "The content type of the secret."
+ },
+ "attributes": {
+ "$ref": "#/definitions/SecretAttributes",
+ "description": "The attributes of the secret."
+ },
+ "secretUri": {
+ "type": "string",
+ "description": "The URI to retrieve the current version of the secret.",
+ "readOnly": true
+ },
+ "secretUriWithVersion": {
+ "type": "string",
+ "description": "The URI to retrieve the specific version of the secret.",
+ "readOnly": true
+ }
+ },
+ "description": "Properties of the secret",
+ "type": "object"
+ },
+ "SecretPatchProperties": {
+ "properties": {
+ "value": {
+ "type": "string",
+ "description": "The value of the secret."
+ },
+ "contentType": {
+ "type": "string",
+ "description": "The content type of the secret."
+ },
+ "attributes": {
+ "$ref": "#/definitions/SecretAttributes",
+ "description": "The attributes of the secret."
+ }
+ },
+ "description": "Properties of the secret",
+ "type": "object"
+ },
+ "SecretAttributes": {
+ "allOf": [
+ {
+ "$ref": "#/definitions/Attributes"
+ }
+ ],
+ "description": "The secret management attributes.",
+ "type": "object"
+ },
+ "SecretCreateOrUpdateParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the secret. "
+ },
+ "properties": {
+ "$ref": "#/definitions/SecretProperties",
+ "description": "Properties of the secret"
+ }
+ },
+ "description": "Parameters for creating or updating a secret",
+ "required": [
+ "properties"
+ ],
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "SecretPatchParameters": {
+ "properties": {
+ "tags": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The tags that will be assigned to the secret. "
+ },
+ "properties": {
+ "$ref": "#/definitions/SecretPatchProperties",
+ "description": "Properties of the secret"
+ }
+ },
+ "description": "Parameters for patching a secret",
+ "x-ms-azure-resource": true,
+ "type": "object"
+ },
+ "Secret": {
+ "properties": {
+ "properties": {
+ "$ref": "#/definitions/SecretProperties",
+ "description": "Properties of the secret"
+ }
+ },
+ "required": [
+ "properties"
+ ],
+ "allOf": [
+ {
+ "$ref": "./keyvault.json#/definitions/Resource"
+ }
+ ],
+ "description": "Resource information with extended details.",
+ "type": "object"
+ },
+ "SecretListResult": {
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Secret"
+ },
+ "description": "The list of secrets."
+ },
+ "nextLink": {
+ "type": "string",
+ "description": "The URL to get the next set of secrets."
+ }
+ },
+ "description": "List of secrets",
+ "type": "object"
+ }
+ },
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "flow": "implicit",
+ "description": "Azure Active Directory OAuth2 Flow",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ }
+ }
+ }
+}
diff --git a/specification/keyvault/resource-manager/readme.go.md b/specification/keyvault/resource-manager/readme.go.md
index 8ae86cb11f26..56bf876e1724 100644
--- a/specification/keyvault/resource-manager/readme.go.md
+++ b/specification/keyvault/resource-manager/readme.go.md
@@ -15,6 +15,8 @@ module-name: sdk/resourcemanager/keyvault/armkeyvault
module: github.com/Azure/azure-sdk-for-go/$(module-name)
output-folder: $(go-sdk-folder)/$(module-name)
azure-arm: true
+modelerfour:
+ lenient-model-deduplication: true
```
### Go multi-api
diff --git a/specification/keyvault/resource-manager/readme.md b/specification/keyvault/resource-manager/readme.md
index 492452774df3..74a0fe38dde3 100644
--- a/specification/keyvault/resource-manager/readme.md
+++ b/specification/keyvault/resource-manager/readme.md
@@ -44,6 +44,21 @@ input-file:
- Microsoft.KeyVault/stable/2024-11-01/secrets.json
```
+### Tag: package-preview-2024-12
+
+These settings apply only when `--tag=package-preview-2024-12` is specified on the command line.
+
+```yaml $(tag) == 'package-preview-2024-12'
+input-file:
+ - Microsoft.KeyVault/preview/2024-12-01-preview/common.json
+ - Microsoft.KeyVault/preview/2024-12-01-preview/keys.json
+ - Microsoft.KeyVault/preview/2024-12-01-preview/keysManagedHsm.json
+ - Microsoft.KeyVault/preview/2024-12-01-preview/keyvault.json
+ - Microsoft.KeyVault/preview/2024-12-01-preview/managedHsm.json
+ - Microsoft.KeyVault/preview/2024-12-01-preview/providers.json
+ - Microsoft.KeyVault/preview/2024-12-01-preview/secrets.json
+```
+
### Tag: package-preview-2024-04
These settings apply only when `--tag=package-preview-2024-04` is specified on the command line.
From a26af9acb30387724eff64229ba7f3259600681a Mon Sep 17 00:00:00 2001
From: ChenxiJiang333 <119990644+ChenxiJiang333@users.noreply.github.com>
Date: Tue, 14 Jan 2025 10:10:42 +0800
Subject: [PATCH 093/128] [Container Service] Update readme.python.md (#32112)
* Update readme.python.md
* fix cspell
---------
Co-authored-by: Yuchao Yan
---
cSpell.json | 2 +-
.../aks/readme.python.md | 892 ------------------
2 files changed, 1 insertion(+), 893 deletions(-)
diff --git a/cSpell.json b/cSpell.json
index 28b0332d4e25..e88561a8c54d 100644
--- a/cSpell.json
+++ b/cSpell.json
@@ -1799,7 +1799,7 @@
]
},
{
- "filename": "**/specification/compute/resource-manager/readme.python.md",
+ "filename": "**/specification/**/readme.python.md",
"words": [
"multiapiscript",
"modelerfour"
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 fc0f3948e543..9fcc6458dcbc 100644
--- a/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.python.md
+++ b/specification/containerservice/resource-manager/Microsoft.ContainerService/aks/readme.python.md
@@ -20,89 +20,8 @@ default-api-version: "2024-09-01"
multiapi: true
batch:
- tag: package-2024-09
- - tag: package-preview-2024-09
- - tag: package-2024-08
- - tag: package-2024-07
- - tag: package-preview-2024-07
- - tag: package-preview-2024-06
- - tag: package-2024-05
- - tag: package-preview-2024-05
- - tag: package-preview-2024-04
- - tag: package-preview-2024-03
- - tag: package-2024-02
- - tag: package-preview-2024-02
- - tag: package-2024-01
- - tag: package-preview-2024-01
- - tag: package-2023-11
- - tag: package-preview-2023-11
- - tag: package-2023-10
- - tag: package-preview-2023-10
- - tag: package-2023-09
- - tag: package-preview-2023-09
- - tag: package-2023-08
- - tag: package-preview-2023-08
- - tag: package-2023-07
- - tag: package-preview-2023-07
- - tag: package-2023-06
- - tag: package-preview-2023-06
- - tag: package-2023-05
- - tag: package-preview-2023-05
- - tag: package-2023-04
- - tag: package-preview-2023-04
- - tag: package-2023-03
- - tag: package-preview-2023-03
- - tag: package-2023-02
- - tag: package-preview-2023-02
- - tag: package-2023-01
- - tag: package-preview-2023-01-only
- - tag: package-2022-11
- - tag: package-preview-2022-11-only
- - tag: package-preview-2022-10-only
- - tag: package-2022-09
- - tag: package-preview-2022-09
- - tag: package-preview-2022-08-03-only
- - tag: package-preview-2022-08-only
- - tag: package-2022-07
- - tag: package-preview-2022-07
- - tag: package-2022-06
- - tag: package-preview-2022-06
- - tag: package-preview-2022-05
- - tag: package-2022-04
- - tag: package-preview-2022-04
- - tag: package-2022-03
- - tag: package-preview-2022-03
- - tag: package-2022-02
- - tag: package-preview-2022-02
- - tag: package-2022-01
- - tag: package-preview-2022-01
- - tag: package-preview-2021-11
- - tag: package-2021-10
- - tag: package-2021-09
- - tag: package-2021-08
- - tag: package-2021-07
- - tag: package-2021-05
- - tag: package-2021-03
- - tag: package-2021-02
- - tag: package-2020-12
- tag: package-2020-11
- - tag: package-2020-09-01-only
- - tag: package-2020-07-01-only
- - tag: package-2020-06-01-only
- - tag: package-2020-04-01-only
- tag: package-2020-03-01-only
- - tag: package-2020-02-01-only
- - tag: package-2020-01-01-only
- - tag: package-2019-11-01-only
- - tag: package-2019-10-27-preview-only
- - tag: package-2019-10-01-only
- - tag: package-2019-08-01-only
- - tag: package-2019-06-01-only
- - tag: package-2019-04-30-only
- - tag: package-2019-04-01-only
- - tag: package-2019-02-only
- - tag: package-2018-09-preview-only
- - tag: package-2018-08-preview-only
- - tag: package-2018-03-only
- tag: package-2019-09-preview-only
- tag: package-2017-07
- multiapiscript: true
@@ -111,7 +30,6 @@ batch:
``` yaml $(multiapiscript)
output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/
perform-load: false
-clear-output-folder: false
```
### Tag: package-2024-09 and python
@@ -124,646 +42,6 @@ namespace: azure.mgmt.containerservice.v2024_09_01
output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_09_01
```
-### Tag: package-preview-2024-09 and python
-
-These settings apply only when `--tag=package-preview-2024-09 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-09' && $(python)
-namespace: azure.mgmt.containerservice.v2024_09_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_09_02_preview
-```
-
-### Tag: package-2024-08 and python
-
-These settings apply only when `--tag=package-2024-08 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2024-08' && $(python)
-namespace: azure.mgmt.containerservice.v2024_08_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_08_01
-```
-
-### Tag: package-2024-07 and python
-
-These settings apply only when `--tag=package-2024-07 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2024-07' && $(python)
-namespace: azure.mgmt.containerservice.v2024_07_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_07_01
-```
-
-### Tag: package-preview-2024-07 and python
-
-These settings apply only when `--tag=package-preview-2024-07 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-07' && $(python)
-namespace: azure.mgmt.containerservice.v2024_07_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_07_02_preview
-```
-
-### Tag: package-preview-2024-06 and python
-
-These settings apply only when `--tag=package-preview-2024-06 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-06' && $(python)
-namespace: azure.mgmt.containerservice.v2024_06_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_06_02_preview
-```
-
-### Tag: package-2024-05 and python
-
-These settings apply only when `--tag=package-2024-05 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2024-05' && $(python)
-namespace: azure.mgmt.containerservice.v2024_05_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_05_01
-```
-
-### Tag: package-preview-2024-05 and python
-
-These settings apply only when `--tag=package-preview-2024-05 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-05' && $(python)
-namespace: azure.mgmt.containerservice.v2024_05_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_05_02_preview
-```
-
-### Tag: package-preview-2024-04 and python
-
-These settings apply only when `--tag=package-preview-2024-04 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-04' && $(python)
-namespace: azure.mgmt.containerservice.v2024_04_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_04_02_preview
-```
-
-### Tag: package-preview-2024-03 and python
-
-These settings apply only when `--tag=package-preview-2024-03 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-03' && $(python)
-namespace: azure.mgmt.containerservice.v2024_03_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_03_02_preview
-```
-
-### Tag: package-2024-02 and python
-
-These settings apply only when `--tag=package-2024-02 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2024-02' && $(python)
-namespace: azure.mgmt.containerservice.v2024_02_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_02_01
-```
-
-### Tag: package-preview-2024-02 and python
-
-These settings apply only when `--tag=package-preview-2024-02 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-02' && $(python)
-namespace: azure.mgmt.containerservice.v2024_02_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_02_02_preview
-```
-
-### Tag: package-2024-01 and python
-
-These settings apply only when `--tag=package-2024-01 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2024-01' && $(python)
-namespace: azure.mgmt.containerservice.v2024_01_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_01_01
-```
-
-### Tag: package-preview-2024-01 and python
-
-These settings apply only when `--tag=package-preview-2024-01 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2024-01' && $(python)
-namespace: azure.mgmt.containerservice.v2024_01_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2024_01_02_preview
-```
-
-### Tag: package-2023-11 and python
-
-These settings apply only when `--tag=package-2023-11 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-11' && $(python)
-namespace: azure.mgmt.containerservice.v2023_11_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_11_01
-```
-
-### Tag: package-preview-2023-11 and python
-
-These settings apply only when `--tag=package-preview-2023-11 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-11' && $(python)
-namespace: azure.mgmt.containerservice.v2023_11_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_11_02_preview
-```
-
-### Tag: package-2023-10 and python
-
-These settings apply only when `--tag=package-2023-10 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-10' && $(python)
-namespace: azure.mgmt.containerservice.v2023_10_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_10_01
-```
-
-### Tag: package-preview-2023-10 and python
-
-These settings apply only when `--tag=package-preview-2023-10 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-10' && $(python)
-namespace: azure.mgmt.containerservice.v2023_10_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_10_02_preview
-```
-
-### Tag: package-2023-09 and python
-
-These settings apply only when `--tag=package-2023-09 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-09' && $(python)
-namespace: azure.mgmt.containerservice.v2023_09_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_09_01
-```
-
-### Tag: package-preview-2023-09 and python
-
-These settings apply only when `--tag=package-preview-2023-09 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-09' && $(python)
-namespace: azure.mgmt.containerservice.v2023_09_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_09_02_preview
-```
-
-### Tag: package-2023-08 and python
-
-These settings apply only when `--tag=package-2023-08 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-08' && $(python)
-namespace: azure.mgmt.containerservice.v2023_08_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_08_01
-```
-
-### Tag: package-preview-2023-08 and python
-
-These settings apply only when `--tag=package-preview-2023-08 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-08' && $(python)
-namespace: azure.mgmt.containerservice.v2023_08_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_08_02_preview
-```
-
-### 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-preview-2023-07 and python
-
-These settings apply only when `--tag=package-preview-2023-07 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-07' && $(python)
-namespace: azure.mgmt.containerservice.v2023_07_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_07_02_preview
-```
-
-### 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
-
-These settings apply only when `--tag=package-2023-05 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-05' && $(python)
-namespace: azure.mgmt.containerservice.v2023_05_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_05_01
-```
-
-### Tag: package-preview-2023-05 and python
-
-These settings apply only when `--tag=package-preview-2023-05 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-05' && $(python)
-namespace: azure.mgmt.containerservice.v2023_05_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_05_02_preview
-```
-
-### Tag: package-2023-04 and python
-
-These settings apply only when `--tag=package-2023-04 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-04' && $(python)
-namespace: azure.mgmt.containerservice.v2023_04_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_04_01
-```
-
-### Tag: package-preview-2023-04 and python
-
-These settings apply only when `--tag=package-preview-2023-04 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-04' && $(python)
-namespace: azure.mgmt.containerservice.v2023_04_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_04_02_preview
-```
-
-### Tag: package-2023-03 and python
-
-These settings apply only when `--tag=package-2023-03 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-03' && $(python)
-namespace: azure.mgmt.containerservice.v2023_03_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_03_01
-```
-
-### Tag: package-preview-2023-03 and python
-
-These settings apply only when `--tag=package-preview-2023-03 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-03' && $(python)
-namespace: azure.mgmt.containerservice.v2023_03_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_03_02_preview
-```
-
-### Tag: package-2023-02 and python
-
-These settings apply only when `--tag=package-2023-02 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-02' && $(python)
-namespace: azure.mgmt.containerservice.v2023_02_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_02_01
-```
-
-### Tag: package-preview-2023-02 and python
-
-These settings apply only when `--tag=package-preview-2023-02 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-02' && $(python)
-namespace: azure.mgmt.containerservice.v2023_02_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_02_02_preview
-```
-
-### Tag: package-preview-2023-01-only and python
-
-These settings apply only when `--tag=package-preview-2023-01-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2023-01-only' && $(python)
-namespace: azure.mgmt.containerservice.v2023_01_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_01_02_preview
-```
-
-### Tag: package-2023-01 and python
-
-These settings apply only when `--tag=package-2023-01 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2023-01' && $(python)
-namespace: azure.mgmt.containerservice.v2023_01_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2023_01_01
-```
-
-### Tag: package-2022-11 and python
-
-These settings apply only when `--tag=package-2022-11 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-11' && $(python)
-namespace: azure.mgmt.containerservice.v2022_11_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_11_01
-```
-
-### Tag: package-preview-2022-11-only and python
-
-These settings apply only when `--tag=package-preview-2022-11-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2022-11-only' && $(python)
-namespace: azure.mgmt.containerservice.v2022_11_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_11_02_preview
-```
-
-### Tag: package-preview-2022-10-only and python
-
-These settings apply only when `--tag=package-preview-2022-10-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2022-10-only' && $(python)
-namespace: azure.mgmt.containerservice.v2022_10_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_10_02_preview
-```
-
-### Tag: package-2022-09 and python
-
-These settings apply only when `--tag=package-2022-09 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-09' && $(python)
-namespace: azure.mgmt.containerservice.v2022_09_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_09_01
-```
-
-### Tag: package-preview-2022-09 and python
-
-These settings apply only when `--tag=package-preview-2022-09 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2022-09' && $(python)
-namespace: azure.mgmt.containerservice.v2022_09_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_09_02_preview
-```
-
-### Tag: package-preview-2022-08-03-only and python
-
-These settings apply only when `--tag=package-preview-2022-08-03-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2022-08-03-only' && $(python)
-namespace: azure.mgmt.containerservice.v2022_08_03_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_08_03_preview
-```
-
-### Tag: package-preview-2022-08-only and python
-
-These settings apply only when `--tag=package-preview-2022-08-only --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2022-08-only' && $(python)
-namespace: azure.mgmt.containerservice.v2022_08_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_08_02_preview
-```
-
-### Tag: package-2022-07 and python
-
-These settings apply only when `--tag=package-2022-07 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-07' && $(python)
-namespace: azure.mgmt.containerservice.v2022_07_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_07_01
-```
-
-### Tag: package-preview-2022-07 and python
-
-These settings apply only when `--tag=package-preview-2022-07 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-preview-2022-07' && $(python)
-namespace: azure.mgmt.containerservice.v2022_07_02_preview
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_07_02_preview
-```
-
-### Tag: package-2022-06 and python
-
-These settings apply only when `--tag=package-2022-06 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=`.
-
-``` yaml $(tag) == 'package-2022-06' && $(python)
-namespace: azure.mgmt.containerservice.v2022_06_01
-output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2022_06_01
-```
-
-### Tag: package-preview-2022-06 and python
-
-These settings apply only when `--tag=package-preview-2022-06 --python` is specified on the command line.
-Please also specify `--python-sdks-folder=